版本升级_centos7 openssh 版本升级

本文介绍了在CentOS7系统上如何安全地升级OpenSSH,以防升级过程中出现无法登录的情况。首先,通过启用telnet服务作为临时替代方案,然后详细展示了升级OpenSSH的步骤,包括安装依赖、备份原文件、编译和安装新版本,以及修改配置文件。最后,测试了升级后的OpenSSH和telnet服务。
摘要由CSDN通过智能技术生成

1. 准备备用远程登录

用户反馈 openssh 存在漏洞,需要升级,升级过程中原来的 ssh 将无法使用,如果是在编译过程中的话,断开会将无法再访问服务器,需要有预案可以登录,防止出现问题。我们可以使用telnet-server来提供服务。安装:

yum -y install xinetd telnet-server

telnet-server是由xinetd管理,需要安装xinetd,这里启动的是telnet.socket而不是telnet.service。默认情况下,PAM 模块限制root不能telnet到 telnet-server,如果telnet 时报 Login incorrect 时,可以把下面的文件进行注释掉;

104e8d0babdf785f0bc318166bc8beb3.png

启动服务

systemctl enable xinetd.server
systemctl enable telnet.socket
systemctl start telnet.socket
systemctl start xinetd.service

测试

37a7c2a7612d6da0c257a429a9bdad9f.png

2. 升级 openssh 脚本(测试可用)

#!/bin/bash
cd /opt
# 更新 openssh
yum update openssh -y
# 安装依赖
yum install -y gcc gcc-c++ glibc make autoconf openssl openssl-devel pcre-devel pam-devel
yum install -y pam* zlib*
# 下载 openssh、openssl 源码
wget -c https://openbsd.hk/pub/OpenBSD/OpenSSH/portable/openssh-8.1p1.tar.gz
wget -c https://ftp.openssl.org/source/openssl-1.0.2r.tar.gz
# 解压操作
tar zxf openssh-8.1p1.tar.gz
tar zxf openssl-1.0.2r.tar.gz
# 原文件备份
mv /usr/bin/openssl /usr/bin/openssl_bak
mv /usr/include/openssl /usr/include/openssl_bak
# 安装 openssl
cd /opt/openssl-1.0.2r
./config shared && make && make install
echo $?
# 链接文件
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
/sbin/ldconfig
openssl version
# 编译安装 openssh
cd /opt/openssh-8.1p1
chown -R root.root /opt/openssh-8.1p1
cp -r /etc/ssh /tmp/
rm -rf /etc/ssh
./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-openssl-includes=/usr/local/ssl/include --with-ssl-dir=/usr/local/ssl --with-zlib --with-md5-passwords --with-pam && make && make install
echo $?
# 修改配置文件
cat > /etc/ssh/sshd_config <PermitRootLogin yes
AuthorizedKeysFile .ssh/authorized_keys
UseDNS no
Subsystem sftp /usr/libexec/sftp-server
EOF
grep "^PermitRootLogin" /etc/ssh/sshd_config
cat /tmp/ssh/sshd_config |grep -v '#' |grep -v '^$'
cp -a contrib/redhat/sshd.init /etc/init.d/sshd
cp -a contrib/redhat/sshd.pam /etc/pam.d/sshd.pam
chmod +x /etc/init.d/sshd
chkconfig --add sshd
systemctl enable sshd
mv /usr/lib/systemd/system/sshd.service /opt/
mv /usr/lib/systemd/system/sshd.socket /opt/
chkconfig sshd on
# 启动
service sshd restart
# 测试
openssl version
ssh -V

3. 测试

dbf3ffbf813597ee1d90c2e21fd0932c.png

您的关注是我写作的动力

748c3310d9c864c43f1a844cd325bb27.png

文章推荐

讲讲 tcp_tw_recycle,tcp_tw_reuse

通俗易懂理解Kubernetes核心组件及原理

基础小知识

hping 命令使用小结

Linux 网卡 bonding 小知识

centos7 安装 bcc-tools 软件包

Centos7.6内核升级

CentOS 7 下 yum 安装 MySQL 5.7 最简教程

Centos 7 安装 Redis 5.0.8 单实例

专辑分享

kubeadm使用外部etcd部署kubernetes v1.17.3 高可用集群

第一篇  使用 Prometheus 监控 Kubernetes 集群理论篇

Ceph 基础篇 - 存储基础及架构介绍

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值