openssh 的升级
侧边栏壁纸
博主昵称
yuc

  • 累计撰写 291 篇文章
  • 累计收到 0 条评论

openssh 的升级

yuc
yuc
2024-08-26 / 最后修改: 2024-08-26 03:35 / 0 评论 / 4 阅读 / 正在检测是否收录...
软件下载

官方下载:http://www.openssh.com/portable.html 推荐下载最新版

前置准备

为了防止 ssh 升级失败或中途断开后无法登录,需要做一些前置工作

Centos6.X开启telnet服务
  1. 安装telnet服务端以及超级守护进程
yum install telnet-server xinetd openssl-devel pam-devel -y
  1. 修改telnet的状态为开启:编辑 `/etc/xinetd.d/telnet` 文件修改disable对应的值为 no
  2. 重启xinetd服务:
service xinetd restart

操作系统还需要创建一个普通用户来登陆,因为 telnet 默认不允许 root 登陆,且 telnet 传输方式是明文的原因,也不推荐使用 root 登陆,避免额外的安全隐患

Centos7.X开启telnet服务
  1. 安装 telnet 服务
yum -y install telnet-server
  1. 启动并且设置为自启
systemctl start telnet.socket
systemctl start xinetd
  1. 安装依赖包:
yum install pam-devel zlib-devel gcc -y
编译源码
  1. 解压源码后进入到目录中编译,一定要使用 `--with-pam`,否则一些场景下会出现使用问题
./configure --prefix=/usr  --sysconfdir=/etc/ssh  --with-md5-passwords  --with-privsep-path=/var/lib/sshd --with-pam && make
  1. 备份原配置文件 cp -a /etc/ssh /opt/ssh
  2. 卸载旧版本的ssh
rpm -qa | grep openssh | xargs rpm e -nodeps
  1. 执行安装
make install
  1. 安装完毕检测回显,可能会提示 key 文件权限问题,根据提示的文件设置为 600 即可
  2. 检查升级之后的ssh版本 `ssh -V`
  3. 拷贝启动脚本作为服务 并 设置自启
cp contrib/redhat/sshd.init /etc/init.d/sshd && chkcoonfig --add sshd;chkconfig sshd on
  1. 还原配置文件 `/etc/ssh/sshd_config` ,之前的配置文件可能做了修改,比如端口,加密套件等
  2. 还原 `/etc/pam.d/sshd`` `,从 rpm 源码升级,rpm 卸载会重命名备份这个文件为` ``sshd.rpmsave`
  3. 没有问题了,先测试配置文件再重启 ssh 服务
sshd -t && service sshd restart
  1. 重启无异常且测试远程登录后,关闭 telnet服务
0

评论

博主关闭了当前页面的评论