一、環境描述
1)操作系統:CentOS 5.5 64位
2)Openssh版本:openssh-4.3p2-41.el5
3)Openssh升級後版本:OpenSSH_6.1p1(源碼安裝)
4)連接工具xshell 4
二、安裝Dropbear代替OpenSSH
1)下載dropbear安裝包
https://matt.ucc.asn.au/dropbear/releases/dropbear-2014.66.tar.bz2
2)檢查安裝依賴包
yum install zlib* gcc make
3)編譯安裝dropbear
# tar jxf dropbear-2014.66.tar.bz2
# cd dropbear-2014.66
# ./configure
# make && make install
檢查生成的文件是否正確:
4)生成證書
# /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
5)啓動dropbear
# /usr/local/sbin/dropbear -p 2222 //監聽2222端口
查看是否啓動成功:
三、升級sshd到OpenSSH-6.1並備份老版本ssh文件夾
1)升級前準備
查看是否缺包
# rpm -qa | egrep "gcc|openssl|openssl-devel|make|perl|pam|pam-devel"
如果有配置yum了的話可以直接yum安裝這些包,這樣既可以檢驗是否裝了,沒裝的直接裝上。
yum -y install gcc* make openssl openssl-devel perl pam pam-devel
2)下載openssh-6.1p1.tar.gz
http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-6.1p1.tar.gz
備份ssh :
# mv /etc/ssh /etc/ssh.bak
# openssl version -a
# tar zxf openssh-6.1p1.tar.gz && cd openssh-6.1p1
# ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib --with-md5-passwords
# make
先卸載完舊版本的openssh,再make install
# rpm -qa | grep openssh
# rpm -e `rpm -qa | grep openssh`
Openssh-askpass是用於圖形界面下輸入口令的,用不着可以不裝
# make install
4)查看是否升級到新版本
5)複製啓動腳本到/etc/init.d
# cp /root/openssh-6.1p1/contrib/redhat/sshd.init /etc/init.d/sshd
加入開機自啓
# chkconfig --add sshd
6)啓動sshd,用start或reload。不要restart,restart 會直接斷開連接,而並不會接着啓動sshd服務,這時候要通過其他途徑進入機器,然後啓動sshd服務才行。
四、刪除dropbear
在xshell裏再重新打開一個標籤,
在這裏Dropbear用來防止升級不成功,用來替代openssh連接服務器。
在開啓2222端口(dropbear啓動時的端口,可以設置別的 )的情況下,通過xshell連接的方法是:
Xshell:\> ssh 192.168.4.1 2222 (192.168.4.1爲需要連接的服務器ip)
刪除dropbear安裝的文件,並殺掉進程
# rm -rf /etc/dropbear/ /usr/local/sbin/dropbear /usr/local/bin/dropbear*