上篇分享了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.1p1、ntpd 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检查版本,已是最新版
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