CentOS7中升级openssh版本为8.6

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

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

本文标题:CentOS7中升级openssh版本为8.6
当前路径:http://www.shufengxianlan.com/qtweb/news30/336380.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联