Linux下openssh升级安装配置

本文涉及的产品
运维安全中心(堡垒机),免费版 6个月
运维安全中心(堡垒机),企业双擎版 50资产 7天
简介:

RedHat Linux下升级 SSH 服务

当 Telenet 已经渐渐退出历史舞台后,SSH ( Security SHell ) 就成为几乎所有 Linux 操作系统的远程登录连接协议。但是,目前很多 Linux 发行版中集成的 SSH 软件版本都比较老,存在着一些漏洞和安全隐患,因而升级 SSH 服务软件修补漏洞提升系统安全成为 Linux 系统安全中非常重要的一个环节。下面就讲述一下如何升级 SSH 服务。

SSH 有许多标准,通常 Linux 中 ( Redhat, CentOS, SuSE 等 )使用的是开源版本的 OpenSSH,所以我们就是对 OpenSSH 进行升级。在升级 OpenSSH 之前,需要升级系统中的 OpenSSL (OpenSSL 可以为 OpenSSH 提供加密传输支持,是 OpenSSH 的一个中间件)版本和 Zlib (提供压缩传输支持)版本,以达到最好的安全性。

注意:在开始升级之前一定要确认系统中已经安装了 GCC 编译器!

注意:升级过程中不要重启sshd服务,否则会远程连接不上!!


一、升级 Zlib
1、下载最新版本 Zlib
Zlib 官方网站:
http://www.zlib.net/
目前最新版本的 Zlib 是 zlib-1.2.3.tar.gz
# cd /usr/local/src
# wget -c
http://www.zlib.net/zlib-1.2.3.tar.gz

2、编译安装 Zlib
# tar xzvf zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# ./configure --prefix=/usr/local/zlib
# make
# make install
这样,就把 zlib 编译安装在 /usr/local/zilib 中了。

二、升级 OpenSSL
1、下载最新版本 OpenSSL
OpenSSL 的官方网站:
http://www.openssl.org
目前最新版的 OpenSSL 是 openssl-0.9.8d
# cd /usr/local/src
# wget -c
http://www.openssl.org/source/openssl-0.9.8d.tar.gz

2、编译安装 OpenSSL
# tar xzvf openssl-0.9.8d.tar.gz
# cd openssl-0.9.8d
# ./Configure --prefix=/usr/local/openssl
# make
# make test (这一步很重要哦!是进行 SSL 加密协议的完整测试,如果出现错误就要一定先找出哪里的原因,否则一味继续可能导致最终 SSH 不能使用,后果很严重哦!)
# make install

三、升级 OpenSSH
1、下载最新版本 OpenSSH
OpenSSH 的官方网站:
http://www.openssh.com
目前最新版的 OpenSSH 是 openssh-4.5p1
# cd /usr/local/src
# wget -c

2、编译安装 OpenSSH
# tar xzvf openssh-4.5p1.tar.gz
# cd openssh-4.5p1
# ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/openssl --with-md5-passwords
(注意,如果 configure 时提示 PAM 有错误,那一般是因为系统中没有安装 pam-devel RPM 包,找到安装光盘,安装 pam-devel 就可以解决啦)

如果configure时出现configure: error: *** OpenSSL headers missing - please install first or check config.log ***

解决办法:安装openssl以及openssl-devel
# make
# make install

这样就完成了整个升级 SSH 的工作,在升级完成后,我们还需要修改一下 OpenSSH 的配置文件进一步提升安全性。
通过以上步骤完成的升级工作,OpenSSH 的配置文件在 /etc/ssh 下,其中 SSH Server 的配置文件是 sshd_config。

# vi /etc/ssh/sshd_config
找到:

CODE:

#Protocol 2,1修改为:

CODE:

Protocol 2这样就禁用了 ssh v1 协议,只使用更安全的 ssh v2 协议。

找到:

CODE:

X11Forwarding yes修改为:

CODE:

X11Forwarding no禁用 X11 转发。

修改后保存退出。

● 生成ssh服务管理脚本

进入ssh解压目录

#cd /contrib/redhat

#cp sshd.init /etc/init.d/sshd

#chmod +x /etc/init.d/sshd

#chkconfig –add sshd

最后,启动 SSH 服务使修改生效:
# /etc/init.d/sshd restart

