升级openssl和openssh版本
一、安装telnet-server服务(建议安装)
1、 查看系统是否已安装telnet-server,linux系统上默认已经安装telnet-client(或telnet),而telnet-server需要手动安装。
rpm -qa | grep telnet
telnet-0.17-39.el5
telnet-server-0.17-39.el5
2、 若没有安装telnet-server,需安装telnet-server
yum install telnet-server
3、 编辑/etc/xinetd.d/telnet, 将其中的 disable = yes 的yes改为no.
4、 激活xinetd服务
service xinetd restart
或:
/etc/rc.d/init.d/xinetd restart
二、下载系统升级所需包
1、下载telnet-server包(建议使用yum安装)
wget http://202.107.70.26/cdkey/telnet-server-1.2-134.22.x86_64.rpm
2、下载openssh包
wget http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.5p1.tar.gz
3、下载zlib包
wget https://sourceforge.net/projects/libpng/files/zlib/1.2.8/zlib-1.2.8.tar.gz --no-check-certificate
wget http://202.107.70.26/cdkey/zlib-1.2.8.tar.gz
4、下载openssl包(建议下载高版本)
wget https://www.openssl.org/source/openssl-1.1.0h.tar.gz --no-check-certificate
wget http://www.openssl.org/source/openssl-1.0.1h.tar.gz
wget https://ftp.openssl.org/source/old/1.0.2/openssl-1.0.2h.tar.gz --no-check-certificate
wget https://www.openssl.org/source/openssl-1.0.2o.tar.gz --no-check-certificate
5、下载openssl-fips(建议下载高版本)
wget http://www.openssl.org/source/openssl-fips-2.0.5.tar.gz
wget https://www.openssl.org/source/openssl-fips-2.0.16.tar.gz --no-check-certificate
三、升级openssl版本
1、编译安装zlib-1.2.8.tar.gz
tar zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make && make install
2、编译安装openssl-fips-2.0.16.tar.gz
tar -zxvf openssl-fips-2.0.16.tar.gz
cd openssl-fips-2.0.16
./config
make && make install
3、编译安装openssl-1.0.2o.tar.gz
tar -zxvf openssl-1.0.2o.tar.gz
cd openssl-1.0.2o
./config fips --shared
make && make install
4、备份旧版openssl
mkdir -p /opt/openssl_old
mv /usr/bin/openssl /opt/openssl_old/
5、替换新版openssl
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
ll /usr/bin/openssl
lrwxrwxrwx 1 root root 26 Jun 30 20:55 /usr/bin/openssl -> /usr/local/ssl/bin/openssl
6、检查更新后的OpenSSL版本
注意:虽然升级了OpenSSL,可是使用rpm -q openssl查看版本是,还是旧版(因为rpm只能管理rpm包),所以查看openssl版本还是要以openssl version -a命令为准。
openssl version
openssl version -a
四、升级openssh版本
1、编译安装openssh-7.5p1.tar.gz
tar -zxvf openssh-7.5p1.tar.gz
cd openssh-7.5p1/
./configure
make
make install
2、拷贝sshd启动脚本,contrib/目录下对应系统的启动脚本
cd /usr/local/src/openssh-7.1p1/contrib/
ls
Makefile aix findssl.sh gnome-ssh-askpass2.c redhat ssh-copy-id sshd.pam.freebsd suse
README cygwin gnome-ssh-askpass1.c hpux solaris ssh-copy-id.1 sshd.pam.generic
cp suse/rc.sshd /etc/init.d/sshd
chmod 755 /etc/init.d/sshd
3、设置开机启动
chkconfig --add sshd
sshd 0:off 1:off 2:off 3:on 4:off 5:on 6:off
chkconfig sshd on
4、修改启动文件并重启
vi /etc/init.d/sshd ,修改
SSHD=/usr/sbin/sshd 为 SSHD=/usr/local/sbin/sshd
OpenSSH 7版本默认不允许root登陆,需要修改PermitRootLogin、PasswordAuthentication为允许
/etc/init.d/sshd restart
5、telnet 127.0.0.1 22验证 根据回显看是否成功
6、替换命令
mv /usr/bin/ssh /usr/bin/ssh_bak
mv /usr/local/bin/ssh /usr/bin/ssh
7、查看升级后的版本
ssh -V
五、关闭telnet-server服务
1、 编辑/etc/xinetd.d/telnet, 将其中的 disable = no 的no改为yes.
2、 激活xinetd服务
service xinetd stop
或:
/etc/rc.d/init.d/xinetd stop