漏洞修復 centOS公升級openssh到8 0

2021-09-25 14:31:31 字數 3256 閱讀 7728

近期在伺服器安全掃瞄發現一大堆漏洞,上百臺伺服器的漏洞都差不多,主要是關於openssh的。

漏洞有很多,掃瞄系統給出的解決辦法是打各種補丁,但通過了解到,將openssh直接公升級基本可以解決所有漏洞問題,一勞永逸。現將7.4版本的openssh公升級到8.0版本。

安裝telnet

得先安裝telnet服務,因為在公升級openssh的時候如果出現錯誤,如果沒有裝telnet,就無法遠端連線了,就很尷尬了,如果是雲主機還好,可以通過控制台進入,否則就得跑機房了,不過控制台經常莫名的進不去,所以保險起見,安裝telnet。

yum -y install telnet-server

yum -y install xinetd

yum -y install telnet

echo "pts/0">> /etc/securetty

echo "pts/1">> /etc/securetty

echo "pts/2">> /etc/securetty

systemctl enable xinetd

systemctl enable telnet.socket

systemctl start telnet.socket

systemctl start xinetd

netstat -lntp|grep 23

預設情況下,linux不允許root使用者以telnet方式登入linux主機,若要允許root使用者登入,可採取以下做法:修改securetty檔案增加pts配置。如果登入使用者較多,需要更多的pts/*。echo 「pts/2」>> /etc/securetty,完事之後再刪除即可。

安裝openssl

如果openssl版本過低。則需要先公升級openssl。

#可能涉及到的依賴

yum install -y gcc*

yum install -y glibc make autoconf openssl openssl-devel pcre-devel pam-devel

yum install -y pam* zlib*

mkdir /usr/openssh_openssl/

cd /usr/openssh_openssl/

wget

tar xzvf openssl-1.0.2s.tar.gz

cd openssl-1.0.2s/

#對openssl命令進行備份

mv /usr/bin/openssl /usr/bin/openssl_bak

mv /usr/include/openssl /usr/include/openssl_bak

#編譯安裝

cd /usr/openssh_openssl/openssl-1.0.2s/

./config shared && make && make install

#將openssl命令軟連線到/usr/bin/,注意,不同版本的openssl,命令路徑可能不一樣

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

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

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

/sbin/ldconfig

#檢視公升級後的版本資訊

openssl version

安裝openssh

cd /usr/openssh_openssl/

wget

tar xzvf openssh-8.0p1.tar.gz

cd /usr/openssh_openssl/openssh-8.0p1

#可能需要的許可權

chown -r root.root /usr/openssh_openssl/openssh-8.0p1

#備份ssh

mv /etc/ssh/ /etc/ssh_bak/

#編譯安裝

./configure --prefix=/usr/ --sysconfdir=/etc/ssh

--with-openssl-includes=/usr/include/openssl --with-ssl-dir=/usr/local/ssl

--with-zlib --with-md5-passwords --with-pam && make && make install

#修改配置檔案,登入許可權,安裝之前檢視配置檔案,設定為與之前版本一樣

sed -i 's/#permitrootlogin prohibit-password/#permitrootlogin yes/g' /etc/ssh/sshd_config

sed -i 's/#usedns no/usedns no/g' /etc/ssh/sshd_config

#啟動相關配置

cp -a contrib/redhat/sshd.init /etc/init.d/sshd

cp -a contrib/redhat/sshd.pam /etc/pam.d/sshd.pam

chmod +x /etc/init.d/sshd

chkconfig --add sshd

/usr/lib/systemd/system/sshd.service /usr/openssh_openssl/

mv /usr/lib/systemd/system/sshd.service /usr/lib/systemd/system/sshd.service_bak

chkconfig sshd on

/etc/init.d/sshd restart

netstat -lntp

/etc/init.d/sshd start

#檢視openssh版本

ssh -v

#安裝成功,確認可以ssh遠端登入後,關閉telnet

sy.sostemctl disable xinetd.service

systemctl stop xinetd.service

systemctl disable telnet.socket

systemctl stop telnetcket

netstat -lntp

centos常用漏洞公升級修復命令

yum update kernel yum update kernel devel yum update kernel firmware yum update kernel headers yum update nss util yum update nss yum update nss sysin...

公升級sudo版本,修復漏洞

更新ubuntu sudo版本 3.建立packages.gz包,裡面記錄了packs資料夾下面的軟體包資訊,包括依賴資訊。dpkg scanpackages data test dev null gzip data test packages.gz r 4.加本地源 cat etc apt sou...

nginx漏洞分析與公升級修復

nginx announce nginx安全公告 cve 2018 16843,cve 2018 16844 在nginx http 2實現中發現了兩個安全問題,漏洞對伺服器的影響 可能會導致過多的記憶體消耗 cve 2018 16843 和cpu使用率 cve 2018 16844 影響範圍 這些...