CentOS7更新OpenSSH

简介: CentOS7更新OpenSSH

前言

整个过程不要断开ssh链接,如有必要可使用telnet远程操作。

系统版本:centos 7.9

OpenSSL版本:1.0.2k -> 1.1.1q

OpenSSH版本:7.4p1 -> 9.1p1

步骤

  1. 下载OpenSSL和openssh的源码包并解压。
  1. OpenSSL官网地址: https://www.openssl.org/
  2. OpenSSH官网地址:http://www.openssh.com/
wget https://www.openssl.org/source/openssl-1.1.1q.tar.gz
wget https://mirrors.aliyun.com/pub/OpenBSD/OpenSSH/portable/openssh-9.1p1.tar.gz
tar xf openssl-1.1.1q.tar.gz
tar xf openssh-9.1p1.tar.gz
  1. 编译安装OpenSSL
# 2.1 备份openssl
mv /usr/bin/openssl{,.bak}
mv /usr/include/openssl{,.bak}
# 2.2 进入源码包解压后的目录进行编译
cd openssl-1.1.1q
./config shared && make && make install
# 2.3 创建链接
ln -s /usr/local/bin/openssl /usr/bin/openssl
ln -s /usr/local/include/openssl/ /usr/include/openssl
# 2.4 添加库文件并加载
echo "/usr/local/lib64" >> /etc/ld.so.conf
/sbin/ldconfig
# 2.5 验证openssl的版本
openssl version
  1. 编译安装OpenSSH
# 3.1 备份ssh
mv /etc/ssh{,.bak}
# 3.2 进入源码包解压后的目录进行编译
cd openssh-9.1p1
# 3.3 创建安装目录
mkdir /usr/local/openssh
# 3.4 预编译
./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-openssl-includes=/usr/local/include --with-ssl-dir=/usr/local/lib64 --with-zlib --with-md5-passwords
# 3.5 编译。多核CPU可使用 -j 选项加速编译
make
# 3.6 安装
make install
# 3.7 添加ssh配置
echo "UseDNS no" >> /etc/ssh/sshd_config
echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config
echo 'PubkeyAuthentication yes' >> /etc/ssh/sshd_config
echo 'PasswordAuthentication yes' >> /etc/ssh/sshd_config
echo "X11Forwarding yes" >> /etc/ssh/sshd_config
echo "X11UseLocalhost no" >> /etc/ssh/sshd_config 
echo "XAuthLocation /usr/bin/xauth" >> /etc/ssh/sshd_config
# 3.8 替换二进制文件
mv /usr/sbin/sshd{,.bak}
mv /usr/bin/ssh{,.bak}
mv /usr/bin/ssh-keygen{,.bak}
# 3.9 创建链接
ln -s /usr/local/openssh/bin/ssh /usr/bin/ssh
ln -s /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
ln -s /usr/local/openssh/sbin/sshd /usr/sbin/sshd
# 3.10 验证版本
ssh -V
# 3.11 更新sshd的启动脚本
mv /usr/lib/systemd/system/sshd.service{,.bak}
## contrib在openssh源码包解压后的目录
cp -a ./contrib/redhat/sshd.init /etc/init.d/sshd
cp -a ./contrib/redhat/sshd.pam /etc/pam.d/sshd.pam
chkconfig --add sshd
systemctl enable sshd --now
systemctl restart sshd
  1. 测试ssh连接
相关文章
|
安全 Linux Shell
CentOS7下快速升级OpenSSH至8.9p1安全版本
CentOS7下快速升级OpenSSH至8.9p1安全版本
3196 0
CentOS7下快速升级OpenSSH至8.9p1安全版本
|
Linux 网络安全 开发工具
CentOS openssh 升级教程
低版本和centos系统默认安装的openssh版本经常会有高风险漏洞,因此openssh需要保持升级到最新版本。
2258 0
|
关系型数据库 MySQL Linux
centos7安装openssh9.0p1
centos7安装openssh9.0p1
1367 0
|
2月前
|
Linux C语言 Perl
centos实现离线更新openssh
在CentOS上离线更新OpenSSH: 升级完成后, OpenSSH 版本应为 9.3。务必先备份重要数据与配置并测试系统。
173 2
|
4月前
|
安全 Linux 网络安全
猿创征文|centos7升级openssh服务(再也不怕漏扫啦)
猿创征文|centos7升级openssh服务(再也不怕漏扫啦)
324 0
|
12月前
|
Linux 网络安全
实验:CentOS 7 编译安装最新版 OpenSSH 9.4p1
CentOS7 升级安装 OpenSSH 9.4p1 OpenSSL 3.0.10
1244 1
|
Linux
CentOS7下制作OpenSSH 8.4p1 RPM包
CentOS7下制作OpenSSH 8.4p1 RPM包
300 0
CentOS7下制作OpenSSH 8.4p1 RPM包
|
Linux
CentOS7下升级OpenSSL和OpenSSH
CentOS7下升级OpenSSL和OpenSSH
552 0
CentOS7下升级OpenSSL和OpenSSH
|
Linux 网络安全 Windows
【CentOS】检查系统是否安装OpenSSH
【CentOS】检查系统是否安装OpenSSH
497 0
【CentOS】检查系统是否安装OpenSSH