OpenSSH漏洞修復——Ubuntu系統


OpenSSH漏洞
OpenSSH 是一組用於安全地訪問遠程計算機的連接工具,低版本爆出的高危漏洞太多
升級到最新版本

 OpenSSH 升級加固實例

(一)   升級條件准備

²  關閉防火牆

# ufw disable

²  安裝與啟用telnet

開啟telnet server,以防止升級OpenSSH時導致遠程連接異常,具體Telnet服務安裝與開啟命令操作如下。

# apt-get install -y openbsd-inetd

# apt-get install -y telnetd

# service openbsd-inetd start

²  下載相關升級包

# wget https://cloudflare.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.4p1.tar.gz --no-check-certificate

# wget http://www.zlib.net/zlib-1.2.11.tar.gz

# wget https://www.openssl.org/source/openssl-1.0.2k.tar.gz

²  安裝zlib依賴庫

# tar zxvf zlib-1.2.11.tar.gz

# cd zlib-1.2.11

# ./configure

# make && make install

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

# ldconfig

²  添加普通賬戶

# useradd iflytek

# passwd iflytek

(二)   OpenSSL升級

# tar zxvf openssl-1.0.2k.tar.gz

# cd openssl-1.0.2k

# ./config shared -fPIC

# make && make install

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

# ldconfig

# rm -rf /usr/bin/openssl

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

# openssl version

 

(三)   OpenSSH升級

使用命令“telnet IP”遠程連接服務器,關閉SSH服務以便升級。

# 停止sshd服務

# service sshd stop

# apt安裝libpam0g-dev

# apt-get install libpam0g-dev # 缺少libpam0g-dev會報錯

# 刪除原ssh中的相關配置文件

# rm -rf /etc/ssh /usr/bin/scp /usr/bin/sftp /usr/bin/ssh* /usr/sbin/sshd

# rm -rf /lib/x86_64-linux-gnu/libssl.so.1.0.0

# rm -rf /lib/x86_64-linux-gnu/libcrypto.so.1.0.0

# cp /usr/local/ssl/lib/libssl.so.1.0.0 /lib/x86_64-linux-gnu/

# cp /usr/local/ssl/lib/libcrypto.so.1.0.0 /lib/x86_64-linux-gnu/

# 解壓新版openssh並編譯安裝

# tar zxvf openssh-7.4p1.tar.gz

# cd openssh-7.4p1

# ./configure --prefix=/usr/local/ssh --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-ssl-dir=/usr/local/ssl  --mandir=/usr/share/man --with-zlib=/usr/local/lib --with-privsep-path=/var/empty --with-privsep-user=sshd --with-ssl-engine

# make && make install

 

 

 如果遇到這個錯誤,說明pam沒裝,需要裝下:apt-get install pam

 

# 創建新版ssh服務的相關軟鏈接

# ln -s /usr/local/ssh/bin/ssh /usr/bin/ssh

# ln -s /usr/local/ssh/bin/scp /usr/bin/scp

# ln -s /usr/local/ssh/bin/sftp /usr/bin/sftp

# ln -s /usr/local/ssh/bin/ssh-add /usr/bin/ssh-add

# ln -s /usr/local/ssh/bin/ssh-agent /usr/bin/ssh-agent

# ln -s /usr/local/ssh/bin/ssh-keygen /usr/bin/ssh-keygen

# ln -s /usr/local/ssh/bin/ssh-keyscan /usr/bin/ssh-keyscan

# ln -s /usr/local/ssh/sbin/sshd /usr/sbin/sshd

#配置允許root遠程使用ssh登錄(建議使用普通賬號作為遠程運維登錄使用,不要開啟root遠程登錄

# vi /etc/ssh/sshd_config

去除“#PermitRootLogin prohibit-password”中注釋,並修改“prohibit-password”為“yes”,最后保存退出;

# service sshd start

如果出錯按照提示操作

 

# ssh -V


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM