linux系统将OpenSSH升级到最高版本

这篇具有很好参考价值的文章主要介绍了linux系统将OpenSSH升级到最高版本。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、背景:

公司安全扫描到主机的OpenSSH安全漏洞,由于是虚拟机只能由自己修复,很多OpenSSH的漏洞厂商都没有提供补丁,只能通过禁用scp或者端口的方式临时解决,但是后面使用就不方便了,而且也不安全,所以直接将OpenSSH升级到现在的最高版本openssh-9.3p2,ssl升级到1.1.1。

linux系统将OpenSSH升级到最高版本,安全,linux,服务器,安全,ssh

 二、准备工作:

升级OpenSSH是有风险的,失败会导致不能通过SSH连接到主机,所以最好先按照telnet的相关工具,通过telnet连接主机进行SSH升级操作,因为此次操作的是虚拟机,跟公司的机房老师沟通,即使升级失败,他们也是可以连接上主机的,所有我就没再按照telnet的相关组件,直接通过SSH连接到主机进行的升级。升级前可以先看下报错处理章节,方便安装过程中有问题解决。

升级SSH需要先查看gcc、pcre、zlib  perl是否安装使用以下命令可以查看:

gcc --version、rpm -qa pcre、yum list installed | grep zlib*、perl -version。查看SSH版本 ssh -V, 查看ssl版本openssl version

linux系统将OpenSSH升级到最高版本,安全,linux,服务器,安全,ssh 

gcc包没有的请参考这篇文章:https://blog.51cto.com/u_15064655/4818120

perl没有的:

下载地址:https://www.cpan.org/src/5.0/perl-5.34.0.tar.gz,将包上传到服务器上,然后执行一下命令:

tar -xzf perl-5.34.0.tar.gz

 cd perl-5.34.0

./Configure -des -Dprefix=$HOME/localperl

make 

make test 

make install

注意:

1、通过SSH连接主机升级时,不要关闭SSH连接,再升级过程中关闭了以后可能就连不上了;

2、SSH升级依赖于SSL,对SSL的版本有要求,要先按照SSL再按照SSH;

三、开始安装:

1、下载openssl、openssh、zlib包

下载openssl
https://www.openssl.org/source/openssl-1.1.1t.tar.gz
下载openssh
https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.3p2.tar.gz
下载zlib
http://www.zlib.net/zlib-1.2.13.tar.gz

按照顺序是zlib库-> openssl -> openssh的顺序安装;

2、安装zlib

tar -zxvf zlib-1.2.13.tar.gz   -C /usr/local/src

cd zlib-1.2.13
./configure --prefix=/usr/local/zlib &&?make?-j 4?&&?make?install

3、安装ssl

tar -zxvf openssl-1.1.1t.tar.gz -C /usr/local/src/
cd /usr/local/src/openssl-1.1.1t

./config --prefix=/usr/local/ssl -d shared  #编译时可能会报错,请看错误模块

make -j 4 && make install

 echo '/usr/local/ssl/lib' >> /etc/ld.so.conf

ldconfig -v

/usr/local/ssl/bin/openssl version -a # 查询这个目录下openssl版本已是1.1.1p

4、安装ssh

tar -zxvf openssh-9.3p1.tar.gz -C /usr/local/src/

先备份:mv /etc/ssh /etc/ssh.bak
cd  /usr/local/src/openssh-9.3p2

#指定ssl和zlib安装位置
./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl --with-zlib=/usr/local/zlib

make -j 4 && make install

#修改配置文件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
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

#备份 /etc/ssh 原有文件,并将新的配置复制到指定目录

mv /usr/sbin/sshd /usr/sbin/sshd.bak
cp -rf /usr/local/openssh/sbin/sshd /usr/sbin/sshd
mv /usr/bin/ssh /usr/bin/ssh.bak
cp -rf /usr/local/openssh/bin/ssh /usr/bin/ssh 
mv /usr/bin/ssh-keygen /usr/bin/ssh-keygen.bak
cp -rf /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen

安装完成,查看版本ssh -V

linux系统将OpenSSH升级到最高版本,安全,linux,服务器,安全,ssh

5、重启sshd服务

systemctl restart sshd

systemctl status sshd

四、报错处理:

1、执行ssl的./config --prefix=/usr/local/ssl -d shared编译时报错:

Operating system: x86_64-whatever-linux2 You need Perl 5.

你需要安装perl-5.34.0.tar.gz

下载https://www.cpan.org/src/5.0/perl-5.34.0.tar.gz

tar -xzf perl-5.34.0.tar.gz
 cd perl-5.34.0
./Configure -des -Dprefix=$HOME/localperl
make 
make test 
make install

2、ssl 执行  make -j 4 && make install报错
sh: pod2html: command not found
没找到原因,但是暂时没找到有什么影响,测试ssl是正常的。

3、重启ssh服务报错:

Job for sshd.service failed because the control process exited with error code. See "systemctl status sshd.service" and "journalctl -xe" for details.        

linux系统将OpenSSH升级到最高版本,安全,linux,服务器,安全,ssh

使用/usr/sbin/sshd -T查看
是/etc/ssh/ssh_host_ed25519_key这个文件的权限太大了,去所在目录下执行 chmod 600 ssh_host_ed25519_key 命令修改文件权限,重启可能还报错,再用-T看下,还有其他的文件权限太大。
chmod 600 ssh_host_rsa_key、chmod 600 ssh_host_ecdsa_key、 chmod 600 ssh_host_ed25519_key基本上这三个。

