一、環境:服務器
操做系統: CentOs 6.7ssh
Openssl 版本:openssl-1.0.2h 官網下載地址:http://www.openssl.org/spa
Openssh 版本:openssh-7.8p1 官網下載地址:http://www.openssh.org/操作系統
二、準備工做:rest
1.1、安裝依賴包server
yum -y install gcc pam-devel zlib-develip
1.2、查看系統軟件當前版本md5
#openssl versionssl
#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登陸驗證是否成功啓用
三、升級軟件
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
-----------------到此安裝完成------------------------