一、OpenSSH用于远程登录,一旦升级失败用不了,将无法远程登录,安装telnet-server并启用telnet备用。
不少服务器已经安装了telnet服务了,只需要将/etc/xinetd.d/telnet文件中的disable=no,重启服务即可service xinetd restart,
ssh升级完成后再修改disable=yes重启服务关闭telnet登录即可。
1、安装telnet服务
# yum install telnet*
# rpm -qa |grep telnet
telnet-server-0.17-47.el6_3.1.x86_64
telnet-0.17-47.el6_3.1.x86_64
2、修改telnet服务配置文件
# vi /etc/xinetd.d/telnet
# default: on
# description: The telnet server serves telnet sessions; it uses \
# unencrypted username/password pairs for authentication.
service telnet
{
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_failure += USERID
disable = yes
}
将disable=yes改为disable=no
注意:安装telnet-server服务后,系统才会有/usr/sbin/in.telnetd文件
3、telnet服务启动
因为 telnet服务是由xinetd 调用,所以只要重新启动 xinetd即可
# service xinetd start|stop|restart
二、升级ssh服务
1、安装引用库【如果是升级,很多服务器已经安装过了】
yum install openssl-devel pam-devel -y
2、下载OpenSSH:
cd /opt/
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.1p1.tar.gz
解压:
tar -xvf openssh-9.1p1.tar.gz
备份:
cp -r /etc/ssh/ /etc/ssh_old/
卸载旧OpenSSH:
yum remove openssh -y
rm -rf /etc/ssh/*
进入
cd openssh-9.1p1
开始编译安装:
./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-zlib --with-md5-passwords --with-pam && make && make install
如果顺利,你将看到最后2行:
ssh-keygen:......ECDSA ED25519
/usr/sbin/sshd......
至此一切顺利,接下来的操作:
cp -a contrib/redhat/sshd.init /etc/init.d/sshd
cp -a contrib/redhat/sshd.pam /etc/pam.d/sshd.pam
chmod +x /etc/init.d/sshd
chkconfig --add sshd
chkconfig sshd on
修改配置,允许root登录和证书登录:
vi /etc/ssh/sshd_config
将 PasswordAuthentication yes 注释打开
配置 PermitRootLogin yes
3、重启服务完成
service sshd restart
验证是否成功 telnet 127.0.0.1 22 如果回显是 SSH-2.0-OpenSSH_9.1,那么代表openssh的版本为9.1版本
4、以上顺利的情况,
不顺利的情况,如配置编译OpenSSH遇到报错:OpenSSH configure: error: OpenSSL library not found.
可尝试下面命令:
./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/lib64/ --with-zlib --with-md5-passwords --with-pam --with-ssl-engine && make && make install
也可以下载OpenSSL编译
wget https://www.openssl.org/source/openssl-1.1.1j.tar.gz
tar -xf openssl-1.1.1j.tar.gz
cd openssl-1.1.1j
./config --prefix=/usr/local/openssl shared
make
make install
安装OpenSSL成功
vi /etc/ld.so.conf
添加一行:
/usr/local/openssl/lib
保存后执行:
ldconfig
回到OpenSSH目录执行:
./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/openssl --with-zlib --with-md5-passwords --with-pam && make && make install
安装成功后,重复配置步骤(上述cp -a 开始)
联系客服