openssh升级

openssh(Centos)

一、升级说明

1、升级OpenSSH后,原有公钥失效,信任关系需要重新配置

2、升级过程需要停止sshd服务,会导致ssh和sftp无法使用

3、升级需要关闭防火墙服务

4、升级需要关闭selinux服务

5、升级前需要开启telnet,防止升级失败,系统无法登录,对应的防火墙需要开启23端口,安装需要telnet相关依赖包

6、升级过程中需要刷新lib库:ldconfig -v

7、升级顺序:顺序是zlib库-> openssl -> openssh

8、升级需要gcc、make、perl、zlib、zlib-devel、pam、pam-devel等依赖包

二、升级准备

下载下面的安装包上传到系统

openssh.zip

三、升级操作

1、请务必开启telnet,以免升级过程中断导致无法连接系统

2、安装启动telnet服务端,以便升级失败时能通过telnet协议登录系统

3、为避免防火墙和selinux造成影响,在升级过程中,建议将其关闭

4、升级前一定要和研发确认好是否有其它程序使用系统的openssl,比如说apache的mod_ssl模块,如果apache用的是现在的老版本的openssl,那么在你升级openssl之前你应该先将apache进行重新编译,使用新版本的openssl重新编译,替换程序

四、安装

gcc和gcc-c++(根据linux版本选择对应的gcc安装)
cd gcc_gcc-c++
rpm -Uvh --nodeps --force *.rpm
cd ..
gcc --version
zlib
find / -name zlib
tar -zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure --prefix=/usr/local/zlib && make install
ldconfig -v
cd ..
cat /usr/local/zlib/lib/pkgconfig/zlib.pc
perl
perl -v
tar -zxvf perl-5.28.0.tar.gz
cd perl-5.28.0
./Configure -de && make && make install
cd ..
perl -v
openssl
openssl version
//安装时确保只有这三个,有多余的文件mv备份(/etc/pki/ca-trust/extracted/openssl、/usr/bin/openssl、/usr/lib64/openssl)
find / -name openssl
rpm -qa | grep openssl
tar -zxvf openssl-1.1.1l.tar.gz
cd openssl-1.1.1l
./config shared zlib && make && make install
mv /usr/bin/openssl /usr/bin/openssl_bak
mv /usr/include/openssl /usr/include/openssl_bak
ln -s /usr/local/bin/openssl /usr/bin/openssl
ln -s /usr/local/include/openssl /usr/include/openssl
ldconfig -v
cd ..
openssl version
ssh -V
//第一次安装后会有以下文件(/etc/pki/ca-trust/extracted/openssl、/usr/bin/openssl、/usr/lib64/openssl、/usr/include/openssl、/usr/local/bin/openssl、/usr/local/include/openssl、/usr/local/share/doc/openssl)
find / -name openssl
openssh
rpm -qa | grep openssh
rpm -e `rpm -qa | grep openssh` --nodeps
rpm -qa | grep openssh
cp -rf /etc/ssh /etc/ssh_bak
tar -zxvf openssh-9.0p1.tar.gz
cd openssh-9.0p1
//修改版本号
vi version.h
#define SSH_VERSION     "OpenSSH_welcome"
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-zlib --without-openssl-header-check --with-ssl-dir=/usr/local --with-privsep-path=/var/lib/sshd
make && make install
echo "PasswordAuthentication yes" >> /etc/ssh/sshd_config
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
cp -p contrib/redhat/sshd.init /etc/init.d/sshd
chmod +x /etc/init.d/sshd
chmod 600 /etc/ssh/ssh_host_rsa_key
chmod 600 /etc/ssh/ssh_host_ecdsa_key
chmod 600 /etc/ssh/ssh_host_ed25519_key
chkconfig --add sshd
chkconfig sshd on
systemctl restart sshd	或	service sshd restart
systemctl status sshd	或	service sshd status
ssh -V
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

衡超越爱学习~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值