1. 程式人生 > >openssh升級到OpenSSH_7.6p1

openssh升級到OpenSSH_7.6p1

openssh升級


O、升級環境說明:

系統版本:Red Hat Enterprise Linux Server release 6.4 (Santiago) 64位

舊ssh版本:OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010

升級到ssh版本:OpenSSH_7.6p1, OpenSSL 1.0.2m 2 Nov 2017


一、備份相關文件

主要備份需要卸載的openssl及openssh相關的rpm包安裝的文件,以及系統lib包,以防後續有用。

1)備份要卸載的openssl和openssh相關rpm 包

# rpm -qa |egrep openss[hl]

openssh-clients-5.3p1-84.1.el6.x86_64

openssh-5.3p1-84.1.el6.x86_64

openssh-server-5.3p1-84.1.el6.x86_64

openssl-devel-1.0.0-27.el6.x86_64

# rpm -ql `rpm -qa |egrep openss[hl]` >file.txt

openssl-1.0.0-27.el6.x86_64 # cat file.txt |wc -l

1411

# tar czvf openbak.tgz -T file.txt


2)備份系統lib包

# tar czvf libbak.tgz /lib /lib64


二、拷貝安裝包

1)將dropbear-2014.66.tar.bz2、openssh-7.6p1.tar.gz 、openssl-1.0.2m.tar.gz拷貝到目標主機

2)如果沒有關閉SELINUX,則執行setenforce 0臨時關閉SELINUX。


三、安裝dropbear

1)檢查主機zlib 版本

# rpm -qa | grep zlib

2)如zlib為1.2.3 以上則安裝dropbear

# tar jxf dropbear-2014.66.tar.bz2

# cd dropbear-2014.66

# ./configure

# make && make install

3)生成證書

# mkdir /etc/dropbear

# /usr/local/bin/dropbearkey -t dss -f /etc/dropbear/dropbear_dss_host_key

# /usr/local/bin/dropbearkey -t rsa -s 4096 -f /etc/dropbear/dropbear_rsa_host_key

4)啟動dropbear

# /usr/local/sbin/dropbear -p 2222 //監聽2222端口

5)啟動後檢查一下 netstat -anpl | grep 2222

6)新開xshell 測試 2222端口是否可以聯通

ssh 目標主機IP 2222


三、安裝openssl

1)刪除舊的openssl

rpm -e `rpm -qa | grep openssl` --nodeps --allmatches

tar -zxf openssl-1.0.2m.tar.gz

./config --prefix=/usr –shared

make

make test

make install

2)檢查ssl版本:

[root@hadoop01 openssl-1.0.1j]# openssl version -a


四、安裝openssh

1)卸載舊版本openssh:

rpm -e openssh-clients-5.3p1-84.1.el6.x86_64 --nodeps –allmatches

rpm -e `rpm -qa | grep openssh`

2)安裝openssh

# tar -zxf openssh-7.6p1.tar.gz

註:檢查系統是否安裝了pam-devel包,否則執行下面的命令時會報錯,PAM Header not found.

# ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib --with-md5-passwords

# make

# make install

3)檢查openssh 是否升級成功:

# ssh -V

OpenSSH_7.6p1, OpenSSL 1.0.2m 2 Nov 2017

4)拷貝啟動腳本並設置自啟動:

# cp ./contrib/redhat/sshd.init /etc/init.d/sshd

# chkconfig --add sshd

註:在7.6版本的openssh中默認sshd_config中為PermitRootLogin prohibit-password 即不允許root使用密碼登錄,可根據實際情況修改此配置文件。

# /etc/init.d/sshd start


5)建立so文件鏈接

cd /usr/lib64

ln -s libssl.so.1.0.0 libssl.so.10

ln -s libcrypto.so.1.0.0 libcrypto.so.10


五、測試登錄

從其他主機測試ssh是否能登錄主機

ssh 用戶名@目標主機IP


六、刪除dropbear

1)在xshell裏再重新打開一個標簽

2)殺掉dropbear進程

3)刪除dropbear程序和安裝包

rm -rf /etc/dropbear/ /usr/local/sbin/dropbear /usr/local/bin/dropbear*



openssh升級到OpenSSH_7.6p1