Centos 7.4系統升級OpenSSH 8.4p1服務

z597011036發表於2021-02-04

        OpenSSH是Linux系統遠端登陸服務,預設埠是22,在升級服務時請先做好故障預估,在本伺服器安裝Telnet服務,並連線到伺服器再升級,避免升級過程中出現故障導致伺服器不能連線。


1.檢視ssh服務當前版本,安裝Telnet服務(避免SSH服務遠端登陸不上)

[root@nginx02 ~]# ssh -V

OpenSSH_7.4p1, OpenSSL 1.0.2k-fips  26 Jan 2017

[root@nginx02 data]# yum install xinetd telnet-server -y

[root@nginx02 data]# vim /etc/xinetd.d/telnet

{

    disable = yes

    flags       = REUSE

    socket_type = stream

    wait        = no

    user        = root

    server      = /usr/sbin/in.telnetd

    log_on_failure  += USERID

}

[root@nginx02 data]# vim /etc/securetty

pts/0

pts/1

pts/2

pts/3

[root@nginx02 data]# systemctl enable xinetd

[root@nginx02 data]# systemctl enable telnet.socket

Created symlink from /etc/systemd/system/sockets.target.wants/telnet.socket to /usr/lib/systemd/system/telnet.sock

[root@nginx02 data]# systemctl start telnet.socket

[root@nginx02 data]# systemctl start xinetd

[root@nginx02 data]# netstat -lntp|grep 23

tcp        0      0 0.0.0.0:23              0.0.0.0:*               LISTEN      1/systemd           

[root@nginx02 data]# 


2.使用Xshell登陸伺服器(23埠)


3.下載及安裝OpenSSH 8.4服務

[root@nginx02 ~]# wget

[root@nginx02 ~]# tar xvf openssh-8.4p1.tar.gz 

[root@nginx02 ~]# cd openssh-8.4p1

[root@nginx02 openssh-8.4p1]# ./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl --with-zlib=/usr/local/zlib 

[root@nginx02 openssh-8.4p1]# chmod 600 /etc/ssh/ssh_host_*

[root@nginx02 openssh-8.4p1]# make -j 4 && make install

[root@nginx02 openssh-8.4p1]# mv /usr/sbin/sshd /usr/sbin/sshd.bak

[root@nginx02 openssh-8.4p1]# cp -rf /usr/local/openssh/sbin/sshd /usr/sbin/sshd

[root@nginx02 openssh-8.4p1]# mv /usr/bin/ssh /usr/bin/ssh.bak

[root@nginx02 openssh-8.4p1]# cp -rf /usr/local/openssh/bin/ssh /usr/bin/ssh

[root@nginx02 openssh-8.4p1]# mv /usr/bin/ssh-keygen /usr/bin/ssh-keygen.bak

[root@nginx02 openssh-8.4p1]# cp -rf /usr/local/openssh/bin/ssh-keygen  /usr/bin/ssh-keygen

[root@nginx02 openssh-8.4p1]# 


4.刪除ssh老服務,使用新服務啟動

[root@nginx02 openssh-8.4p1]# systemctl stop sshd.service

[root@nginx02 openssh-8.4p1]# rm -rf /lib/systemd/system/sshd.service 

[root@nginx02 openssh-8.4p1]# systemctl daemon-reload

[root@nginx02 openssh-8.4p1]# cp -a contrib/redhat/sshd.init  /etc/init.d/sshd

[root@nginx02 openssh-8.4p1]# /etc/init.d/sshd restart

Reloading systemd:                                         [  OK  ]

Restarting sshd (via systemctl):                           [  OK  ]

[root@nginx02 openssh-8.4p1]# ssh -V

OpenSSH_8.4p1, OpenSSL 1.0.2k-fips  26 Jan 2017                --升級成功

[root@nginx02 openssh-8.4p1]# 


5.如果xshell登陸出現警告(是因為新的openssh服務與xshell不相容問題)

解決方法:

[root@nginx02 openssh-8.4p1]# vim /etc/ssh/sshd_config

KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group14-sha1

[root@nginx02 openssh-8.4p1]# /etc/init.d/sshd restart

Restarting sshd (via systemctl):                           [  OK  ]

[root@nginx02 openssh-8.4p1]# 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25854343/viewspace-2756138/,如需轉載,請註明出處,否則將追究法律責任。

相關文章