1、環境:
操作系統: CentOs 6.7
Openssl 版本:openssl-1.0.2h 官網下載地址:http://www.openssl.org/
Openssh 版本:openssh-7.8p1 官網下載地址:http://www.openssh.org/
2、准備工作:
1.1、安裝依賴包
yum -y install gcc pam-devel zlib-devel
1.2、查看系統軟件當前版本
#openssl version
#ssh -V
1.3、安裝 telnet 服務
本人安裝未卸載現有的Openssh 版本,為了后續保障先安裝 telnet 服務
1)安裝telnet 服務
#yum -y install telnet-server*
2)啟用 telnet 服務
關閉防火牆:service iptables stop
vi /etc/xinetd.d/telnet
將其中disable字段的yes改為no以啟用telnet服務
mv /etc/securetty /etc/securetty.old //允許root用戶通過telnet登錄
service xinetd start //啟動telnet服務
chkconfig xinetd on //使telnet服務開機啟動,避免升級過程中服務器意外重 啟后無法遠程登錄系統
telnet [ip] //新開啟一個遠程終端以telnet登錄驗證是否成功啟用
3、升級軟件
2.1、升級 Openssl
1)備份當前openssl(無需卸載)
mv /usr/bin/openssl /usr/bin/openssl.old
mv /usr/include/openssl /usr/include/openssl.old
3)解壓源碼包並安裝
tar xf openssl-1.0.2h.tar.gz
cd openssl-1.0.2h/
./config --shared zlib //必須加上--shared,否則編譯時會找不到新安裝的openssl的庫而報錯, 默認 安裝目錄為 /usr/local/ssl/
make
make test //必須執行這一步結果為pass才能繼續,否則即使安裝完成,ssh也無法使用
make install
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
echo "/usr/local/ssl/lib" > /etc/ld.so.conf.d/openssl.conf
ldconfig
openssl version -a //查看是否升級成功
2.2、升級 Openssh
1)備份當前openssh (無需卸載當前版本)
mv /etc/init.d/sshd /etc/init.d/sshd.old
mv /etc/ssh /etc/ssh.old
mv /usr/sbin/sshd /usr/sbin/sshd.old
mv /usr/bin/ssh /usr/bin/ssh.old
2)解壓並安裝
tar xf openssh-7.8p1.tar.gz
cd openssh-7.8p1/
./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-pam --with-ssl-dir=/usr/local/ssl --with-md5-passwords --mandir=/usr/share/man --with-zlib
make && make install
3)恢復文件
cp 你的openssh的解壓目錄/contrib/redhat/sshd.init /etc/init.d/sshd
chmod +x /etc/init.d/sshd
cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd
cp /usr/local/openssh/bin/ssh /usr/bin/
4)重啟 sshd
/etc/init.d/sshd restart 或 service sshd start
-----------------到此安裝完成------------------------