CentOS7.x操作系统自带的OpenSSH版本默认为7.4p1,使用yum update最高也只能升级到7.4p1的补丁版本,漏扫会发现很多OpenSSH相关的漏洞,根据等保安全测评的要求,需要将OpenSSH升级到更新的版本,本篇文档记录了我本次升级的过程以及遇到的问题,供大家参考。
安装包下载地址
Openssl 下载地址:https://ftp.openssl.org/source/
Openssh 下载地址:https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/
安装基础环境包
注:受perl版本限制,最新版的openssl1.1.1需要perl5.10+版本,
|
|
同步服务器时间
|
|
升级openssl
|
|
下载编译安装openssl
|
|
备份openssl
|
|
创建软连接
|
|
升级openssh
安装、配置telnet服务
|
|
|
|
允许root远程telnet登录主机
|
|
配置开机自启动
|
|
放行防火墙
|
|
以下操作使用telnet远程登录主机进行操作
备份openssh配置
|
|
卸载旧版本openssh
|
|
编译安装openssh
|
|
修改配置文件
|
|
配置开机自启动
升级后不能使用systemctl 方式启动,感觉有点怪……
|
|
测试通过后,关闭telnet(telnet是明文传输,不安全)
|
|
您可能遇到的问题?
问题1:make: * [configdata.pm] Error 1
解决方案:服务器时间不对,手动调整服务器时间即可
|
|
问题2:Failed to listen on Telnet Server Activation Socket.
解决方案:由于已经启动了一个xinetd进程,杀掉,重新启动telnet即可
问题3:configure: error: PAM headers not found
解决方案: yum -y install pam-devel
问题4:error: Could not get shadow information for root
解决方案:由于开启了selinux导致,关闭即可
|
|
问题5:sshd.service start operation timed out. Terminating
解决方案:sshd不兼容systemd造成的,sshd启动方式修改为sysv即可。
|
|
问题6:服务器发送了一个意外的数据包。received:3,expected:20
在/etc/ssh/sshd_config最后添加以下内容,重启sshd服务
|
|
问题7:no matching key exchange algorithm found
openssh升级完成后,xshell 4 无法连接服务器,升级xhell版本或者更好其他连接工具。