怎样使用端口碰撞为SSH登录确保安全?
发布时间:2022-02-10 09:59:37 所属栏目:安全 来源:互联网
导读:Secure Shell是登录到远程Linux服务器的一种事实上的标准。多年来,它为许多管理员提供了良好的服务。但仅仅因为名称中有Secure(安全)这个词,并不意味着它总是很安全。事实上,您总是可以采取一些措施使SSH更安全。 其中一个方法就是借助端口碰撞(port knoc
Secure Shell是登录到远程Linux服务器的一种事实上的标准。多年来,它为许多管理员提供了良好的服务。但仅仅因为名称中有“Secure”(安全)这个词,并不意味着它总是很安全。事实上,您总是可以采取一些措施使SSH更安全。 其中一个方法就是借助端口碰撞(port knocking)。现在,在我们开始之前,我想明确指出,任何使用SSH的人都应该始终做两件事: 使SSH保持最新版本。使用SSH密钥验证。应该将以上两项都视为使用Secure Shell的标准优秀实践。话虽如此,我还是想向您介绍一种已存在一段时间的工具。其想法是在您的服务器上创建两个碰撞序列,一个打开SSH端口,一个关闭该端口。在您发送打开碰撞序列之前,SSH访问是被关闭的。发送打开序列后,您可以通过SSH连接到该机器。完成工作后,发送关闭序列,SSH将重新被锁起来。 这并不完美,但结合SSH密钥验证,SSH在您的服务器上会安全得多。下面介绍如何安装和使用knockd以便在SSH上进行端口碰撞。您需要什么?我将在Ubuntu Server 20.04 上进行演示,因此您需要该操作系统的运行中实例和拥有sudo权限的用户。您还需要在客户机上拥有sudo权限的用户。至于客户端,我将在Pop!_OS上进行演示。 如何安装knockd?我们要做的第一件事是在服务器和客户端上安装knockd。登录到服务器,并执行命令:复制sudo apt-get install knockd -y;1.前往客户端,执行同样的命令。安装完后,您需要注意几个配置。 如何配置knockd?我们需要做的第一件事是配置knockd 服务。使用以下命令打开knockd配置文件:复制sudo nano /etc/knockd.conf1.在该文件中,将打开序列从默认的7000,8000,9000改成您想要使用的任何端口序列。您最多可以为此配置七个端口。要配置的行在[openSSH]下:复制 sequence = 7000,8000,90001.将端口号改成您能记住的序列。 接下来,以相同的方式更改关闭序列(使用不同的端口号)。这一行在[closeSSH]下:复制sequence = 9000,8000,70001接下来,您需要在[openSSH]命令行中将-A改成-I,以便它将是iptables链中的第一条规则。保存并关闭文件。 (编辑:PHP编程网 - 黄冈站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |