OpenSSH升级需要对ssh卸载和安装,因此请采用 VNC连接 来进行升级操作, 进行OpenSSH原配置文件备份、旧版本OpenSSH删除、新版本OpenSSH安装。
升级所需安装包:
openssh-8.2p1.tar.gz
zlib-1.2.8.tar.gz
openssl-1.0.1h.tar.gz
http://www.zlib.net/zlib-1.2.11.tar.gz
https://www.openssl.org/source/openssl-1.1.1g.tar.gz
https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.2p1.tar.gz
将zlib 、OpenSSH 、OpenSSL安装包下载或从本地上传至服务器(链接参见1.3)
防止升级失败导致文件丢失,请将重要文件和ssh配置文件备份
ssh配置文件备份:
sudo cp -retc/ssh /etc/ssh_bak
sudo cp /etc/init.d/sshd /etc/init.d/sshd_bak (注:如果提示“cp: cannot stat ‘/etc/init.d/sshd’: No such file or directory”,则忽略此步,进行下一步即可)
sudo cp /usr/sbin/sshd /usr/sbin/sshd_bak
rpm -qa |grep openssh
rpm -e openssh openssh-clients openssh-server
(1).解压
sudo tar -zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11
(2).配置
./configure
(3).编译安装
make
make install
(1).解压
cd ..
tar -zxvf openssl-1.1.1g.tar.gz
cd openssl-1.1.1g
(2).配置
./config
(3).编译安装
make
make install
(4).设置软连接
ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1 ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
(1).解压
cd ..
tar -zxvf openssh-8.2p1.tar.gz
cd openssh-8.2p1
(2).配置
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-tcp-wrappers --with-ssl-dir=/usr/local/ssl --without-hardening
注意: configure这步如果报错了“configure: error: PAM headers not found”,则执行下面这个命令安装pam-devel后再重试上面的configure yum -y install pam-devel
(3).编译安装
make
make install
(4).修改配置文件
(4.1)备份sshd文件
mv /etc/init.d/sshd /etc/init.d/sshd_old 注意: 如果执行这步提示“mv:无法获取"/etc/init.d/sshd"的文件状态(stat):没有那个文件或目录”,则忽略此步继续执行(4.2)即可
(4.2)复制配置文件并设置允许root用户远程登录
cp contrib/redhat/sshd.init /etc/init.d/sshd
vim /etc/ssh/sshd_config 修改 PermitRootLogin yes PasswordAuthentication yes 并去掉注释
(4.3)赋权
chmod u+x /etc/init.d/sshd
(4.4)添加到开机启动项
chkconfig --add sshd
chkconfig sshd on
(4.5)重启服务
systemctl restart sshd
(1).确认版本
ssh -V 确认升级后的版本信息
(2). 测试远程登录 测试远程登录是否正常
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。