本次升级是将openssh_7.4p1升级至8.8p1 ,为解决openssh漏洞.
查看版本
[root@iZ2v ~]# ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017
1.升级前准备
1.1下载安装包
下载地址
建议使用迅雷下载
1.2关闭selinux
#临时关闭
setenforce 0
#永久关闭,重启服务器生效
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
reboot
1.3安装依赖
[root@iZ2v ~]# yum -y install perl gcc zlib zlib-devel pam-devel openssl-devel
tips:如果没有外网环境安装失败,可以使用挂载YUM源再次安装
2.升级
2.1上传安装包
使用sftp工具,将升级包上传至服务器
2.2解压编译安装
cd /home
tar -zxvf openssh-8.8p1.tar.gz
#进入解压后文件夹
cd openssh-8.8p1/
#,编译
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-tcp-wrappers --with-ssl-dir=/usr/local/openssl --with-zlib=/usr/local/lib64 --without-hardening
#安装
make && make install
可能遇到权限问题
Permissions 0640 for ‘/etc/ssh/ssh_host_rsa_key’ are too open.
处理办法
chmod 0600 /etc/ssh/ssh_host_rsa_key
chmod 0600 /etc/ssh/ssh_host_ecdsa_key
chmod 0600 /etc/ssh/ssh_host_ed25519_key
2.3配置工作
##复制文件到系统服务目录
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
echo "UseDNS no" >> /etc/ssh/sshd_config
#添加执行权限
chmod +x /etc/init.d/sshd
#添加服务,配置开机启动
chkconfig --add sshd
systemctl enable sshd
chkconfig sshd on
mv /usr/lib/systemd/system/sshd.service /home/
3.测试
#重启sshd服务
/etc/init.d/sshd restart
#查看22端口
yum install -y net-tools
netstat -ntlp | grep 22
#查看版本,升级成功
[root@iZ2v ~]# ssh -V
OpenSSH_8.8p1, OpenSSL 1.0.2k-fips 26 Jan 2017
4.关闭telnet
建议关闭telnet
systemctl disable xinetd.service
systemctl stop xinetd.service
systemctl disable telnet.socket
systemctl stop telnet.socket