在做服务器漏扫时我们经常会遇到有关于OpenSSH相关的安全漏洞,本文主要给大家介绍一下有关于OpenSSH的升级方法,小伙伴们可以参考一下流程,按步骤操作,但是过程中一定会遇到各种各样的问题,需要自行解决,这里没有办法挨个问题说明,需要注意的是操作的过程中多打开几个ssh窗口,避免升级失败、窗口关闭导致ssh无法连接!!!
Index of /pub/OpenBSD/OpenSSH/portable/cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/
cd /home/fenglmssh/openssh-9.3p2
需要注意:要先卸载服务器原来的ssh
查看是否安装openssh
sudo rpm -qa | grep openssh
卸载openssh
sudo yum remove openssh
./configure --prefix=/usr/local/ssh --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl --with-zlib=/usr/local/zlib
make -j 4 && make install
/usr/local/ssh/bin/ssh -V
cp -rf openssh-9.3p2/contrib/redhat/sshd.init /etc/init.d/sshd
cp -rf openssh-9.3p2/contrib/redhat/sshd.pam /etc/pam.d/sshd.pam
cp -rf openssh-9.3p2/sshd_config /etc/ssh/sshd_config
cp -rf /usr/local/ssh/sbin/sshd /usr/sbin/sshd
cp -rf /usr/local/ssh/bin/ssh /usr/bin/ssh
cp -rf /usr/local/ssh/bin/ssh-keygen /usr/bin/ssh-keygen
chmod u+x /etc/init.d/sshd
如果没有开启root用户,这里需要注意一下操作
echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config
echo 'Subsystem sftp /usr/local/ssh/libexec/sftp-server' >> /etc/ssh/sshd_config
sudo vi /etc/systemd/system/sshd.service
[Unit]
Description=OpenSSH server daemon
After=network.target
[Service]
ExecStart=/usr/local/ssh/sbin/sshd -D
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=42s
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable sshd.service
sudo systemctl start sshd.service
ssh -V
上面是完整的升级步骤,下面是遇到过的部分问题
(1)解决方法
yum install -y openssl-devel
(2)其他常用命令
设置sshd配置文件
> cd /etc/ssh/
> vi sshd_config
// 注释该行,不注释的话会报错(注:如果不报错就不用注释了)
#Subsystem sftp /usr/libexec/openssh/sftp-server
sshd -t
【权限问题】
chmod 600 /etc/ssh/ssh_host_rsa_key
chmod 600 /etc/ssh/ssh_host_ecdsa_key
openssh升级完成同时也解决了ssh弱加密算法的漏洞问题,验证方式为如下
(3)验证ssh弱加密算法命令
nmap --script ssh2-enum-algos -sV -p 22 101.43.23.88
arcfour、arcfour128、arcfour256 属于弱加密算法 最终处理成功的截图如下
想要了解更多实用小干货
可关注我的【知乎】