Openssh版本升级修复漏洞

一、由于openssh版本过低当用扫描软件检测时会出现以下漏洞:

二、解决方案是升级高版本,下面是升级的步凑。

1.安装telnet工具,因为升级过程中怕失败或者重启ssh失败。我们直接yun安装即可。

同时安装服务端和客户端命令: yum –y  install telnet*
接下来,编辑配置文件vi /etc/xinetd.d/telnet
将disable的参数yes修改为no
然后重启telnet服务:service xinetd restart

2.测试通过telnet的方式输入账号密码正常登录

 telnet localhost

输入用户名密码登陆成功,便测测成功了!
注意:如果无法telnet登陆的话:
vi /etc/pam.d/remote
注释掉:auth       required     pam_securetty.so

3.执行以下脚本,如果openssh-7.5p1.tar.gz下载慢需手动下载,放到openssh_update目录然后把wget这一行注释掉。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!/bin/sh
mkdir openssh_update
cd openssh_update
oldversion=`ssh -V 2>&1`
echo "开始执行 OpenSSH 版本升级脚本"
echo -e "当前OpenSSH版本为: \033[31m $oldversion \033[0m"
echo "下载OpenSSH 7.5p1源代码......"
{
  wget https://openbsd.hk/pub/OpenBSD/OpenSSH/portable/openssh-7.5p1.tar.gz
  tar -zxf openssh-7.5p1.tar.gz
} &>> install.log
echo "备份原版OpenSSH......"
{
    mv /etc/ssh/ ./ssh.bak
} &>> install.log
echo "安装编译所需依赖,耗时较长,请耐心等待......"
{
    yum -y install gcc zlib-devel openssl-devel
} &>> install.log
echo "配置并编译OpenSSH......"
{
    cd openssh-7.5p1/
    ./configure --prefix=/usr --sysconfdir=/etc/ssh
    make
} &>> install.log
echo "卸载旧版OpenSSH......"
{
    rpm -e --nodeps `rpm -qa | grep openssh`
} &>> install.log
echo "开始安装......"
{
   make install
   chmod 0600 /etc/ssh/ssh_host_rsa_key
  chmod 0600 /etc/ssh/ssh_host_ecdsa_key
  chmod 0600 /etc/ssh/ssh_host_ed25519_key
  make install
} &>> install.log
newversion=`ssh -V 2>&1`
echo "开始执行 OpenSSH 版本升级脚本"
echo -e "安装完成,当前SSH版本为: \033[32m $newversion \033[0m"
echo "配置权限及启动项......"
{
    cp contrib/redhat/sshd.init /etc/init.d/sshd
    chkconfig --add sshd
    sed -i '/#PermitRootLogin prohibit-password/c'"PermitRootLogin yes" /etc/ssh/sshd_config
} &>> install.log
echo "重启SSH服务......"
service sshd restart
echo "升级全部完成"
echo -e "\033[31m 注意!!!为防止升级失败不能登录,请在使用其他客户端确认能正常登录SSH后再关闭本会话窗口! \033[0m"

4.通过其他机子telnet登录,启动ssh服务。

/etc/init.d/sshd start

5.升级成功!!

 

posted @   西门运维  阅读(5198)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类
点击右上角即可分享
微信分享提示