首頁 > 軟體

CentOS 6下OpenSSH 5.3升級至7步驟記錄

2020-06-16 17:28:43

掃描出來CentOS 6自帶OpenSSH存在大量高危漏洞,遂有了如下的升級步驟,再掃的時候沒有漏洞了。
在CentOS 6 64位元主機測試通過

升級前版本
openssl-1.0.1e-48.el6_8.1.x86_64
openssh-5.3p1-118.1.el6_8.x86_64

升級後版本
OpenSSL 1.0.2j
OpenSSH 7.3p1

第一步,先去官網下載好這兩個包放在/tmp目錄下。
wget 
wget https://openssl.org/source/openssl-1.0.2j.tar.gz

安裝gcc
yum install gcc

為確保升級過程沒有意外導致ssh對談斷開,還是開個telnet服務
yum install telnet-server xinetd
sed -i '/disable/s/yes/no/g' /etc/xinetd.d/telnet
service xinetd restart

此時換telnet登陸伺服器執行後續命令
#備份舊的ssh設定和使用者家目錄的相關ssh檔案
cp -raf /etc/ssh /etc/ssh.old
cp -raf /etc/init.d/sshd /etc/init.d/sshd.old
cp -raf /root/.ssh/ /root/.ssh.old
r_list=`cat /etc/passwd | awk -F ":" '{if($3>=500) print $6}'`
for i in $r_list;do
    cp -raf $i/.ssh/ $i/.ssh.old
done

刪掉舊的openssl和openssh
yum remove -y openssh
rpm -qa | grep openssl | xargs rpm -e --nodeps

安裝openssl
tar zxf openssl-1.0.2j.tar.gz
cd openssl-1.0.2j
./config --prefix=/usr   
        --openssldir=/etc/ssl
        --libdir=lib         
        --shared             
        zlib-dynamic 
make depend && make
make MANDIR=/usr/share/man MANSUFFIX=ssl install &&
install -dv -m755 /usr/share/doc/openssl-1.0.2j  &&
cp -vfr doc/*    /usr/share/doc/openssl-1.0.2j
ln -s /usr/lib/libcrypto.so.1.0.0 /usr/lib64/libcrypto.so.10
ln -s /usr/lib/libssl.so.1.0.0 /usr/lib64/libssl.so.10
ln -s /usr/lib/libcrypto.so.1.0.0 /usr/lib/libcrypto.so.10
ln -s /usr/lib/libssl.so.1.0.0 /usr/lib/libssl.so.10
 
openssl version
#安裝完成,應當輸出OpenSSL 1.0.2j  26 Sep 2016

安裝openssh
cd /tmp/
tar zxf openssh-7.3p1.tar.gz
cd openssh-7.3p1
 
#隱藏版本號設定
sed -i '/SSH_VERSION/s/OpenSSH_7.3/Goodbye/g' version.h
sed -i '/SSH_PORTABLE/s/p1/./g' version.h
 
echo "/usr/include/openssl/">>/etc/ld.so.conf
ldconfig
./configure --prefix=/usr                 
            --sysconfdir=/etc/ssh         
            --with-md5-passwords         
            --with-ssl-dir=/usr/local/ssl/
            --with-privsep-path=/var/empty/sshd
make
make install &&
install -v -m755    contrib/ssh-copy-id /usr/bin    &&
install -v -m644    contrib/ssh-copy-id.1           
                    /usr/share/man/man1              &&
install -v -m755 -d /usr/share/doc/openssh-7.3p1    &&
install -v -m644    INSTALL LICENCE OVERVIEW README*
                    /usr/share/doc/openssh-7.3p1
                     
cp -raf /etc/init.d/sshd.old /etc/init.d/sshd
mv /etc/ssh/sshd_config /etc/ssh/sshd_config.new
cp -raf /etc/ssh.old/sshd_config /etc/ssh/sshd_config
sed -i 's/GSSAPI/#GSSAPI/g' /etc/ssh/sshd_config
sed -i 's/UsePAM/#UsePAM/g' /etc/ssh/sshd_config
service sshd restart

安裝完成。

更多OpenSSH相關內容可以檢視以下的有用連結: 

Ubuntu Server 13.10系統中安裝設定OpenSSH http://www.linuxidc.com/Linux/2014-02/96953.htm

Ubuntu安裝遠端登入OpenSSH服務 http://www.linuxidc.com/Linux/2014-02/97218.htm

通過OpenSSH遠端登入時的延遲問題解決 http://www.linuxidc.com/Linux/2013-07/86879.htm

Ubuntu 12.10下OpenSSH的離線安裝方法 http://www.linuxidc.com/Linux/2013-04/82814.htm

OpenSSH升級步驟及注意事項詳解 http://www.linuxidc.com/Linux/2013-04/82123.htm

OpenSSH普通使用者無法登入的幾種情況的解決方法 http://www.linuxidc.com/Linux/2012-05/59457.htm

通用執行緒: OpenSSH 金鑰管理,第 1 部分理解 RSA/DSA 認證 http://www.linuxidc.com/Linux/2011-08/39871.htm

RedHat安裝OpenSSH和設定sftp鎖定目錄 http://www.linuxidc.com/Linux/2012-12/75398.htm

本文永久更新連結地址http://www.linuxidc.com/Linux/2016-11/137166.htm


IT145.com E-mail:sddin#qq.com