Redhat6.8升级openssh8.5
一下载tar包
网站:安装包下载地址
根据实际需要下载所需要的tar包即可。
二开启telnet服务
为保证升级期间,导致无法通过22端口登录服务器,所以先开放23端口。如果升级失败,导致ssh服务异常。可以通过23端口登录主机。
2.1检查是否安装过,如果没有,则先安装
安装telnet服务和xinetd服务。
yum -y install telnet telnet-server xinetd
2.2 xinetd配置文件修改
ll /etc/xinetd.d/telnet
–如果不存在,则跳过修改
–如果存在,则操作以下修改
vi /etc/xinetd.d/telnet 把disable = yes 改成disable = no
接下来执行
echo ‘pts/0’ >>/etc/securetty
echo ‘pts/1’ >>/etc/securetty
启动telnet服务
service xinetd restart
查看23端口是否被监听
netstat -ntlp|grep 23
三 安装依赖包
如果这些依赖包没有安装的话,升级过程中可能会报错。
1、gcc gcc-c++ glibc make autoconf openssl openssl-devel pcre-devel pam-devel
2、pam* zlib*
四 安装openssh
4.1解压安装
解压
tar xfz openssh-8.0p1.tar.gz
授权
chown -R root.root openssh-8.0p1
备份
cp -r /etc/ssh /etc/ssh_old20200427
编译安装
./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-openssl-includes=/usr/local/ssl/include --with-ssl-dir=/usr/local/ssl --with-zlib --with-md5-passwords --with-pam && make && make install
4.2验证
echo $?
修改配置文件
grep “^PermitRootLogin” /etc/ssh/sshd_config
PermitRootLogin yes
4.3覆盖新文件
openssh目录下,存在则CP,不存在则跳过
cp -a contrib/redhat/sshd.init /etc/init.d/sshd
cp -a contrib/redhat/sshd.pam /etc/pam.d/sshd.pam
chmod +x /etc/init.d/sshd
设置sshd服务开机启动
chkconfig --add sshd
chkconfig sshd on
chkconfig --list|grep sshd
重启服务
service sshd restart
五验证是否安装成功
通过命令验证
ssh -V
验证端口是否存在
netstat -lntp |grep 22
通过CRT工具连接测试。退出是否可以重新登录。
六关闭telent服务
#vi /etc/xinetd.d/telnet
修改 disable = no 为 disable = yes
#service xinetd restart
七 报错问题
在执行 service sshd restart 命令时出现如下报错
/etc/ssh/ssh_config line 50: Unsupported option "gssapiauthenciation"
解决方法:
在/etc/ssh/ssh_config文件中,将GSSAPIAuthentication yes 注释即可。
`
以上是手工部署的步骤。如果在维护大量服务器时,单个部署就费时费力了,这时候就可以用脚本部署,会更加便捷。
升级脚本参考URL:
脚本参考URL
https://blog.csdn.net/zhangt_CSDN/article/details/115541103