重启后确认一下当前的 OpenSSH 和 OpenSSL 是否正确:
# ssh -v
如果看到了新的版本号就没问题啦!

 ***************************************************************************

  升级方法2:

     升级版本为:openssh-6.6p1

  1、加载本地源(方法不描述了)

  2、执行下列命令

  yum install bash -y

  yum install -y zlib zlib-devel openssl openssl-devel

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

  cd /usr/local/src/openssh-6.6p1/

  cp /etc/init.d/sshd /etc/init.d/sshd.old

  tar -cvf ssh.bak.tar /etc/ssh

  yum install gcc -y

  3、卸载老版本

  rpm -qa|grep ssh

  rpm -e openssh-server-5.3p1-81.el6.x86_64

  rpm -e openssh-clients-5.3p1-81.el6.x86_64 --nodeps

  rpm -qa|grep ssh

  rpm -e openssh-askpass-5.3p1-81.el6.x86_64

  rpm -e openssh-5.3p1-81.el6.x86_64

  rpm -qa|grep ssh

  4、开始升级

  。/configure --prefix=/usr --sysconfdir=/etc/ssh --with-zlib --with-md5-passwords

  make && make install

  mv /etc/init.d/sshd.old /etc/init.d/sshd

  mkdir -p /var/empty/sshd/etc

  /etc/init.d/sshd restart

  chkconfig --add sshd

  chkconfig sshd on

  chkconfig --list|grep sshd

  5、查看是否升级成功

  ssh -V

  OpenSSH_6.6p1, OpenSSL 1.0.0-fips 29 Mar 2010

  以上就是Linux系统下怎么升级OpenSSH的介绍了,升级成功了旧版本的一些问题和故障自然就能得到修复了。






    本文转自898009427 51CTO博客,原文链接http://blog.51cto.com/moerjinrong/1875715:,如需转载请自行联系原作者





目录
打赏
0
0
0
0
349
分享
相关文章
在Linux下配置gitee与Github的远程仓库
注意,git push后,是输入你的账号与密码。这个步骤可以通过特殊设置省去,但是一开始还是不要太省。
63 0
安装和配置JDK、Tomcat、MySQL环境,以及如何在Linux下更改后端端口。
遵循这些步骤,你可以顺利完成JDK、Tomcat、MySQL环境的安装和配置,并在Linux下更改后端端口。祝你顺利!
161 11
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
117 10
Android调试终极指南:ADB安装+多设备连接+ANR日志抓取全流程解析,覆盖环境变量配置/多设备调试/ANR日志分析全流程,附Win/Mac/Linux三平台解决方案
ADB(Android Debug Bridge)是安卓开发中的重要工具,用于连接电脑与安卓设备,实现文件传输、应用管理、日志抓取等功能。本文介绍了 ADB 的基本概念、安装配置及常用命令。包括:1) 基本命令如 `adb version` 和 `adb devices`;2) 权限操作如 `adb root` 和 `adb shell`;3) APK 操作如安装、卸载应用;4) 文件传输如 `adb push` 和 `adb pull`;5) 日志记录如 `adb logcat`;6) 系统信息获取如屏幕截图和录屏。通过这些功能,用户可高效调试和管理安卓设备。
【Linux】vim使用与配置教程
Vim是一款功能强大的文本编辑器,广泛应用于Linux环境,是开发者和系统管理员的必备工具。本文介绍了Vim的基本操作与简单配置,涵盖命令模式、插入模式和底行模式的使用方法,以及光标定位、复制粘贴、搜索替换等常用技巧。同时,文章还提供了实用的分屏操作和代码注释方法,并分享了通过`.vimrc`文件进行个性化配置(如显示行号、语法高亮、自动缩进等)的技巧,帮助用户提升文本编辑效率。掌握这些内容,能让Vim更好地服务于日常工作与开发需求。
300 3
在Rocky Linux 9上安装JDK并配置环境变量!
本教程介绍在Rocky Linux 9上安装JDK并配置环境变量的完整步骤。首先更新系统,清理旧版本JDK相关包及残留文件,确保环境干净。接着搜索并安装所需版本的JDK(如OpenJDK 17),验证安装是否成功。然后查找JDK安装路径,配置全局环境变量`JAVA_HOME`和`PATH`,最后验证环境变量设置。按照此流程操作,可顺利完成Java开发环境搭建,支持多版本切换(如JDK 8/11/17)。生产环境请谨慎操作,避免影响现有服务。
550 21
BigCloud Enterprise Linux 8和Rocky Linux 8升级OpenSSH步骤
本文介绍了在BigCloud Enterprise Linux 8.2/8.6和Rocky Linux 8.10上升级OpenSSH的详细步骤。首先配置Telnet服务和GCC编译器以确保远程登录安全,接着备份旧版OpenSSH并下载、编译、安装最新版本(如9.9p1)。然后创建新的sshd系统服务配置文件,调整配置并启动服务。最后验证升级效果,关闭不必要的Telnet服务,并处理可能的防火墙和SELinux问题。通过这些步骤可有效修复低版本OpenSSH带来的高危漏洞。
215 13
|
5月前
|
问题记录:解决Linux登录故障,/etc/passwd配置受损该怎么操作
修复/etc/passwd文件是解决Linux登录故障的重要步骤。通过进入单用户模式、挂载文件系统、恢复或手动修复/etc/passwd文件,可以有效解决该问题。保持定期备份系统配置文件是预防此类问题的最佳实践。
159 5
|
5月前
|
问题记录:解决Linux登录故障,/etc/passwd配置受损该怎么操作
修复/etc/passwd文件是解决Linux登录故障的重要步骤。通过进入单用户模式、挂载文件系统、恢复或手动修复/etc/passwd文件,可以有效解决该问题。保持定期备份系统配置文件是预防此类问题的最佳实践。
140 13
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问