安装telnet
升级openssh之前,请一定要先安装好telnet。以保证在升级openssh的过程中,即使出现错误,意外断开等情况,不能直接访问要升级的服务器,我们依然可以通过其他服务器telnet的方式进入要升级的服务器。避免升级的服务器无法访问的事故发生。
- 安装 telnet 等组件
yum install -y xinetd telnet telnet-server
-- 验证
yum list | grep telnet && yum list | grep xinetd
-
修改配置
使用
vi
修改/etc/securetty
文件,在文件最后追加四行pts/0 pts/1 pts/2 pts/3
-
修改配置,允许root用户登录
vim /etc/pam.d/login
注释掉
pam_nologin.so
所在行 -
启动
systemctl start telnet.socket xinetd
-
测试登录
登录同一网段内的其他服务器,使用
telnet
命令登录当前服务器。telnet 192.168.1.10
安装升级 openssh
准备要升级的tar包。https://mirrors.aliyun.com/openssh/portable/
-
备份之前的ssh配置信息
mv /etc/ssh /etc/ssh_bak
-
安装其他组件,不然可能会编译失败
yum -y install pam-devel yum -y install openssl-devel yum -y install zlib zlib-devel yum -y install gcc-c++
-
解压传入的tar包并编译
tar -zxvf openssh-9.3p1.tar.gz cd openssh-9.3p1 ./configure --sysconfdir=/etc/ssh --with-md5-passwords --with-pam
根据报错信息判断有哪些包没有安装,安装完成后重新编译即可
-
迁移配置文件
cp -a contrib/redhat/sshd.pam /etc/pam.d/sshd.pam cp -a contrib/redhat/sshd.init /etc/init.d/sshd
-
编译安装
make && make install
-
配置文件修改
sed -i "s/SSHD=\/usr\/sbin\/sshd/SSHD=\/usr\/local\/sbin\/sshd/g" /etc/init.d/sshd echo "PermitRootLogin yes" >> /etc/ssh/sshd_config -- 允许root用户登录
-
设置开机启动
chmod +x /etc/init.d/sshd chkconfig --add sshd chkconfig sshd on systemctl daemon-reload systemctl restart sshd