linux系统将OpenSSH升级到最高版本,安全,linux,服务器,安全,ssh

4、重启报错:Job for sshd.service failed because the control process exited with error code. See "systemctl status sshd.service" and "journalctl -xe" for details. 

用sshd -t看到报错信息为

/etc/ssh/sshd_config line 80: Unsupported option GSSAPICleanupCredentials

/etc/ssh/sshd_config line 96: Unsupported option UsePAM

linux系统将OpenSSH升级到最高版本,安全,linux,服务器,安全,ssh

vi /etc/ssh/sshd_config
把#GSSAPIAuthentication yes  、#GSSAPICleanupCredentials no  把这两个禁掉
#UsePAM no也禁掉
文章来源地址https://www.toymoban.com/news/detail-613859.html

到了这里,关于linux系统将OpenSSH升级到最高版本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 银河麒麟服务器操作系统V10 SP2升级openssh9.3

    根据安全扫描结果,发现原系统自带openssh存在高危漏洞。需要针对图中漏洞进行处理。   由于ssh服务涉及运维方面,对openssh更新前需要预留其他连接服务器方法(如:telnet、VNC)。防止在升级的过程中导致服务器连接不上。需要自行结合实际情况进行操作。 3.1.1环境依赖安

    2024年02月16日
    浏览(121)
  • 蓝易云:Linux系统sshd命令 – openssh服务器守护进程

    sshd是Linux系统中的一个守护进程,它提供了远程登录服务和安全的文件传输功能。以下是sshd的详细教程。 1. 安装openssh-server 在Debian/Ubuntu上安装openssh-server命令如下: sudo apt-get update sudo apt-get install openssh-server 在CentOS/RHEL上安装openssh-server命令如下: sudo yum update sudo yum install

    2024年02月16日
    浏览(49)
  • 【Linux 升级Openssh以及Openssl版本】

    服务器漏洞,需要升级openssh版本到9.0。 输入命令查看 openssl 版本 因为我这里已经升级过了,所以显示最新版 下载最新的openssl并解压(建议将压缩包下载到 /opt 目录下): 如果在执行 wget 后指令提示 command not found ,是因为目标机上没有安装wget指令,需进行wget指令安装;

    2023年04月17日
    浏览(42)
  • linux离线升级ssh,升级到openssh8.8版本

    服务器检查漏洞,需要升级服务器ssh版本,从openssh7.4升级到openssh8.8,平滑升级ssh方法。 实际生产服务器是RedHat 7.6,我在vm虚拟机中搭建了centos7.6测试环境,前期也用了一个RedHat 7.6不理想,实际直接下载的红帽是用不了的,需要注册服务器,要用也能用安装网上需要改一些东

    2024年02月14日
    浏览(43)
  • linux系统openssh升级

    说明 整个过程不需要卸载原先的openssl包和openssh的rpm包。本文的环境都是系统自带的openssh,没有经历过手动编译安装方式。如果之前有手动编译安装过openssh,请参照本文自行测试是否能成功。 如果严格参照本文操作,保证你升级没问题 一、安装依赖包 二、下载openssh对应得

    2024年02月14日
    浏览(37)
  • 内网安全:Msfconsole攻击技术(成功拿下服务器最高权限.)

    Msfconsole简称(msf)是一款 常用的渗透测试工具 ,包含了常见的漏洞利用模块和生成各种木马,方便于 安全测试人员的使用 .                  Msfconsole的使用:         第一步:进行端口扫描.         第二步:进行服务的扫描.         第三步:扫描3306(Mysql)端

    2024年02月16日
    浏览(41)
  • Web安全:拿到 Web 服务器 最高权限.(vulntarget 靶场 1)

    Web 服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以处理浏览器等Web客户端的请求并返回相应响应,也可以放置网站文件,让全世界浏览;可以放置数据文件,让全世界下载. Web安全:拿到 Web 服务器 最高权限. 免责声明: 网络环境所示: 主机信息

    2024年02月07日
    浏览(39)
  • Web安全:拿到 Web 服务器 最高权限.(vulntarget 靶场 A)

    Web 服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以处理浏览器等Web客户端的请求并返回相应响应,也可以放置网站文件,让全世界浏览;可以放置数据文件,让全世界下载. Web安全:拿到 Web 服务器 最高权限. 免责声明: 网络环境所示: 主机信息

    2024年02月08日
    浏览(44)
  • 【OpenSSH】Windows系统使用OpenSSH搭建SFTP服务器

    Windows Server 2019 OpenSSH-Win64(下载地址:https://github.com/PowerShell/Win32-OpenSSH/releases) windows设置-账户-其他用户 本地用户和组 - 用户,新建用户,如SFTP,设置用户名和密码 这一步非常重要,否则用户登录上来就可以对计算机所有磁盘和目录进行操作。因此,必须要限制用户访问

    2024年04月14日
    浏览(43)
  • centos7.6云服务器安全高危漏洞之Openssh

    OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现。SSH协议族可以用来进行远程控制, 或在计算机之间传送文件。而实现此功能的传统方式,如telnet(终端仿真协议)、 rcp ftp、 rlogin、rsh都是极为不安全的,并且会使用明文传送密码。OpenSSH提供了服务端后台程序和客户端工具,用

    2024年02月12日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包