Centos6.8升级openssh8.2p1、openssl1.0.1u

看下当前版本:ssh -V,系统自带的应该是5.3p1,openssl版本1.0.1e-fips

openssh会使用到openssl,因此先升级openssl,版本1.0.1u。

从官网下载1.0.1u版https://www.openssl.org/source/

使用tar解包

tar xfz openssl-1.0.1u.tar.gz

依次执行如下:

cd openssl-1.0.1u

./config shared zlib

make && make install

以上执行完毕,开始修改配置。

#重命名原来的openssl命令
mv /usr/bin/openssl  /usr/bin/openssl.old
#重命名原来的openssl目录
mv /usr/include/openssl/ /usr/include/openssl.old
#将安装好的openssl 的openssl命令软连到/usr/bin/openssl
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
#将安装好的openssl 的openssl目录软连到/usr/include/openssl
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
#修改系统自带的openssl库文件,如/usr/local/lib64/libssl.so(根据机器环境而定) 软链到升级后的libssl.so
ln -s /usr/local/ssl/lib/libssl.so /usr/local/lib64/libssl.so

注意:这里有可能出现一个问题,就是安装完毕之后发现 /usr/local/ssl/lib/下没有so文件。我的做法是用一台纯净的CentOS虚拟机编译升级openssl,然后将so文件复制过来。
#在/etc/ld.so.conf文件中写入openssl库文件的搜索路径
echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
#使修改后的/etc/ld.so.conf生效 
ldconfig -v

测试

openssl version 

下一步就是升级openssh了
备份配置文件:
/etc/sshd/下
/etc/pam.d下

在线升级过程:
yum install -y gcc openssl-devel pam-devel rpm-build pam-devel
tar zxvf openssh-8.2p1.tar.gz && cd openssh-8.2p1
./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl --with-pam --with-zlib --without-openssl-header-check

注意:这里特别提醒,要指定ssl路径。不指定,openssl将会使用旧版的openssl
检查是否执行成功
echo $? 返回0表示成功执行成功,返回1或其他数字表示执行失败
make && make install
需要关闭两个选项(已经淘汰):GSSAPIAuthentication,GSSAPICleanupCredentials
service sshd restart
service sshd status
再看版本:ssh -V

 

你可能感兴趣的:(其他)