升級openssh
由於升級OpenSSH涉及到安全性問題,為保險起見,在升級前最好安裝telnet服務作為備用方案,然後在升級成功後再停止telnet即可。
一、OpenSSH升級相關源碼包下載地址
zlib http://www.zlib.net/zlib-1.2.11.tar.gz zlib其他版本下載地址 http://www.zlib.net/fossils/ openssl-fips http://www.openssl.org/source/openssl-fips-2.0.16.tar.gz OpenSSL http://www.openssl.org/source/openssl-1.0.2m.tar.gz OpenSSH https://fastly.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.6p1.tar.gz
安裝依賴包
yum -y install gcc pam-devel zlib-devel openssl-devel
註:官網說明openssh7.6p1依賴的openssl的版本為>1.0.1e 並且 < 1.1.0
二、編譯相關源碼包
yum install -y zlib(若系統已安裝可不用執行此步驟),這裏我是采用的編譯安裝zlib
1、安裝zlib
解壓
tar-xvf zlib-1.2.11.tar.gz cdzlib-1.2.11 ./configure make makeinstall
查看
ll/usr/local/lib
2、安裝openssl-fips
此為FIPS140-2 support module for openssl, 具體說明參見http://www.openssl.org/docs/fips
[root@baby openssl-fips-2.0.16]# tar zxpf openssl-fips-2.0.16.tar.gz # cd openssl-fips-2.0.16 # ./config # make && make install
生成路徑在:
/usr/local/ssl/fips-2.0/
3、安裝openssl
# tar -xf openssl-1.0.2m.tar.gz # cd openssl-1.0.2m [root@localhost openssl-1.0.2m]# ./config --prefix=/usr--openssldir=/usr/ shared zlib 需帶上–shared參數 否則會出現頭文件和庫文件不匹配 #make
由於我使安裝在原路徑下,所以我將舊的配置文件挪了一下位置
mv /usr/bin/openssl /usr/bin/openssl.oldbak mv /usr/include/openssl /usr/include/openssl.oldbak [root@baby openssl-1.1.0g]#make install
查看是否升級成功
# openssl version -a | openssl version
至此已全部完成OpenSSL的升級工作
4、安裝openssh
wget https://fastly.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.6p1.tar.gz [root@localhost~]# cd openssh-7.6p1 [[email protected]]# ./configure --prefix=/usr --sysconfdir=/etc/ssh 完成後執行make: [root@bogon openssh-7.6p1]# make
make完成後先不要make install,備份舊的ssh並易名
[[email protected]]# mv /etc/ssh/ /etc/sshbak
或用下面,推薦用上面備份
make完成後先不要make install,先卸載舊版的openssh
[root@bogon openssh-7.6p1]# rpm -e --nodeps `rpm -qa | grep openssh`
完成後執行make install:
[root@bogon openssh-7.6p1]# make install
查看下安裝結果:
[root@bogon openssh-7.6p1]# ssh -V
至此編譯全部安裝完成
三、ssh相關配置
1、配置sshd服務:
復制啟動文件到/etc/init.d/下並命名為sshd(原先存在舊啟動腳本備份易名):
[root@bogon openssh-7.6p1]# cp contrib/redhat/sshd.init /etc/init.d/sshd
加入開機啟動:
[root@bogon openssh-7.6p1]# chkconfig --add sshd
2、配置允許root使用ssh:
openssh7.6後默認root用戶是不能用ssh遠程登錄的(但普通用戶是可以ssh遠程登錄的),需要修改配置文件:
[root@bogon openssh-7.6p1]# vim /etc/ssh/sshd_config 找到#PermitRootLoginprohibit-password項,去掉註釋並把prohibit-password改為yes PermitRootLogin yes 配置允許root用戶遠程登錄
這一操作很重要!很重要!很重要!重要的事情說三遍,因為openssh安裝好默認是不執行sshd_config文件的,所以即使在sshd_config中配置允許root用戶遠程登錄,但是不加上這句命令,還是不會生效!
vim /etc/init.d/sshd 在 ‘$SSHD $OPTIONS &&success || failure’這一行上面加上一行‘OPTIONS="-f /etc/ssh /sshd_config"’
保存退出
重啟ssh服務:
[root@bogon openssh-7.6p1]# service sshd restart
至此升級/安裝完成。
AllowUsers tom
本文出自 “運維筆錄 美玲” 博客,請務必保留此出處http://meiling.blog.51cto.com/6220221/1980733
升級openssh