技术交流QQ群:①185473046   ②190706903   ③203744115   网站地图
登录

下次自动登录
现在的位置: 首页Linux>正文
Linux下升级OpenSSH版本
2024年01月15日 Linux 暂无评论 ⁄ 被围观 639次+

操作系统:CentOS

1、下载安装包

1.1、下载OpenSSH安装包

https://www.openssh.com/

https://www.openssh.com/openbsd.html

下载地址:

http://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.6p1.tar.gz

1.2、下载OpenSSL安装包

安装OpenSSH高版本需要OpenSSL高版本支持

下载地址:https://www.openssl.org/source/openssl-1.1.1w.tar.gz

把下载好的安装包上传到服务器的/data/server/soft目录

2、安装OpenSSH编译依赖包

yum install gcc openssl-devel zlib-devel pam-devel tcp_wrappers-devel libselinux-devel perl

3、关闭selinux

#如果不关闭,升级完成后sshd无法启动,报错:Starting sshd:/usr/sbin/sshd: error while loading shared libraries: libcrypto.so.1.1: cannot enable executable stack as shared object requires: Permission denied

#检查selinux状态,Enforcing 为开启,Disabled 为关闭

getenforce

#执行以下命令关闭selinux

setenforce 0

sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config

4、安装OpenSSL

mkdir -p /data/server/openssl

cd /data/server/soft

tar zxvf openssl-1.1.1w.tar.gz

cd openssl-1.1.1w

./config -fPIC shared zlib --prefix=/data/server/openssl

make

make install

openssl version #查看当前版本

which openssl #查找安装目录

mv /usr/bin/openssl /usr/bin/openssl.bak #备份旧版

# 创建软连接

ln -s /data/server/openssl/bin/openssl /usr/bin/openssl

ln -s /data/server/openssl/include/openssl /usr/include/openssl

#向动态链接库配置文件添加新的OpenSSL库路径

echo "/data/server/openssl/lib" >> /etc/ld.so.conf

ldconfig -v #刷新动态链接库缓存,使新配置生效

openssl version #查看版本

5、安装OpenSSH

#查看当前OpenSSH版本

ssh -V

#备份配置文件(如果配置文件无变动,如禁止root远程登录、修改端口号、修改ssh超时时间等,可以不用备份)

cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

cp /etc/pam.d/sshd /etc/pam.d/sshd.bak

#删除当前OpenSSH安装包

rpm -qa | grep openssh

rpm -e --nodeps `rpm -qa | grep openssh`

#设置目录权限

chmod 0600 /etc/ssh/ssh_host_rsa_key

chmod 0600 /etc/ssh/ssh_host_ecdsa_key

chmod 0600 /etc/ssh/ssh_host_ed25519_key

#编译安装

cd /data/server/soft

tar -zxvf openssh-9.6p1.tar.gz

cd openssh-9.6p1

./configure --prefix=/usr --sysconfdir=/etc/ssh --with-ssl-dir=/data/server/openssl --without-hardening --without-openssl-header-check

make

make install

#拷贝新版OpenSSH的启动脚本

cp -a /data/server/soft/openssh-9.6p1/contrib/redhat/sshd.init /etc/init.d/sshd

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

#还原配置文件

mv /etc/ssh/sshd_config.bak /etc/ssh/sshd_config

mv /etc/pam.d/sshd.bak /etc/pam.d/sshd

#添加开机启动

chkconfig --add sshd

chkconfig sshd on

#重启OpenSSH

systemctl restart sshd

#查看版本

ssh -V

#要查看系统的启动项

systemctl list-unit-files --type=service

chkconfig --list

#说明,如果无法使用root账号ssh远程登录,需要修改配置文件

vi /etc/ssh/sshd_config

PermitRootLogin yes

:wq! #保持退出

systemctl restart sshd

至此,Linux下升级OpenSSH版本完成。

     
» 转载请注明来源:系统运维 » Linux下升级OpenSSH版本

  系统运维技术交流QQ群:①185473046 系统运维技术交流□Ⅰ ②190706903 系统运维技术交流™Ⅱ ③203744115 系统运维技术交流™Ⅲ

给我留言

您必须 [ 登录 ] 才能发表留言!



Copyright© 2011-2024 系统运维 All rights reserved
版权声明:本站所有文章均为作者原创内容,如需转载,请注明出处及原文链接
陕ICP备11001040号-3