如果你有一台公众可访问的服务器,黑客可以轻松扫描其IP地址,查找服务器上的开放端口(尤其是用于SSH的端口22)。将服务器隐藏起来、不让黑客看见的一种方法是使用knockd。knockd是一种端口试探服务器工具。它侦听以太网或其他可用接口上的所有流量,等待特殊序列的端口命中(port-hit)。telnet或Putty等客户软件通过向服务器上的端口发送TCP或数据包来启动端口命中。
我们在本文中将介绍如何使用knockd来隐藏在Linux服务器上运行的服务。
1.在Linux服务器上安装knockd
knockd在大多数发行版的代码仓库中都有。在基于Debian/Ubuntu/Ubuntu的服务器上,可以使用apt-get命令来安装knockd。
- sudo apt-get install knockd
如果是Fedora、CentOS或REHL用户,可以使用yum命令:
- yum install knockd
2. 安装和配置Iptables
如果你的服务器上还没有安装Iptables,请立即安装。
- sudo apt-get install iptables iptables-persistent
程序包iptables-persistent接手自动加载已保存的iptables的任务。
接下来,你需要通过iptables允许已建立的连接以及当前会话。使用下列命令来完成这项任务:
- iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
接下来,需要阻止通向端口22 SSH的所有入站连接。
- iptables -A INPUT -p tcp --dport 22 -j REJECT
不妨通过下列命令来保存防火墙规则:
- netfilter-persistent save
- netfilter-persistent reload
可以通过由你的计算机连接到服务器,进一步检查是否确实阻止了端口22。
- ssh my-server-ip
3. 配置knockd
现在是时候配置knockd默认设置了。它位于“/etc/knockd.conf”。为此,请使用下列命令,切换到knockd配置文件:
- cd /etc
- sudo leafpad knockd.conf
为了便于说明,我使用leafpad编辑器。在你的服务器上,你可以使用nano或Vi。
屏幕截图显示了knockd配置文件。
4. 启用并启动knockd服务
使用下列程序启用“/etc/default/knock”中的knockd服务。
将值从0改为1,如屏幕截图所示:
- START_KNOCKD = 1
之后,保存并关闭文件“/etc/default/knockd”。
接下来,可以使用下列命令之一来启动knockd服务:
- sudo service knockd start
或者:
- sudo systemctl start knockd
5. 是时候试探测试你的Linux服务器了
现在是时候测试你的Linux SSH服务器了。要想在指定的IP地址处打开端口22,请在计算机上使用下列命令。(你还需要在计算机上安装knockd)
- knock -v my-server-ip 7000 8000 9000
需要将“my-server-ip”换成服务器的IP地址。
现在可以使用下列命令连接到端口22 SSH:
- ssh my-server-ip
完成你通过端口22想要完成的任何操作后,可以使用下列命令关闭该端口:
- knock -v my-server-ip 9000 8000 7000
结束语
使用knockd,你尽可放心:你的SSH服务器是安全的,并且远离使用复杂扫描工具的攻击者。此外,你还完全掌控自己的SSH服务器。
分享名称:如何使用knockd让黑客看不见你的服务器?
文章路径:http://www.shufengxianlan.com/qtweb/news11/461711.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联