![cd926bbbeadaba465702a806fccf5650.png](https://i-blog.csdnimg.cn/blog_migrate/afa8101c6e67a9c8357cb7a993f991cc.jpeg)
yum install -y gcc gcc-c++ glibc make autoconf openssl openssl-devel pcre-devel pam-devel
yum install -y pam* zlib*
wget https://openbsd.hk/pub/OpenBSD/OpenSSH/portable/openssh-8.0p1.tar.gz
wget https://ftp.openssl.org/source/openssl-1.0.2s.tar.gz
mv /usr/bin/openssl /usr/bin/openssl_bak
mv /usr/include/openssl /usr/include/openssl_bak
tar -xvf openssl-1.0.2s.tar.gz
cd openssl-1.0.2s/
./config shared && make && make install
以上命令执行完毕,echo $?查看下最后的make install是否有报错,0表示没有问题
echo $?
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
命令行执行下面2个命令加载新配置
echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
/sbin/ldconfig
查看版本
openssl version
![31825d626b16f1af0a8850b530ccd6bd.png](https://i-blog.csdnimg.cn/blog_migrate/5057ec2a2f38bb8f562d9cc8a2d87589.jpeg)
tar -xvf openssh-8.0p1.tar.gz
可能文件默认显示uid和gid数组都是1000,这里重新授权下。不授权可能也不影响安装(请自行测试)
chown -R root.root openssh-8.0p1/
cd openssh-8.0p1/
rm -rf /etc/ssh/*
./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-openssl-includes=/usr/local/ssl/include --with-ssl-dir=/usr/local/ssl --with-zlib --with-md5-passwords --with-pam
make
make install
vi /etc/ssh/sshd_config
修改配置文件最终为如下内容,其他的不要动
sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/g' /etc/ssh/sshd_config #或手动修改PermitRootLogin no 修改为 PermitRootLogin yes 允许root远程登陆
![f4d679270c77ea9a31157ef6e6ad692f.png](https://i-blog.csdnimg.cn/blog_migrate/f460ac0b88f329b7a737d13b33205bbc.jpeg)
sed -i 's/#UseDNS no/UseDNS no/g' /etc/ssh/sshd_config #或手动修改#UseDNS no 修改为 UseDNS no
![ec7e785e6976f06ce27329038341368e.png](https://i-blog.csdnimg.cn/blog_migrate/851103542935ab72eb240c9bc195d88b.jpeg)
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
systemctl enable sshd
把原先的systemd管理的sshd文件删除或者移走或者删除,不移走的话影响我们重启sshd服务
mv /usr/lib/systemd/system/sshd.service /tmp
如果遇到无法删除直接进入目录进行删除
systemctl enable sshd
systemctl start sshd