Redhat Linux x64 升级SSH到OpenSSH_7.4p1

Redhat Linux x64 升级 SSH OpenSSH_7.4p1 说明⽂档
步骤
1 、准备⼯作
1.1 、下载相关软件包
需求软件包: openssh-7.4p1.tar.gz openssl-1.0.2k.tar.gz
http://www.openssl.org/
http://www.openssh.org/
1.2 、查看系统当前软件版本
# rpm -q zlib
#
openssl version
#
ssh -V
2 、正式升级
2.1 、升级 OpenSSL
官⽅升级⽂档: http://www.linuxfromscratch.org/blfs/view/cvs/postlfs/openssl.html
A 、备份当前 openssl
# find / -name openssl
/usr/lib64/openssl
/usr/bin/openssl
/etc/pki/ca-trust/extracted/openssl
#
mv /usr/lib64/openssl /usr/lib64/openssl.old
#
mv /usr/bin/openssl /usr/bin/openssl.old
#
mv /etc/pki/ca-trust/extracted/openssl /etc/pki/ca-trust/extracted/openssl.old
如下两个库⽂件必须先备份,因系统内部分⼯具(如 yum wget 等)依赖此库,⽽新版 OpenSSL 不包含这两
个库
# cp /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.10.old
# cp /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.10.old
B 、卸载当前 openssl
# rpm -qa | grep openssl
openssl-
1.0 .1e- 42 .el6.x86_64
#
rpm -e --nodeps openssl- 1.0 .1e- 42 .el6.x86_64
#
rpm -qa | grep openssl
或者直接执⾏此命令: rpm -qa |grep openssl|xargs -i rpm -e --nodeps {}
C 、解压 openssl_1.0.2k 源码并编译安装
# tar -zxvf openssl- 1.0 .2k. tar .gz
#
cd openssl- 1.0 .2k
# ./config --prefix=/usr --openssldir=/etc/ssl --shared zlib #
必须加上 --shared
否则编译时会找不到新安装的
openssl 的库⽽报错
# make
# make test # 必须执⾏这⼀步结果为 pass 才能继续,否则即使安装完
成,
ssh 也⽆法使⽤
# make install
# openssl version -a # 查看是否升级成功
D 、恢复共享库
由于 OpenSSL_1.0.2k 不提供 libcrypto.so.10 libssl.so.10 这两个库,⽽ yum wget 等⼯具⼜依赖此库,因
此需要将先前备份的这两个库进⾏恢复,其他的可视情况考虑是否恢复。
# mv /usr/lib64/libcrypto.so. 10 .old /usr/lib64/libcrypto.so. 10
# mv /usr/lib64/libssl.so. 10 .old /usr/lib64/libssl.so. 10
2.2 、升级 OpenSSH
官⽅升级⽂档: http://www.linuxfromscratch.org/blfs/view/svn/postlfs/openssh.html
A 、备份当前 openssh
# mv /etc/ ssh /etc/ ssh .old
B 、卸载当前 openssh
# rpm -qa | grep openssh
openssh-clients-
5 .3p1- 111 .el6.x86_64
openssh-server-
5 .3p1- 111 .el6.x86_64
openssh-
5 .3p1- 111 .el6.x86_64
openssh-askpass-
5 .3p1- 111 .el6.x86_64
#
rpm -e --nodeps openssh- 5 .3p1- 111 .el6.x86_64
#
rpm -e --nodeps openssh-server- 5 .3p1- 111 .el6.x86_64
#
rpm -e --nodeps openssh-clients- 5 .3p1- 111 .el6.x86_64
# rpm -e --nodeps openssh-askpass- 5 .3p1- 111 .el6.x86_64
#
rpm -qa | grep openssh
或者直接执⾏此命令: rpm -qa |grep openssh|xargs -i rpm -e --nodeps {}

Copenssh安装前环境配置

建立SSH用户目录

#cat /etc/passwd|grep ssh

# install -v -m700 -d /var/lib/sshd
#
chown -v root:sys /var/lib/sshd
#
groupadd -g 50 sshd
#
useradd -c 'sshd PrivSep' -d /var/lib/sshd -g sshd -s /bin/ false -u 50 sshd
D 、解压 openssh_7.4p1 源码并编译安装
# tar -zxvf openssh- 7 .4p1. tar .gz
#
cd openssh- 7 .4p1
# ./configure --prefix=/usr --sysconfdir=/etc/
ssh --with-md5-passwords
--with-pam --with-zlib --with-openssl-includes=/usr --with-privsep-path=/var
/lib/sshd
#
make
# make install
E openssh 安装后环境配置
# openssh 编译⽬录执⾏如下命令
# install -v -m755 contrib/ ssh -copy- id /usr/bin
#
install -v -m644 contrib/ ssh -copy- id . 1 /usr/share/ man /man1
#
install -v -m755 -d /usr/share/doc/openssh- 7 .4p1
#
install -v -m644 INSTALL LICENCE OVERVIEW README* /usr/share
/doc/openssh-
7 .4p1
#
ssh -V # 验证是否升级成功
F 、启⽤ OpenSSH 服务
# openssh 编译⽬录执⾏如下⽬录
# echo 'X11Forwarding yes' >> /etc/ ssh /sshd_config
#
echo "PermitRootLogin yes" >> /etc/ ssh /sshd_config # 允许 root ⽤户通过 ssh 登录
# cp -p contrib/redhat/sshd.init /etc/init.d/sshd
#
chmod +x /etc/init.d/sshd
#
chkconfig --add sshd
#
chkconfig sshd on
#
chkconfig --list sshd
#
service sshd restart
注意:如果升级操作⼀直是在 ssh 远程会话中进⾏的,上述 sshd 服务重启命令可能导致会话断开并⽆法使⽤ ssh
再⾏登⼊(即 ssh 未能成功重启),此时需要通过 telnet 登⼊再执⾏ sshd 服务重启命令。
3 、善后⼯作
新开启远程终端以 ssh [ip] 登录系统,确认⼀切正常升级成功后,只需关闭 telnet 服务以保证系统安全性即可。
# mv /etc/securetty.old /etc/securetty
#
chkconfig xinetd off
#
service xinetd stop
如有必要,可重新开启防⽕墙
# service iptables start
# chkconfig iptables on
如需还原之前的 ssh 配置信息,可直接删除升级后的配置信息,恢复备份。
# rm -rf /etc/ ssh
# mv /etc/ ssh .old /etc/ ssh
结束
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值