升級openssh

目錄

方法一:直接源碼編譯升級

方法二:打成rpm包,直接升級。


       升級openssh,原來版本7.4,升級到8.0,操作系統時centos7.6. 提供兩種升級方法,一種是編譯源碼,另外一種是直接打rpm。

方法一:直接源碼編譯升級

1、刪除老的版本:

#rpm -qa |grep openssh|xargs -i rpm -e --nodeps {}

2、編譯

 #yum install -y gcc openssl-devel pam-devel rpm-build

  #tar xzvf openssh-8.0p1.tar.gz

#cd  openssh-8.0p1

#./configure --prefix=/usr  --sysconfdir=/etc/ssh --with-md5-passwords --with-privsep-path=/var/lib/sshd

#make && make install

3、查看版本:ssh -V,已經更新到8.0。

 

3、問題一make install時提示:Permissions 0640 for '/etc/ssh/ssh_host_ecdsa_key' are too open。

解決:權限給的太大了,改爲chmod -R 400 /etc/ssh/*,就沒有這個提示了。

方法二:打成rpm包,直接升級。

#yum install rpm-build zlib-devel openssl-devel gcc perl-devel pam-devel unzip -y

#mkdir -p /root/rpmbuild/{SOURCES,SPECS}

#cd /root/rpmbuild/SOURCES

#wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.0p1.tar.gz

#wget https://src.fedoraproject.org/repo/pkgs/openssh/x11-ssh-askpass-1.2.4.1.tar.gz/8f2e41f3f7eaa8543a2440454637f3c3/x11-ssh-askpass-1.2.4.1.tar.gz

#tar zxvf openssh-8.0p1.tar.gz

#mv openssh-8.0p1/contrib/redhat/openssh.spec ../SPECS/

#chown sshd:sshd /root/rpmbuild/SPECS/openssh.spec

#cp /root/rpmbuild/SPECS/openssh.spec  /root/rpmbuild/SPECS/openssh.spec_def

#sed -i -e "s/%define no_gnome_askpass 0/%define no_gnome_askpass 1/g" /root/rpmbuild/SPECS/openssh.spec

#sed -i -e "s/%define no_x11_askpass 0/%define no_x11_askpass 1/g" /root/rpmbuild/SPECS/openssh.spec

#cd /root/rpmbuild/SPECS/

修改openssh.spec 註釋掉 BuildRequires: openssl-devel < 1.1 這一行。

#rpmbuild -ba openssh.spec

修改配置文件

#  chmod 400 /etc/ssh/ssh_host*  (默認是640權限,權限過大,啓動服務會報錯誤。)

#設置不允許root登錄,就增加下面一句話到配置文件,否則不需要。

#  echo "PermitRootLogin no" >> /etc/ssh/sshd_config

#systemctl restart sshd

打好的rpm放在 /root/rpmbuild/RPMS下面。

更新openssh

rpm -Uvh /root/rpmbuild/RPMS/*.rpm

 

參考資料:

1.  https://blog.csdn.net/yujia_666/article/details/90439598

2.  https://www.cnblogs.com/fsckzy/p/10834550.html

 

 

   

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