概述
Linux系统 常用远程登录来管理运维机器。远程登录中最重要的服务就是ssh服务,一般低版本的ssh 可能会存在漏洞,导致非法黑客入侵提权,增加系统的不安全。因此要确保ssh 版本是修复漏洞后的稳定版本。
1. 首先查看系统的ssh版本信息
命令:ssh -V
OpenSSH_8.0p1, OpenSSL 1.1.1c FIPS 28 May 2019
这个版本不算太老,不过也建议升级到新版本的。
2. 可以先在测试环境进行,以防生产环境出现问题升级失败导致无法连接到主机就麻烦了。
升级准备工作:
先升级ssl模块,在官网下载ssl版本和依赖的文件:
#升级所需安装包源码包:
openssh-8.1p1.tar.gz
zlib-1.2.1.tar.gz
openssl-1.1.1h.tar.gz
# 安装包链接地址(可以先线下下载然后上传至服务器)
http://www.zlib.net/zlib-1.2.11.tar.gz
https://www.openssl.org/source/openssl-1.1.1g.tar.gz
http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.1p1.tar.gz
#备份之前版本的安装环境
sudo cp -r /etc/ssh /etc/ssh_bak
sudo cp /etc/init.d/sshd /etc/init.d/sshd_bak
sudo cp /usr/sbin/sshd /usr/sbin/sshd_bak
# 安装所需要的依赖
yum install perl gcc gcc-c++ pam-devel zlib zlib-devel -y
3. 解压编译安装
./config zlib-dynamic shared
make && make install
4. 更新链接库路径
编辑/etc/ld.so.conf,添加/usr/local/lib64
5. 执行ldconfig -v使配置生效
6.编译openssh
安装依赖包 yum install pam pam-devel
解压openssh 文件包
./configure --prefix=/usr --with-ssl-dir=/usr/local/lib64 --with-pam
make && make install
chmod 400 /etc/ssh/ssh_host_*
编辑/etc/ssh/sshd_config注释两个GSSAPI选项
#GSSAPIAuthentication yes
#GSSAPICleanupCredentials no
编辑/etc/ssh/sshd_config,在文件最后添加如下选项:
KexAlgorithms diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group-exchange-sha256
cp openssh-8.1p1/contrib/redhat/sshd.init /etc/init.d/sshd
rm /usr/lib/systemd/system/sshd.service
编辑/etc/init.d/sshd添加OPTIONS选项
OPTIONS="-f /etc/ssh/sshd_config "
启动sshd服务
systemctl daemon-reload | systemctl start ssdh
查看服务的状态
systemctl status sshd
7. 查看升级后的版本
最后
以上就是爱撒娇海燕为你收集整理的centos7升级ssh 到高版本操作的全部内容,希望文章能够帮你解决centos7升级ssh 到高版本操作所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复