CentOS7.6升級SSH升級為8.0
近期對生產服務器進行了滲透及安全測試,檢查出ssh存中危漏洞需要修復,該漏洞需要升級 openssh
到 8
版本
漏洞描述:
國家漏洞庫編號:CNNVD-201808-902
CNCVE編號:CNCVE-201815919
CVE編號:CVE-2018-15919
漏洞描述:OpenSSH(OpenBSD Secure Shell)是OpenBSD計划組所維護的一套用於安全訪問遠程計算機的連接工具。該工具是SSH協議的開源實現,支持對所有的傳輸進行加密,可有效阻止竊聽、連接劫持以及其他網絡級的攻擊。OpenSSH 7.8及之前版本中的auth-gss2.c文件存在安全漏洞。遠程攻擊者可利用該漏洞檢測其指定的用戶是否存在。
Centos 升級openssh 8.0
1、上傳安裝包之安裝目錄
2、查看現有的 ssh
版本
# ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017
3、避免 openssh
失敗無法登陸,安裝 telnet
# yum install -y telnet-server xinetd
# systemctl enable xinetd.service
# systemctl enable telnet.socket
# systemctl start telnet.socket
# systemctl start xinetd
4、修改 /etc/pam.d/login
這個文件,注釋如下一行
# cp /etc/pam.d/login /etc/pam.d/login.bak
# vim /etc/pam.d/login
# auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
5、編輯 /etc/securetty
文件,增加如下幾行
# cp /etc/securetty /etc/securetty.bak
# vim /etc/securetty
pts/0
pts/1
pts/2
pts/3
6、 telnet
使用 root
用戶登錄系統。
# telnet IP
用戶名:root
密碼:root
7、卸載之前的版本
# yum remove openssh*
8、卸載之后,安裝 openssh8.0
版本
# rpm -Uvh openssh-8.0p1-1.el7.x86_64.rpm
# rpm -Uvh openssh-clients-8.0p1-1.el7.x86_64.rpm
# rpm -Uvh openssh-debuginfo-8.0p1-1.el7.x86_64.rpm
# rpm -Uvh openssh-server-8.0p1-1.el7.x86_64.rpm
## 或者
# yum install ./openssh-*
9、啟動SSH服務
# systemctl status sshd
# systemctl start sshd
10、添加到開啟自啟動
# chmod +x /etc/init.d/sshd
# chkconfig --add sshd
# chkconfig sshd on
# chkconfig --list sshd
11、關閉 telnet
# systemctl stop telnet.socket
# systemctl disable telnet.socket
# systemctl stop xinetd.service
# systemctl disable xinetd.service
# yum remove -y telnet-server xinetd
注意:開啟telnet的root遠程登錄極度不安全,賬號密碼都是明文傳輸,尤其在公網,所以一般只限於在某些情況下內網中ssh無法使用時,臨時調測,使用完后,將相關配置復原,徹底關閉telnet服務!
12、回退或刪除 4,5
的操作。
# cp /etc/pam.d/login.bak /etc/pam.d/login
# cp /etc/securetty.bak /etc/securetty
13、查看當前 openssh
的版本
# ssh -V
OpenSSH_8.0p1, OpenSSL 1.0.2k-fips 26 Jan 2017