升级OpenSSL隐藏版本号、升级OpenSSH隐藏版本号

注意:操作前记得多开一个窗口用top挂起,修改失败可能会导致ssh再也连接不上,如果telnet也没开,只有进机房了!

1、查看当前OpenSSL和OpenSSH版本号

openssl version
ssh -V
sshd -v

2、openssl和openssh下载

#openssl从官网下载
# wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz
#openssl腾讯云提供的镜像
wget https://mirrors.cloud.tencent.com/openssl/source/openssl-1.1.1g.tar.gz
#openssh下载
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.3p1.tar.gz

3、openssl和openssh升级

升级openssl

备份

which openssl
mv /bin/openssl /bin/openssl.bak

安装

tar -xzvf openssl-1.1.1g.tar.gz
cd openssl-1.1.1g/
./config shared && make && make install

配置软连接

which openssl
ln -s /usr/local/bin/openssl /usr/bin/openssl

如果执行openssl version报下面的错误

openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory

则执行下面命令解决:

ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/
ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/

查询版本号:openssl version

升级openssh

备份

mv /etc/ssh /etc/ssh.bak

安装

tar -xzvf openssh-8.3p1.tar.gz
cd openssh-8.3p1


#隐藏版本号
vi version.h
将#define SSH_VERSION     "OpenSSH_8.3"
改成:#define SSH_VERSION     "OpenSSH"


#配置
./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/lib64/ --with-zlib --with-ssl-engine --with-selinux
如果报错configure: error: SELinux support requires selinux.h header
使用下面的配置
./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/lib64/ --with-zlib --with-ssl-engine

#安装
make && make install


#验证
ssh -V

配置

1.修改sshd_config

echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config

2.启动

sshd不兼容systemd,需要删除以下内容https://bbs.csdn.net/topics/392512080

mv /usr/lib/systemd/system/sshd.service /usr/lib/systemd/system/sshd.service.bak
#在解压包中拷贝一些文件
cp -a contrib/redhat/sshd.init /etc/init.d/sshd


#重新加载某个服务的配置文件,如果新安装了一个服务,归属于 systemctl 管理,要是新服务的服务程序配置文件生效,需重新加载。
systemctl daemon-reload
#重新启动
/etc/init.d/sshd restart


#添加自启动
chkconfig --add sshd
#添加开机启动
chkconfig sshd on

查询版本号:

openssl version
ssh -V
sshd -v

升级后的影响

sftp有影响,测试下sftp是否正常登陆:

sftp  sftpuser@192.168.1.36 

参考:

https://segmentfault.com/a/1190000022756834

https://www.ricensoftwares.com.cn/index.php?control=doc&view=detail&id=224

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是 CentOS 9.7 升级 OpenSSHOpenSSL 的详细步骤: 1. 检查当前系统版本 使用以下命令检查当前系统是否已经安装了 OpenSSHOpenSSL: ``` rpm -qa | grep -E 'openssh|openssl' ``` 如果系统中已经安装了这两个软件包,则需要先卸载旧版本的 OpenSSHOpenSSL。 2. 卸载旧版本的 OpenSSHOpenSSL 使用以下命令卸载旧版本的 OpenSSHOpenSSL: ``` yum remove -y openssh openssl ``` 3. 下载最新版本的 OpenSSHOpenSSLOpenSSHOpenSSL 官方网站下载最新版本的软件包,可以使用以下命令下载: ``` wget https://www.openssl.org/source/openssl-1.1.1k.tar.gz wget https://openbsd.hk/pub/OpenBSD/OpenSSH/portable/openssh-8.6p1.tar.gz ``` 4. 安装 OpenSSL a. 解压 OpenSSL 软件包: ``` tar -zxvf openssl-1.1.1k.tar.gz ``` b. 进入解压后的目录,执行以下命令进行编译: ``` cd openssl-1.1.1k ./config shared zlib make && make install ``` c. 编译完成后,需要将新版本的 OpenSSL 库文件路径添加到系统的 ldconfig 配置文件中: ``` echo "/usr/local/lib" >> /etc/ld.so.conf.d/local.conf ldconfig -v ``` 5. 安装 OpenSSH a. 解压 OpenSSH 软件包: ``` tar -zxvf openssh-8.6p1.tar.gz ``` b. 进入解压后的目录,执行以下命令进行编译: ``` cd openssh-8.6p1 ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl --with-zlib --with-md5-passwords --with-pam make && make install ``` c. 编译完成后,需要将新版本的 OpenSSH 相关文件路径添加到系统的 PATH 环境变量中: ``` echo "export PATH=/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin" >> /etc/profile source /etc/profile ``` 6. 验证 OpenSSHOpenSSL 的版本 执行以下命令验证 OpenSSHOpenSSL 的版本: ``` ssh -V openssl version ``` 如果输出的版本号是最新的,则说明升级成功。 注意:升级 OpenSSHOpenSSL 可能会影响系统的安全性和稳定性,请谨慎操作,并备份系统数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值