openssh其他版本有漏洞,需要升级,本文以我升级的机器centos6为例
一、准备工作
1.1 检查openssh版本
查看系统版本
cat /etc/redhat-release
我的系统
CentOS release 6.7 (Final)
查看openssh
ssh -V
输出内容
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
1.2 备份ssh目录
cp -rf /etc/ssh /etc/ssh.bak
1.3 安装telnet
记得提前部署telnet远程登录环境(root用户登录),避免ssh升级出现问题,导致无法远程管理
我有其他登录方式,就没有安装telnet,如果没有其他登录方式请参考配置telnet
二、升级OpenSSH
2.1 安装必要的软件
yum install -y gcc openssl-devel pam-devel rpm-build pam-devel
如果无法安装,请配置软件源,参考
https://blog.csdn.net/woay2008/article/details/124030778
2.2 下载最新版openssh
openssh下载地址
http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/
这里使用9.0版本
下载到某个目录
wget http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.0p1.tar.gz
解压
tar -zxvf openssh-9.0p1.tar.gz
编译
cd openssh-9.0p1
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib --with-md5-passwords --with-tcp-wrappers
检查结果
echo $?
返回0表示成功执行成功,返回1或其他数字表示执行失败
安装
make && make install
安装结束
2.3 修改配置文件 允许root登录
sed -i '/^#PermitRootLogin/s/#PermitRootLogin yes/PermitRootLogin yes/' /etc/ssh/sshd_configcat /etc/ssh/sshd_config|grep RootLogin
返回PermitRootLogin yes表示成功
重启OpenSSH,查看版本
service sshd restart
service sshd status
ssh -V
参考文献
https://article.itxueyuan.com/8K4J9R
https://article.itxueyuan.com/8K4J9R