Centos7升級openssh到最高版本

注:由於Centos7自帶的openssh版本過低且存在漏洞,所以爲了安全考慮我們需要升級openssh到最高版本

1.先通過yum更新,會將openssh自動更新到最高版本

yum -y update openssh

如果報錯 /var/run/yum.pid已被鎖定

則執行命令刪除:

rm -rf /var/run/yum.pid

注:由於yum中的openssh未必已經同步了openssh中的最高版本,如果不是真正的最高版本,我們還要通過編譯安裝

2.利用yum升級並不能將ssh徹底更新到最新版本,然後還得需要編譯安裝

安裝一些需要的環境:

yum -y install wget tar gcc make

3.上傳 zlib-1.2.11.tar.gz,openssl-1.1.1d .tar.gz,openssh-8.2p1.tar.gz

從官網下載以上壓縮包並上傳到服務器並解壓

tar --no-same-owner -zxf zlib-1.2.11.tar.gz
tar --no-same-owner -zxf openssl-1.1.1d_.tar.gz
tar --no-same-owner -zxf openssh-8.2p1.tar.gz

4.安裝zlib

cd zlib-1.2.11
./configure --prefix=/usr/local/zlib
make && make install

5.安裝openssl

cd openssl-1.1.1d
./config --prefix=/usr/local/ssl -d shared
make && make install
echo '/usr/local/ssl/lib' >> /etc/ld.so.conf
ldconfig -v

注:執行ldconfig -v有些報錯,直接忽略即可

6.安裝openssh-8.2p1

cd openssh-8.2p1
./configure --prefix=/usr/local/openssh --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/ssl
make && make install

7.卸載由yum安裝的openssh

yum remove openssh

8.修改配置

啓動前要將新生成的sshd_config修改以下幾個地方

vim /usr/local/openssh/etc/sshd_config
PermitRootLogin yes
PubkeyAuthentication yes
PasswordAuthentication yes

複製文件到相應系統文件夾

cp  /mnt/update/openssh-8.2p1/contrib/redhat/sshd.init /etc/init.d/sshd
chkconfig --add sshd
cp /usr/local/openssh/etc/sshd_config /etc/ssh/sshd_config
cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd
cp /usr/local/openssh/bin/ssh /usr/bin/ssh
cp /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
cp /usr/local/openssh/etc/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub

9.啓動

service sshd restart

 

 

其他相關命令:

1.重啓命令

systemctl start sshd.service

systemctl restart sshd.service

2.查看狀態

systemctl status sshd.service

3.啓動服務

systemctl start sshd.service

4.開機自啓

systemctl enable sshd.service

5.查看消息

sshd -t

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章