1、为防止安装失败,无法用ssh做远程连接,因此先安装telnet防一手
yum -y install telnet*
systemctl enable telnet.socket
systemctl start telnet.socket
注:安全文件关闭或者修改(否则root无法telnet登录)
mv /etc/securetty /etc/securetty.bak
注:有防火墙的话需要放开23端口
firewall-cmd --zone=public --add-port=23/tcp --permanent
再重启防火墙 : systemctl restart firewalld.service
查看防火墙所有开放的端口 : firewall-cmd --zone=public --list-ports
2.安装依赖包
yum -y install zlib*
yum -y install pam-*
yum -y install gcc
yum -y install openssl-devel
3.备份原有ssh服务版本
mv /etc/ssh /etc/ssh.bak
mv /usr/bin/ssh /usr/bin/ssh.bak
mv /usr/sbin/sshd /usr/sbin/sshd.bak
4.安装openssh
下载地址:
http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/
我下载的是:openssh-9.0p1.tar.gz
tar -zxvf openssh-9.0p1.tar.gz
cd openssh-9.0p1
./configure --prefix=/usr/local/openssh --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/ssl
make && make install
5.再卸载由yum安装的openssh : yum remove openssh
6.修改配置
启动前要将新生成的sshd_config修改以下几个地方
vim /usr/local/openssh/etc/sshd_config
复制文件到相应系统文件夹
cp /root/openssh-9.0p1/contrib/redhat/sshd.init /etc/init.d/sshd
chkconfig --add sshd
cp /usr/local/openssh/etc/sshd_config /etc/ssh/sshd_config
cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd
cp /usr/local/openssh/bin/ssh /usr/bin/ssh
cp /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
cp/usr/local/openssh/etc/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub
7.启动
#启动 systemctl start sshd.service
#查看状态 systemctl status sshd.service
增加开机自启 : systemctl enable sshd.service
8.最后验证版本 : ssh -V