openssh升级sftp_Centos7 升级 openSSH 到7.9p1的详细步骤
由于項(xiàng)目構(gòu)建時(shí)間比較長(zhǎng),近期安全檢查發(fā)現(xiàn)openssh有漏洞。所以要升級(jí)openssh到7.9p1版本。由于ssh用于遠(yuǎn)程連接,所以要謹(jǐn)慎操作。本文講的步驟是在Centos7.3系統(tǒng)、原openssh是系統(tǒng)安裝時(shí)自帶的6.6版本基礎(chǔ)上進(jìn)行升級(jí)(其他版本類似),建議生成環(huán)境要先做測(cè)試,之后再在生產(chǎn)環(huán)境升級(jí)。
一、升級(jí)說(shuō)明
1、升級(jí)OpenSSH后,原有公鑰失效,信任關(guān)系需要重新配置;
2、升級(jí)過(guò)程需要停止sshd服務(wù),會(huì)導(dǎo)致ssh和sftp無(wú)法使用;
3、升級(jí)需要關(guān)閉防火墻服務(wù);
4、升級(jí)需要關(guān)閉selinux服務(wù);
5、升級(jí)前需要開(kāi)啟telnet,防止升級(jí)失敗,系統(tǒng)無(wú)法登錄,對(duì)應(yīng)的防火墻需要開(kāi)啟23端口,安裝需要telnet相關(guān)包(推薦通過(guò)系統(tǒng)ISO安裝)
6、升級(jí)過(guò)程中需要刷新lib庫(kù):ldconfig -v;
7、升級(jí)順序:順序是zlib庫(kù)-> openssl -> openssh;
8、升級(jí)需要gcc、make、perl、zlib、zlib-devel、pam、pam-devel依賴包;
二、安裝包準(zhǔn)備
需要準(zhǔn)備的安裝包(點(diǎn)擊可本地下載):
三、安裝并啟用Telnet
1、安裝telnet服務(wù)端
yum -y install xinetd telnet-server
2、默認(rèn)情況下,系統(tǒng)是不允許root用戶telnet遠(yuǎn)程登錄的。如果要使用root用戶直接登錄,需設(shè)置如下內(nèi)容。或者可以添加一個(gè)可以登錄的用戶,登錄并su到root用戶(建議采用此方法,保證系統(tǒng)安全)。此步驟可跳過(guò)!
允許root用戶通過(guò)telnet登陸:
編輯/etc/pam.d/login,注釋掉下面這行
vi /etc/pam.d/login
#auth?[user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
3、添加超級(jí)用戶登陸設(shè)備至/etc/securetty文件cp?/etc/securetty?/etc/securetty.bak
echo?"pts/0"?>>?/etc/securetty
echo?"pts/1"?>>?/etc/securetty
echo?"pts/2"?>>?/etc/securetty
4、開(kāi)啟root用戶遠(yuǎn)程登陸。此步驟可跳過(guò)!
編輯/etc/pam.d/remote,注釋下列這行:
vi /etc/pam.d/remote
#auth required?pam_securetty.so
5、重啟telnet和xinetd服務(wù)【telnet服務(wù)依賴于xinetd服務(wù)】systemctl?restart?telnet.socket
systemctl?restart?xinetd
PS:如果開(kāi)啟了防火墻,需要將23端口(系統(tǒng)默認(rèn)23為telnet端口)添加到防火墻允許的端口的列表中。
四、安裝升級(jí)
(1)、升級(jí)前環(huán)境準(zhǔn)備
1、將上文下載的三個(gè)文件上傳至服務(wù)器,目錄可自行設(shè)定,方便即可。
2、關(guān)閉系統(tǒng)防火墻
systemctl stop firewalld.service
3、關(guān)閉SElinux
檢查是否關(guān)閉:
getenforce
如果未關(guān)閉,關(guān)閉之
setenforce 0
上面只是臨時(shí)關(guān)閉了,重啟后不生效。下面改配置文件,使永久生效。
vi /etc/selinux/config
修改:
SELINUX=disabled
保存退出。
4、安裝相關(guān)依賴包
yum -y install gcc make perl zlib zlib-devel pam pam-devel
安裝完畢后執(zhí)行下面命令,確保所有依賴包正常安裝
rpm -qa | egrep "gcc|make|perl|zlib|zlib-devel|pam|pam-devel"
(2)、升級(jí)openSSH(注意從這步開(kāi)始,通過(guò)Telnet登錄到服務(wù)器,務(wù)必)
1、停止ssh服務(wù)
systemctl stop sshd
備份ssh配置文件
cp -r /etc/ssh /etc/ssh.old
2、查看系統(tǒng)原有openssh包
rpm -qa | grep openssh
根據(jù)上面查詢出的結(jié)果,卸載系統(tǒng)里原有Openssh(一般有三個(gè)包,全部卸載)
rpm -e --nodeps? xxxxxxxxxx
卸載完成后執(zhí)行rpm -qa | grep openssh,確保沒(méi)有回顯
3、編譯安裝zlib
解壓剛才上傳到服務(wù)器的zlib-1.2.11.tar.gz,并進(jìn)行編譯安裝tar?-xzvf?zlib-1.2.11.tar.gz
cd?zlib-1.2.11
./configure?--prefix=/usr/local/zlib
如果報(bào)錯(cuò)類似下圖所示,請(qǐng)安裝gcc
make
make?install
驗(yàn)證zlib安裝是否成功,要包含include、lib、share三個(gè)目錄。
ll /usr/local/zlib
新建并編輯配置文件:
vi?/etc/ld.so.conf.d/zlib.conf
加入如下內(nèi)容后保存退出
/usr/local/zlib/lib
刷新庫(kù)文件,加載剛才編譯安裝的zlib生成的庫(kù)文件
ldconfig?-v
4、編譯安裝openssl
解壓安裝openssl包,并進(jìn)行編譯安裝tar?-xzvf?openssl-1.0.2o.tar.gz
cd?openssl-1.0.2o
./config?shared?zlib
make??????(時(shí)間比較長(zhǎng),切勿打斷)
make?test????(時(shí)間比較長(zhǎng),切勿打斷)
make?install?????(時(shí)間比較長(zhǎng),切勿打斷)
重命名現(xiàn)有文件目錄
mv?/usr/bin/openssl?/usr/bin/openssl.bak
創(chuàng)建ssl相關(guān)軟連接
ln?-s?/usr/local/ssl/bin/openssl?/usr/bin/openssl
ln?-s?/usr/local/ssl/include/openssl?/usr/include/openssl
編輯配置文件
vi?/etc/ld.so.conf.d/ssl.conf
加入如下內(nèi)容后保存退出
/usr/local/ssl/lib
刷新庫(kù)文件,加載剛才編譯安裝的ssl生成的庫(kù)文件
ldconfig?-v
查看openssl版本
openssl?version?-a
5、升級(jí)openssh,編譯安裝tar?-zxvf?openssh-7.9p1.tar.gz
cd?openssh-7.9p1
./configure?--prefix=/usr?--sysconfdir=/etc/ssh?--with-md5-passwords?--with-privsep-path=/var/lib/sshd
make
修改文件權(quán)限
chmod?600?/etc/ssh/ssh_host_rsa_key
chmod?600?/etc/ssh/ssh_host_ecdsa_key
chmod?600?/etc/ssh/ssh_host_ed25519_key
make?install
修改配置文件,允許root直接登錄
echo?"PasswordAuthentication?yes"???>>?/etc/ssh/sshd_config
echo?"PermitRootLogin?yes"?>>?/etc/ssh/sshd_config
ssh服務(wù)必須開(kāi)機(jī)自啟動(dòng),因此要進(jìn)行一些設(shè)置
cp?-p?contrib/redhat/sshd.init?/etc/init.d/sshd
chmod?+x?/etc/init.d/sshd
chkconfig?--add?sshd
chkconfig?sshd?on
systemctl?restart?sshd
驗(yàn)證ssh版本
ssh -V
ssh登錄測(cè)試,可以成功登錄。
openssh版本升級(jí)完成!
如果之前是rpm包安裝的。并且按照以上步驟操作,可以直接以下命令進(jìn)行回滾#?yum?-y?install?openssh-clients
#?yum?-y?install?openssh-server
#?yum?-y?install?openssh
總結(jié)
以上是生活随笔為你收集整理的openssh升级sftp_Centos7 升级 openSSH 到7.9p1的详细步骤的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 我的世界手机版java安装失败_我的世界
- 下一篇: 【Centos】Centos7.5取消自