Ubuntu 16.04升级OpenSSH

升级ubuntu 16.04上的openssh到8.8p1版本的指南,确保在更新过程中避免ssh连接问题,请遵循以下步骤。

安装Telnet以防SSH故障:

为了防止在升级过程中SSH出现问题,首先在服务器上安装Telnet服务端和客户端。

apt-get install openbsd-inetd telnetd telnet/etc/init.d/openbsd-inetd restart     # 启动服务netstat -anpt|grep 23                 # 检查Telnet服务的默认端口是否启动telnet ip                             # 测试是否可以成功登录

确保服务器对访问主机IP开放防火墙:

ufw allow from 192.168.xx.xx to any port 23

在主机上安装Telnet客户端,并进行远程测试:

telnet 服务器ip

如果遇到“Login incorrect”错误,请修改login文件:

vi /etc/pam.d/login

注释掉pam_securetty.so一行。

Ubuntu 16.04升级OpenSSH

具体参考:https://www.php.cn/link/2c6da25c244f420a938f030b17e22d3e

下载安装包:

下载所需的OpenSSL、OpenSSH和Zlib安装包。

wget --no-check-certificate https://www.openssl.org/source/openssl-1.1.1l.tar.gzwget --no-check-certificate https://fastly.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.8p1.tar.gzwget http://www.zlib.net/zlib-1.2.11.tar.gz

下载完成后,依次解压这些包:

tar -zxvf xxx.gz

安装Zlib:

解压Zlib并进行安装:

tar xvf zlib-1.2.11.tar.gzcd zlib-1.2.11./configure --prefix=/usr/local/zlibmake -j 8make install

如果在运行./configure --prefix=/usr/local/zlib时遇到错误,请检查并安装gcc:

cc -vsudo apt-get install gcc

安装OpenSSL:

解压并安装OpenSSL:

tar zxvf openssl-1.1.1l.tar.gzcd openssl-1.1.1l./config shared zlibmake -j 8sudo make install

如果在编译过程中遇到zlib.h: No such file or directory错误,请返回Zlib源码目录执行以下操作:

make clean./configure --sharedmake testsudo make installsudo cp zutil.h /usr/local/includesudo cp zutil.c /usr/local/include

然后回到OpenSSL源码目录重新编译。

备份原来的OpenSSL,并创建软链接到系统位置:

mv /usr/bin/openssl /usr/bin/openssl.bakmv /usr/include/openssl /usr/include/openssl.bakln -s /usr/local/bin/openssl /usr/bin/opensslln -s /usr/local/include/openssl /usr/include/openssl

添加OpenSSL的lib库到系统:

echo "/usr/local/lib" > /etc/ld.so.conf.d/openssl.confldconfig

查看新的OpenSSL版本:

openssl version -a

完成后显示应为:OpenSSL 1.1.1l 24 Aug 2021

更新OpenSSH:

备份原OpenSSH文件,并卸载旧版本:

mv /etc/init.d/ssh /etc/init.d/ssh.oldmv /etc/ssh /etc/ssh.oldapt-get remove openssh-server openssh-client -y

Ubuntu 16.04升级OpenSSH

安装libpam0g-dev,并解压、配置、编译新版本的OpenSSH:

apt-get install libpam0g-dev -ytar zxvf openssh-8.8p1.tar.gzcd openssh-8.8p1./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-zlib --with-ssl-dir=/usr/local --with-privsep-path=/var/lib/sshdmake -j 8sudo make install

检查新版本的SSH:

ssh -V

应显示:OpenSSH_8.8p1, OpenSSL 1.1.1l 24 Aug 2021

完成更新后,恢复原备份文件:

cd /etc/sshmv sshd_config sshd_config.defaultcp ../ssh.old/sshd_config ./mv /etc/init.d/ssh.old /etc/init.d/sshsystemctl unmask sshsystemctl restart ssh

检查SSH服务状态:

service sshd status

Ubuntu 16.04升级OpenSSH

如果发现scp无法远程连接,报错FATAL ERROR: Received unexpected end-of-file from SFTP server,请修改sshd_config文件:

vi /etc/ssh/sshd_config

将Subsystem配置为:

Subsystem       sftp    /usr/local/openssh/libexec/sftp-server

重启SSH服务:

service sshd restart

如果没有/usr/local/openssh目录,请将/usr/libexec/sftp-server配置进上述文件。

确认SSH连接正常后,可以关闭Telnet服务:

(1)关闭telnet服务(有两种方式)a)vi /etc/xinetd.d/telnet,将disable=no改成disable=yes;b)chkconfig telnet off;如果需要设置telnet服务不为开机自启动,使用命令chkconfig --del telnet(2)使用命令server xinetd restart或者/etc/init.d/xinetd restart使更改生效。

参考:Ubuntu 16.04 升级Openssh 8.8P1 Ubuntu 16 更新openssh 8.8

以上就是Ubuntu 16.04升级OpenSSH的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/17431.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月2日 12:16:16
下一篇 2025年12月2日 13:19:14

相关推荐

发表回复

登录后才能评论
关注微信