良许Linux教程网 干货合集 CentOS 7中升级openssh版本为8.6

CentOS 7中升级openssh版本为8.6

本篇文章重点为大家讲解一下CentOS 7中升级openssh版本为8.6具体方法,有需要的小伙伴可以参考一下。

image-20220301124436441

1. 安装并启动telnet server ,防止SSH不可以用,还可以用telnet 连接服务器

yum install xinetd telnet-server -y
# 设置telnet 登陆的终端类型
cat >> /etc/securetty # 启动telnet 服务
systemctl enable xinetd
systemctl enable telnet.socket
systemctl start telnet.socket
systemctl start xinetd1.2.3.4.5.6.7.8.9.10.11.12.13.

2. 下载openssh 及openssl安装包

mkdir -p /opt/openssh && cd /opt/openssh
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.6p1.tar.gz
# 下载openssl
wget https://www.openssl.org/source/openssl-1.1.1k.tar.gz1.2.3.4.

3. 安装需要的依赖服务

yum install -y gcc zlib-devel openssl-devel pam-devel systemd-devel perl1.

4. 升级openssl

openssh 8.6 要求openssl 版本,先升级openssl

tar xzvf openssl-1.1.1k.tar.gz && cd openssl-1.1.1k && cd openssl-1.1.1k
# 备份原来的openssl
mv /usr/bin/openssl /usr/bin/openssl_bak
mv /usr/include/openssl /usr/include/openssl_bak
# 编译安装openssl
./config --prefix=/usr/local/openssl  --shared
make && make install
ln -s /usr/local/openssl/bin/openssl  /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl  /usr/include/openssl
# 添加动态库
echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
# 重新加载动态库
ldconfig1.2.3.4.5.6.7.8.9.10.11.12.13.

5. 备份 ssh配置

mkdir /etc/sshold
mv /etc/ssh/* /etc/sshold1.2.

6. 安装openssh

tar xzvf openssh-8.6p1.tar.gz  && cd openssh-8.6p11.

openssh支持systemd启动,需要修改sshd.c这个主函数文件,找到调用server_accept_loop这个函数的行,注意这个函数的定义也在这个文件,不要找错了,不然安装后sshd会一直重启(大概在2058行)

# 添加的内容
/* Signal systemd that we are ready to accept connections */
sd_notify(0, "READY=1");
# 下面为已有内容
/* Accept a connection and return in a forked child */
server_accept_loop(&sock_in, &sock_out,&newsock, config_s);1.2.3.4.5.6.

文件开关添加引用 (44行)

#include 1.

编译 openssh

./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam  --with-md5-passwords --mandir=/usr/share/man --with-ssl-dir=/usr/local/openssl1.

修改Makefile以支持systemd ,编译时还需要在makefile中指明,编辑文件:Makefile ,找到变量 LIBS,修改如下(50行)

LIBS=-lcrypto -ldl -lutil -lz -lcrypt -lresolv -lsystemd1.

安装 openssh

make
make install1.2.

7. 修改新生成的sshd_config配置文件

cat >> /etc/ssh/sshd_config

8. 重启sshd服务

systemctl restart sshd1.

9. 验证ssh服务正常后,记得停止telnet server 服务,并删除telnet

以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !

img
本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

邮箱地址不会被公开。 必填项已用*标注

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部