升級OpenSSH詳細步驟

因爲系統掃描到OpenSSH版本過低,因此須要將其升級到高版本。網上搜羅數個文章,都多多少少有點疏漏。加上本身以前沒升級過SSH,參考好幾個文章查缺補漏才升級成功,着實廢了很多勁兒。因此綜合一下前輩們的文章,作一個詳細的記錄,讓初學者可以按照步驟升級成功。node

本文涉及到的、未涉及到的文件都上傳至CSDN:linux

http://download.csdn.net/detail/w772759313/9359817緩存

你們可自行下載。服務器

=========================================華麗的分割線=========================================session

事前工做:ssh

先將全部安裝文件包傳至/usr/local/src文件夾下。socket

包含SSL和SSh安裝包(源碼)、telnet-server安裝包(rpm)測試

過後工做:加密

刪除無用安裝包;.net

刪除臨時創建的帳戶;

關閉telnet服務。

1、安裝配置TELNET服務

一、先安裝配置telnet,在卸載ssh以後還能夠遠程鏈接服務器

rpm包安裝,不贅述。

配置 vi /etc/xinetd.d/telnet 

# default: on

# description: The telnet server serves telnet sessions; it uses \

#       unencrypted username/password pairs for authentication.

service telnet

{

        flags           = REUSE

        socket_type     = stream

        wait            = no

        user            = root

        server          = /usr/sbin/in.telnetd

        log_on_failure  += USERID

        disable         = no --這裏原來是yes,改爲no

}

重啓telnet服務

# service xinetd stop

Stopping xinetd: [  OK  ]

# service xinetd start

在此服務器上從新創建一個普通用戶,客戶端利用普通用戶登陸,再換成root用戶。

二、在其餘客戶端上已telnet的方式登陸服務器

# telnet 192.189.200.134 23

Trying 192.189.200.134...

Connected to 192.189.200.134 (192.189.200.134).

Escape character is '^]'.

Red Hat Enterprise Linux Server release 5.5 (Tikanga)

Kernel 2.6.18-194.el5 on an x86_64

login: 用戶名

Password: 密碼

telnet進入服務器後,能夠切換到root用戶,進行程序安裝工做。

2、安裝OpenSSL

一、卸載原有SSL

rpm -qa | grep openssl

---------------------

openssl-0.9.8e-12.el5_4.6

openssl097a-0.9.7a-9.el5_2.1

openssl097a-0.9.7a-9.el5_2.1

openssl-devel-0.9.8e-12.el5_4.6

openssl-0.9.8e-12.el5_4.6

openssl-devel-0.9.8e-12.el5_4.6

------------------------------------

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

二、編譯安裝 OpenSSL

# cd /usr/local/src/

# tar -xzvf openssl-1.0.1j.tar.gz

# cd /usr/local/src/openssl-1.0.1j

# ./config --prefix=/usr/local/openssl -shared (shared命令必須加)

# make

# make test 

# make install

make test (進行 SSL 加密協議的完整測試,若是出現錯誤就要必定先找出哪裏的緣由,不然一味繼續,可能最終致使 SSH 不能使用,後果很嚴重的!)

三、配置庫文件搜索路徑

在/etc/ld.so.conf文件的最後面,添加以下內容:

/usr/local/openssl/lib

最終成爲:

include ld.so.conf.d/*.conf

/usr/local/openssl/lib

四、執行ldconfig -v 刷新緩存文件

五、添加OPESSL的環境變量,在/etc/profile的最後一行,添加:

export OPENSSL=/usr/local/openssl/bin

export PATH=$OPENSSL:$PATH:$HOME/bin

六、使配置文件當即生效:

source /etc/profile

七、依次以下執行:

# cd /usr/local

# ldd /usr/local/openssl/bin/openssl

會出現相似以下信息:

    linux-vdso.so.1 =>  (0x00007fff3bc73000)

    libdl.so.2 => /lib64/libdl.so.2 (0x00007fc5385d7000)

    libc.so.6 => /lib64/libc.so.6 (0x00007fc538279000)

    /lib64/ld-linux-x86-64.so.2 (0x00007fc5387db000)

八、查看路徑

# which openssl

/usr/local/openssl/bin/openssl

九、查看版本

...]# openssl version

OpenSSL 1.0.1j 15 Oct 2014

到此,OpenSSL安裝完畢

3、安裝OpenSSH

一、卸載原有SSH

rpm -qa | grep openssh

----------------------

openssh-server-4.3p2-41.el5

openssh-4.3p2-41.el5

openssh-askpass-4.3p2-41.el5

openssh-clients-4.3p2-41.el5

------------------------

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

二、升級 OpenSSH

# cd /usr/local/src/

# tar -xzvf openssh-6.7p1.tar.gz

# cd /usr/local/src/openssh-6.7p1

# ./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 就能夠解決了,rpm -ivh pam-devel版本號。此問題亦可忽略。)

# make

# make install

三、生成ssh服務管理腳本:

進入ssh解壓目錄

#cd /usr/local/src/openssh-6.7p1/contrib/redhat

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

#chmod +x /etc/init.d/sshd (直接覆蓋,權限會繼承)

#chkconfig --list |grep sshd  檢查ssh服務是否開機啓動,若是沒有,執行下面命令

#chkconfig --add sshd

四、最後,啓動 SSH 服務使修改生效:

# /etc/init.d/sshd restart 或者 service sshd restart

五、重啓後確認一下當前的 OpenSSH 和 OpenSSL 是否爲新版:

# ssh -V

OpenSSH_6.7p1, OpenSSL 1.0.1j 15 Oct 2014

相關文章
相關標籤/搜索