首页 > 基础资料 博客日记
Centos升级ssh版本
2024-10-19 01:00:10基础资料围观103次
这篇文章介绍了Centos升级ssh版本,分享给大家做个参考,收藏Java资料网收获更多编程知识
1. 基础准备
下载并解压安装包
- OpenSSH 官方下载地址:OpenSSH Portable
- OpenSSL 官方下载地址:OpenSSL Source
- Zlib 官方下载地址:Zlib Source
已下载的文件:
openssh-9.9p1.tar.gz
openssl-1.1.1w.tar.gz
zlib-1.2.12.tar.gz
2. 系统环境检查
- 查看当前 SSH 版本:
ssh -V
3. 升级 OpenSSH 的步骤
3.1 解压压缩包
tar -zxvf openssh-9.9p1.tar.gz
tar -zxvf openssl-1.1.1w.tar.gz
tar -zxvf zlib-1.2.12.tar.gz
3.2 编译安装 Zlib
cd zlib-1.2.12
./configure --prefix=/usr/local/zlib
yum install gcc
make && make install
echo '/usr/local/zlib/lib' >> /etc/ld.so.conf
ldconfig -v
验证 Zlib 安装是否成功,/usr/local/zlib
目录下应包含 include
、lib
和 share
三个目录。
3.3 编译安装 OpenSSL
cd openssl-1.1.1w
./config --prefix=/usr/local/ssl -d shared
make && make install
echo '/usr/local/ssl/lib' >> /etc/ld.so.conf
ldconfig -v
备份并替换原 OpenSSL
mv /usr/bin/openssl /usr/bin/openssl.old
mv /usr/include/openssl /usr/include/openssl.old
ln -sf /usr/local/ssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
3.4 安装 Telnet 并进行配置
-
安装 Telnet:
yum install -y telnet telnet-server xinetd
-
修改配置文件
/etc/xinetd.d/telnet
,将disable
设置为no
:vim /etc/xinetd.d/telnet
-
重启 Telnet 服务:
service xinetd restart
3.5 升级安装 OpenSSH
3.5.1 停止 SSH 服务并备份
systemctl stop sshd
# 对于 CentOS 6.9 使用
service sshd stop
cp -r /etc/ssh /etc/ssh.old
3.5.2 卸载系统自带 OpenSSH
rpm -qa | grep openssh
rpm -e --nodeps openssh-server-7.4p1-21.el7.x86_64
rpm -e --nodeps openssh-7.4p1-21.el7.x86_64
rpm -e --nodeps openssh-clients-7.4p1-21.el7.x86_64
3.5.3 编译安装 OpenSSH
cd openssh-9.9p1
./configure --prefix=/usr/local/openssh --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/ssl
make && make install
3.5.4 复制新的 SSH 文件并配置
cp -rf /root/openssh-9.9p1/contrib/redhat/sshd.init /etc/init.d/sshd
cp -rf /root/openssh-9.9p1/contrib/redhat/sshd.pam /etc/pam.d/sshd.pam
cp -rf /root/openssh-9.9p1/sshd_config /etc/ssh/sshd_config
cp -rf /usr/local/openssh/sbin/sshd /usr/sbin/sshd
cp -rf /usr/local/openssh/bin/ssh /usr/bin/ssh
cp -rf /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
3.5.5 配置 SSH 服务并启动
chmod u+x /etc/init.d/sshd
chkconfig --add sshd
chkconfig sshd on
echo 'PermitRootLogin yes' >> /usr/local/openssh/etc/sshd_config
# 谨慎使用,可能会断开连接
service sshd restart
service sshd start
3.6 Telnet 安全配置
-
关闭 Telnet:
systemctl stop xinetd.service systemctl stop telnet.socket # 对于 CentOS 6.9 使用 service xinetd stop
-
卸载 Telnet 服务(可选):
yum remove xinetd telnet-server telnet -y
常见问题
- SSH 启动权限问题:
chmod 600 /etc/ssh/ssh_host_rsa_key chmod 600 /etc/ssh/ssh_host_dsa_key chmod 600 /etc/ssh/ssh_host_ecdsa_key chmod 600 /etc/ssh/ssh_host_ed25519_key
如果有 OpenSSL 库文件找不到的问题,可以参考相关解决方案。
文章来源:https://blog.csdn.net/u011197085/article/details/142878154
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签: