上篇分享了RedHat 6.5编译安装升级OpenSSL、OpenSSH及NTP的博文,这篇来测试一下RedHat 7.2编译安装升级OpenSSL、OpenSSH及NTP,主要过程基本一致,不过openssh略有不同。上篇博文请见:RedHat 6编译升级OpenSSL、OpenSSH及NTP

一、系统环境

操作系统:RedHat 7.2

升级前软件版本:

OpenSSL 1.0.1e-fips、OpenSSH_6.6.1p1ntpd 4.2.6p5

源码包:

openssl-1.0.2l.tar.gz、openssh-7.5p1.tar.gz、ntp-4.2.8p10.tar.gz


二、安装依赖包

1、yum -y install gcc libcap libcap-devel glibc-devel pam-devel  krb5-devel  krb5-libs xinetd telnet-server


三、启动telnet服务备用

如果是远程升级,为了防止升级失败无法远程,建议先启动telnet以备用。

1、systemctl start xinetd

2、systemctl start telnet.socket

3、mv /etc/securetty /etc/securettybak


四、编译安装zlib

Redhat 6.5可以不做这一步,但RedHat 7.2如果没先编译安装最新版的zlib会导致openssh编译时失败报missing zilb的错.

1、tar zxf /tmp/zlib-1.2.11.tar.gz -C /tmp

2、cd /tmp/zlib-1.2.11

3、./configure --shared

4、make

5、make install


五、编译安装openssl

此处编译安装openssl的步骤与redhat 6.5上的基本一致

1、tar zxf /tmp/openssl-1.0.2l.tar.gz -C /tmp

2、cd /tmp/openssl-1.0.2l

3、./config --prefix=/usr --shared

4、make

5、make install


六、修改ssh私钥权限为0600

RedHat 6.5上的不用做这一步,但RedHat 7.2如果没做这一步会导致升级失败并报错,日志会提示默认权限0640太大,因此需先手动改为0600

1、chmod 0600 /etc/ssh/ssh_host_ed25519_key

2、chmod 0600 /etc/ssh/ssh_host_ecdsa_key

3、chmod 0600 /etc/ssh/ssh_host_rsa_key


七、解压openssh并复制sshd.init和sshd.pam文件

RedHat 6.5上的不用做这一步,但RedHat 7.2如果没做这一步,会导致升级完成后可以ssh连接但是无法用密码登录

1、tar zxf /tmp/openssh-7.5p1.tar.gz -C /tmp

2、cd /tmp/openssh-7.5p1/contrib/redhat

3、cp sshd.init /etc/init.d/sshd

4、cp sshd.pam /etc/pam.d/sshd.pam


八、编译安装openssh

此处编译安装openssh的步骤与redhat 6.5的基本一致

1、cd /tmp/openssh-7.5p1

2、./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib --with-ssl-dir=/usr --with-md5-passwords --mandir=/usr/share/man --with-kerberos5=/usr/lib64/libkrb5.so

3、make

4、make install

5、echo "PermitRootLogin yes">>/etc/ssh/sshd_config

6、echo "Ciphers aes128-cbc,aes192-cbc,aes256-cbc,aes128-ctr,aes192-ctr,aes256-ctr,3des-cbc,arcfour128,arcfour256,arcfour,blowfish-cbc,cast128-cbc">>/etc/ssh/sshd_config

7、systemctl restart sshd


九、编译安装ntp

此处编译安装ntp的步骤与redhat 6.5上的基本一致

1、tar zxf /tmp/ntp-4.2.8p10.tar.gz -C /tmp

2、/tmp/ntp-4.2.8p10/configure --prefix=/usr --bindir=/usr/sbin --sysconfdir=/etc --enable-linuxcaps --with-lineeditlibs=readline  --enable-all-clocks --enable-parse-clocks --enable-clockctl

4、make

5、make install

6、chkconfig ntpd on


检查与测试

1、使用ssh -V、ntpd --version检查版本,已是最新版

wKiom1l4lwDBGG0UAABgG2cP2VU741.png

2、客户端使用ssh远程登录测试,能正常连接登录


十、停用telnet

1、systemctl stop telnet.socket

2、systemctl stop xinetd

3、mv /etc/securettybak /etc/securetty

至此,升级完成。本文出自江健龙的技术博客http://jiangjianlong.blog.51cto.com/3735273/1951590