CentOS 7 SSH 升级修复漏洞操作文档

CentOS 7 最新版(CentOS 7.9 2009) 默认 OpenSSH 版本为 7.4p1,OpenSSH 9.3p2 之前版本存在安全漏洞,需升级 OpenSSH 到安全版本避免漏洞。

本文将介绍 OpenSSH 升级到 9.7p1 版本,依赖的 OpenSSL 版本升级到 1.1.1 版本。

1 下载 OpenSSH 9.7p1、OpenSSL 1.1.1安装包;

网盘地址:https://www.123pan.com/s/hXKSVv-l9YN3.html

2 操作注意

操作前在 SSH 客户端打开两个登录窗口, top 挂前端,以免 SSH 卸载后误操作关闭操作窗口,导致无法登录。

3 升级 OpenSSL

bash 复制代码
yum install -y gcc gcc-c++ glibc make autoconf openssl openssl-devel pcre-devel pam-devel wget vim unzip lrzsz
yum install -y pam* zlib*
 
setenforce 0
 
#创建目录
mkdir -p /app/src
 
#编译安装OpenSSL
cd /app/src
#上传openssl源码包
rz
tar xf openssl-1.1.1k.tar.gz
cd openssl-1.1.1k/
mkdir /usr/local/openssl
./config --prefix=/usr/local/openssl
make && make install
 
#配置OpenSSL
mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl /usr/include/openssl.bak
 
unlink /usr/lib64/libssl.so
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl
ln -s /usr/local/openssl/lib/libssl.so /usr/lib64/libssl.so
echo '/usr/local/openssl/lib' >> /etc/ld.so.conf
 
ldconfig -v
ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
 
#查看 openssl 版本
openssl version
ping www.baidu.com

4 升级 OpenSSH

bash 复制代码
#安装依赖
yum install -y wget gcc pam-devel libselinux-devel zlib-devel openssl-devel
yum -y install perl
 
cd /app/src
cp /etc/ssh/sshd_config sshd_config.backup
cp /etc/pam.d/sshd sshd.backup
rpm -e --nodeps `rpm -qa | grep openssh`
 
#安装 openssh
tar -zxvf openssh-9.7p1.tar.gz
cd openssh-9.7p1
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-zlib --with-tcp-wrappers --with-ssl-dir=/usr/local/openssl --without-hardening
make && make install
 
chmod 600 /etc/ssh/ssh_host_rsa_key /etc/ssh/ssh_host_ecdsa_key /etc/ssh/ssh_host_ed25519_key
 
cp -a contrib/redhat/sshd.init /etc/init.d/sshd
chmod u+x /etc/init.d/sshd
 
#添加自启服务ssh到开机启动项:
chkconfig --add sshd
chkconfig sshd on
#重启服务:
systemctl restart sshd
#验证结果:
ssh -V
 
vi /etc/ssh/sshd_config
PermitRootLogin yes #这个是允许root登陆
 
systemctl restart sshd
相关推荐
C++忠实粉丝29 分钟前
Linux环境基础开发工具使用(2)
linux·运维·服务器
康熙38bdc1 小时前
Linux 环境变量
linux·运维·服务器
hakesashou2 小时前
python如何比较字符串
linux·开发语言·python
Ljubim.te2 小时前
Linux基于CentOS学习【进程状态】【进程优先级】【调度与切换】【进程挂起】【进程饥饿】
linux·学习·centos
cooldream20092 小时前
Linux性能调优技巧
linux
QMCY_jason3 小时前
Ubuntu 安装RUST
linux·ubuntu·rust
慕雪华年3 小时前
【WSL】wsl中ubuntu无法通过useradd添加用户
linux·ubuntu·elasticsearch
苦逼IT运维3 小时前
YUM 源与 APT 源的详解及使用指南
linux·运维·ubuntu·centos·devops
仍有未知等待探索3 小时前
Linux 传输层UDP
linux·运维·udp
zeruns8024 小时前
如何搭建自己的域名邮箱服务器?Poste.io邮箱服务器搭建教程,Linux+Docker搭建邮件服务器的教程
linux·运维·服务器·docker·网站