Linux下ssh升級安裝配置

2009年11月12日 星期四 17:58

RedHat Linux下升級 SSH 服務

當 Telenet 已經漸漸退出歷史舞臺後,SSH ( Security SHell ) 就成爲幾乎所有 Linux 操作系統的遠程登錄連接協議。但是,目前很多 Linux 發行版中集成的 SSH 軟件版本都比較老,存在着一些漏洞和安全隱患,因而升級 SSH 服務軟件修補漏洞提升系統安全成爲 Linux 系統安全中非常重要的一個環節。下面就講述一下如何升級 SSH 服務。

SSH 有許多標準,通常 Linux 中 ( Redhat, CentOS, SuSE 等 )使用的是開源版本的 OpenSSH,所以我們就是對 OpenSSH 進行升級。在升級 OpenSSH 之前,需要升級系統中的 OpenSSL (OpenSSL 可以爲 OpenSSH 提供加密傳輸支持,是 OpenSSH 的一箇中間件)版本和 Zlib (提供壓縮傳輸支持)版本,以達到最好的安全性。

注意:在開始升級之前一定要確認系統中已經安裝了 GCC 編譯器!

一、升級 Zlib
1、下載最新版本 Zlib
Zlib 官方網站:http://www.zlib.net/
目前最新版本的 Zlib 是 zlib-1.2.3.tar.gz
# cd /usr/local/src
# wget -c http://www.zlib.net/zlib-1.2.3.tar.gz

2、編譯安裝 Zlib
# tar xzvf zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# ./configure --prefix=/usr/local/zlib
# make
# make install
這樣,就把 zlib 編譯安裝在 /usr/local/zilib 中了。

二、升級 OpenSSL
1、下載最新版本 OpenSSL
OpenSSL 的官方網站:http://www.openssl.org
目前最新版的 OpenSSL 是 openssl-0.9.8d
# cd /usr/local/src
# wget -c http://www.openssl.org/source/openssl-0.9.8d.tar.gz

2、編譯安裝 OpenSSL
# tar xzvf openssl-0.9.8d.tar.gz
# cd openssl-0.9.8d
# ./Configure --prefix=/usr/local/openssl
# make
# make test (這一步很重要哦!是進行 SSL 加密協議的完整測試,如果出現錯誤就要一定先找出哪裏的原因,否則一味繼續可能導致最終 SSH 不能使用,後果很嚴重哦!)
# make install

三、升級 OpenSSH
1、下載最新版本 OpenSSH
OpenSSH 的官方網站:http://www.openssh.com
目前最新版的 OpenSSH 是 openssh-4.5p1
# cd /usr/local/src
# wget -c ftp://ftp.it.net.au/mirrors/OpenBSD/OpenSSH/portable/openssh-4.5p1.tar.gz

2、編譯安裝 OpenSSH
# tar xzvf openssh-4.5p1.tar.gz
# cd openssh-4.5p1
# ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/openssl --with-md5-passwords
(注意,如果 configure 時提示 PAM 有錯誤,那一般是因爲系統中沒有安裝 pam-devel RPM 包,找到安裝光盤,安裝 pam-devel 就可以解決啦)
# make
# make install

這樣就完成了整個升級 SSH 的工作,在升級完成後,我們還需要修改一下 OpenSSH 的配置文件進一步提升安全性。
通過以上步驟完成的升級工作,OpenSSH 的配置文件在 /etc/ssh 下,其中 SSH Server 的配置文件是 sshd_config。

# vi /etc/ssh/sshd_config
找到:

CODE:

#Protocol 2,1修改爲:

CODE:

Protocol 2這樣就禁用了 ssh v1 協議,只使用更安全的 ssh v2 協議。

找到:

CODE:

X11Forwarding yes修改爲:

CODE:

X11Forwarding no禁用 X11 轉發。

修改後保存退出。

● 生成ssh服務管理腳本

進入ssh解壓目錄

#cd /contrib/redhat

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

#chmod +x /etc/init.d/sshd

#chkconfig –add sshd

最後,啓動 SSH 服務使修改生效:
# /etc/init.d/sshd restart

重啓後確認一下當前的 OpenSSH 和 OpenSSL 是否正確:
# ssh -v
如果看到了新的版本號就沒問題啦!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章