當前位置:編程學習大全網 - 源碼下載 - 各位大神.怎樣在Linux redhat上安裝openssh7.2

各位大神.怎樣在Linux redhat上安裝openssh7.2

這個是7.1的 7.2壹樣

Openssh7.1p1升級方案

OpenSSH_7.1p1、Openssl1.01p、zlib1.28

第壹步 準備安裝包

1.1、 確定操作系統

uname -a

lsb_release -a(suse)

cat /etc/issue(redhat)

1.2、 將所需安裝包上傳到服務器

zlib-1.2.8.tar.gz

openssl-1.0.1p.tar.gz

openssh-7.1p1.tar.gz

相關下載:www.openssl.org、www.openssh.org、www.zlib.net、

//先把所有安裝文件上傳服務器,再卸載ssh,要不文件上傳非常麻煩,在系統鏡像中找到gcc安裝包壹並上傳,大部分make失敗都是gcc未安裝或者安裝不全造成。

第二步 準備好其他遠程方式

2.1、此項可選擇telnet或者vnc來進行遠程操作

安裝telnet服務,telnet安裝rpm包對應操作系統ISO文件裏面提取,建議不要跨操作系統版本安裝,減少未知問題。

vi /etc/xinetd.d/telnet

disable = yes改成 no。

service xinetd restart

vi /etc/securetty加入

pts/0

pts/1

pts/2

pts/3

vi /etc/pam.d/login文件註釋掉:

#auth [user_unknown=ignore success=ok ignore=ignore

#auth_err=die default=bad] pam_securetty.so

//以上步驟保證root用戶可以telnet,保證後續遠程配置正常進行。

第三步 程序升級

3.1、停止SSHD服務

# /sbin/service sshd stop

3.2、備份啟動腳本

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

3.3、卸載系統裏原有Openssh

# rpm -qa openssh //查詢系統原安裝的openssh包,全部卸載。

# rpm -e openssh --nodeps

# rpm -e openssh-server --nodeps

# rpm -e openssh-clients --nodeps

# rpm -e openssh-askpass

3.4、解壓安裝zlib包:

# tar -zxvf zlib-1.2.8.tar.gz //首先安裝zlib庫,否則會報zlib.c錯誤無法進行

# cd zlib-1.2.8

# ./configure

# make&&make install

3.5、解壓安裝openssl包:

# tar -zxvf openssl-1.0.1p.tar.gz

# cd openssl-1.0.1p

# ./config shared zlib

# make

# make test

# make install

# mv /usr/bin/openssl /usr/bin/openssl.OFF

# mv /usr/include/openssl /usr/include/openssl.OFF

//該步驟可能提示無文件,忽略即可

# ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl

# ln -s /usr/local/ssl/include/openssl /usr/include/openssl

//移走原先系統自帶的openssl,將自己編譯產生的新文件進行鏈接。

3.6、配置庫文件搜索路徑

# echo "/usr/local/ssl/lib" >> /etc/ld.so.conf

# /sbin/ldconfig -v

# openssl version -a

OpenSSL 1.0.1m 19 Mar 2015

built on: Sat Mar 21 04:11:47 2015

platform: linux-x86_64

options: bn(64,64) rc4(8x,int) des(idx,cisc,16,int) idea(int) blowfish(idx)

compiler: gcc -I. -I.. -I../include -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM

OPENSSLDIR: "/usr/local/ssl

3.7、解壓安裝openssh包:

先將將/etc/ssh的文件夾備份:

# mv /etc/ssh /etc/ssh_bak

# tar -zxvf openssh-7.1p1.tar.gz

# cd openssh-7.1p1

# ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-zlib --with-ssl-dir=/usr/local/ssl --with-md5-passwords --mandir=/usr/share/man --with-pam

# make

# make install

ssh –V

OpenSSH_7.1p1, OpenSSL 1.0.1p 9 Jul 2015

3.8、啟動調試ssh

# /usr/sbin/sshd -d

debug1: sshd version OpenSSH_7.1, OpenSSL 1.0.1m 19 Mar 2015

debug1: private host key #0: ssh-rsa SHA256:EqDJvZiq8JgG+nG/xsmZ6yrd3B+OoulgE5GhzSZcJHg

debug1: private host key #1: ssh-dss SHA256:AmqP8tvvqy3t1dSy1P4ETqh8Poma40PmzDpTtipVIqQ

debug1: private host key #2: ecdsa-sha2-nistp256 SHA256:sebvQl7OXvlFsbBy9zuUYPwWfqJm47qYBi/IIcEA8Jk

debug1: private host key #3: ssh-ed25519 SHA256:niy1XbgnrydgeFXfMqVjkfRbUlZ4YeFsWof2cWoCBWc

debug1: rexec_argv[0]='/usr/sbin/sshd'

debug1: rexec_argv[1]='-d'

Set /proc/self/oom_score_adj from 0 to -1000

debug1: Bind to port 22 on 0.0.0.0.

Bind to port 22 on 0.0.0.0 failed: Address already in use.

debug1: Bind to port 22 on ::.

Bind to port 22 on :: failed: Address already in use.

Cannot bind any address.

3.9、啟動服務

# cp -p contrib/redhat/sshd.init /etc/init.d/sshd(redhat使用)

# cp -p contrib/suse/rc.sshd /etc/init.d/sshd(suse使用)

//其他版本操作系統具體查看contrib對應目錄和readme。

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

# chkconfig --add sshd

# cp sshd_config /etc/ssh/sshd_config (如提示覆蓋,yes回車)

# cp sshd /usr/sbin/sshd (如提示覆蓋,yes回車)

10、驗證是否成功

service sshd start

ssh -V

OpenSSH_7.1p1, OpenSSL 1.0.1m 19 Mar 2015

此時可以嘗試遠程ssh進去服務器,如果能連,並查看驗證日誌信息等確認無誤。

查看ssh服務狀態:

//以下配置redhat略有不同,具體情況具體解決。

/etc/init.d/sshd status

Checking for service sshd unused

狀態不可用,ssh連接正常。

pkill sshd

殺掉sshd服務

service sshd start

啟動sshd服務

service sshd status

Checking for service sshd running

卸載telnet-server

rpm –e telnet-server

客戶端連接telnet失敗。

# vi /etc/ssh/sshd_config

PermitRootLogin yes

  • 上一篇:賬戶平臺源代碼
  • 下一篇:Glide ② — 緩存機制
  • copyright 2024編程學習大全網