关键词搜索

全站搜索
×
密码登录在这里
×
注册会员
×

已有账号? 请点击

忘记密码

已有账号? 请点击

使用其他方式登录

升级openssh到最高版本详细步骤

发布2022-07-01 浏览3225次

详情内容

由于Centos7自带的openssh版本过低且存在漏洞,所以为了安全考虑我们需要升级openssh到最高版本,旧版SSH存在以下漏洞:

  • OpenSSH 操作系统命令注入漏洞(CVE-2020-15778)

  • OpenSSH 安全漏洞(CVE-2021-41617)

  • OpenSSH 安全漏洞(CVE-2017-15906)

  • OpenSSH 访问控制错误漏洞(CVE-2019-6109)

  • OpenSSH 信息泄露漏洞(CVE-2020-14145)

  • OpenSSH 安全漏洞(CVE-2016-20012)

image.png

因此我们要升级为最新2022 openssh 9版本,查看openssh版本命令:

ssh -V

image.png

安装前先安装及更新必须的依赖库:

yum install  -y gcc gcc-c++ glibc make autoconf pcre-devel  pam-devel
yum install  -y pam* zlib*

1.先通过yum更新,会将openssh自动更新到最高版本

yum -y update openssh

如果报错 /var/run/yum.pid已被锁定

则执行命令删除:

rm -rf /var/run/yum.pid

注:由于yum中的openssh未必已经同步了openssh中的最高版本,如果不是真正的最高版本,我们还要通过编译安装

2.利用yum升级并不能将ssh彻底更新到最新版本,然后还得需要编译安装

安装一些需要的环境:

yum -y install wget tar gcc make

准备好三样东西:

上传 zlib-1.2.12.tar.gzopenssl-1.1.1p .tar.gzopenssh-9.0p1.tar.gz 或网址下载,https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.9p1.tar.gz

三者源码下载地址:

http://www.zlib.net/
http://www.openssl.org/
http://www.openssh.org/

wget http://www.zlib.net/zlib-1.2.12.tar.gz
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.0p1.tar.gz
wget https://www.openssl.org/source/openssl-1.1.1p.tar.gz --no-check-certificat

解压

tar -zxvf zlib-1.2.12.tar.gz
tar -zxvf openssh-9.0p1.tar.gz
tar -zxvf openssl-1.1.1p.tar.gz

编译安装zlib

cd zlib-1.2.12
./configure --prefix=/usr/local/zlib
make && make install

编译安装openssl

cd ..
cd openssl-1.1.1p
./config --prefix=/usr/local/ssl -d shared
make && make install
echo '/usr/local/ssl/lib' >> /etc/ld.so.conf
ldconfig -v

安装openssh, 注意刚openssh-8.9.tar.gz解压后目录 是ssh

cd ../
cd openssh-9.0p1
./configure --prefix=/usr/local/openssh --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/ssl
make && make install

卸载由yum安装的openssh

yum remove openssh

修改配置,启动前要将新生成的sshd_config修改以下几个地方

vim /usr/local/openssh/etc/sshd_config
PermitRootLogin yes
PubkeyAuthentication yes
PasswordAuthentication yes

或者用echo写入

echo 'PermitRootLogin yes' >>/usr/local/openssh/etc/sshd_config
echo 'PubkeyAuthentication yes' >>/usr/local/openssh/etc/sshd_config
echo 'PasswordAuthentication yes' >>/usr/local/openssh/etc/sshd_config

复制文件到相应系统文件夹

cp  /mnt/update/openssh-8.2p1/contrib/redhat/sshd.init /etc/init.d/sshd


点击QQ咨询
开通会员
返回顶部
×
  • 微信支付
微信扫码支付
微信扫码支付
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
确定支付下载