技术分享
Centos升级Openssh版本
JDK1.8下载教程-2024最新版
谷歌浏览器提示 此扩展程序已停用,因为它已不再受支持 开启V2插件支持
苹果上架App Store 之申请邓白氏编码
Docker 安装
本文档使用 MrDoc 发布
-
+
首页
Centos升级Openssh版本
## 一、启动Telnet服务 > 为防止升级Openssh失败导致无法连接ssh,所以先安装Telnet服务备用 #### 1.安装telnet-server及telnet服务 `yum install -y telnet-server* telnet` #### 2.安装xinetd服务 `yum install -y xinetd` #### 3.启动xinetd及telnet并做开机自启动 ``` systemctl enable xinetd.service systemctl enable telnet.socket systemctl start telnet.socket systemctl start xinetd.service ``` #### 4.修改/etc/securetty文件 默认情况下,系统是不允许root用户telnet远程登录的。如果要使用root用户直接登录,需向/etc/securetty中追加pts/0等内容,执行命令如下: ``` echo 'pts/0' >>/etc/securetty echo 'pts/1' >>/etc/securetty echo 'pts/2' >>/etc/securetty ``` #### 5.测试telnet能否登录 `telnet 192.168.100.15` ## 二、升级Openssh #### 1.备份原ssh ```bash cp -r /etc/ssh /etc/ssh-bak-`date +%Y%m%d` ``` #### 2.下载Openssh安装包 > 本次使用升级为openssh-9.3p2版本 > 所有版本安装包下载地址:https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/ ``` 下载地址: cd /opt wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.3p2.tar.gz ``` #### 3.安装依赖包 ``` yum install -y gcc zlib zlib-devel openssl-devel ``` #### 4.编译安装 ``` cd /opt tar -zxvf openssh-9.3p2.tar.gz cd openssh-9.3p2 ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-zlib --without-openssl-header-check --with-ssl-dir=/usr/local/ssl --with-privsep-path=/var/lib/sshd ``` 执行成功后,先卸载旧版本的openssh,然后安装新版本 #### 5.卸载旧版本openssh ``` rpm -e --nodeps `rpm -qa | grep openssh` ``` #### 6.继续安装新版本包 ``` make -j 4 make install ``` 安装完成后会提示这个 ``` @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Permissions 0640 for '/etc/ssh/ssh_host_rsa_key' are too open. It is required that your private key files are NOT accessible by others. This private key will be ignored. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Permissions 0640 for '/etc/ssh/ssh_host_ecdsa_key' are too open. It is required that your private key files are NOT accessible by others. This private key will be ignored. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Permissions 0640 for '/etc/ssh/ssh_host_ed25519_key' are too open. It is required that your private key files are NOT accessible by others. This private key will be ignored. sshd: no hostkeys available -- exiting. make: [check-config] 错误 1 (忽略) ``` 别紧张,这是对key文件的警告信息,提示目前的key文件权限为640,权限太高,修改为600即可 ``` chmod 600 /etc/ssh/ssh_host_rsa_key chmod 600 /etc/ssh/ssh_host_ecdsa_key chmod 600 /etc/ssh/ssh_host_ed25519_key ``` #### 7.配置新ssh服务 ``` # 复制启动文件到/etc/init.d/下并命名为sshd cp -p /opt/openssh-9.3p2/contrib/redhat/sshd.init /etc/init.d/sshd /etc/init.d/sshd # 添加执行权限 chmod +x /etc/init.d/sshd # 添加到开启自启服务中 systemctl enable sshd /sbin/chkconfig sshd on # 允许root远程登录 sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/g' /etc/ssh/sshd_config # 配置selinux服务 sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config sed -i 's/SELINUX=permissive/SELINUX=disabled/g' /etc/selinux/config setenforce 0 # 重启sshd服务 systemctl restart sshd ``` #### 8.检查新版本是否正常升级 ``` # ssh -V OpenSSH_9.3p2, OpenSSL 1.0.2k-fips 26 Jan 2017 ``` ## 三、关闭Telnet服务 ``` systemctl disable xinetd systemctl disable telnet.socket systemctl stop xinetd.service systemctl stop telnet.socket yum remove telnet-server xinetd -y ```
admin
2024年6月8日 12:54
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码