如何让Linux隐身达到「黑洞」(silently drop)效果(RockyLinux8/9,CentOS8)

原创
2024/12/14 20:43
阅读数 64

1.禁ping,命令如下:

#firewall-cmd --permanent --add-rich-rule='rule icmp-type name="echo-request" drop'
#firewall-cmd --reload

2.修改sshd的端口

使用文本编辑器编辑 /etc/ssh/sshd_config 文件:

#vi /etc/ssh/sshd_config

找到 #Port 22 行,将其取消注释并修改为:

Port 22
Port 12345

保存并退出编辑器,这里我们让sshd同时监听22和要换的12345端口。

3.配置防火墙,放行12345端口

#firewall-cmd --permanent --add-port=12345/tcp
#firewall-cmd --reload

4.SELinux 配置(如果启用 SELinux)

首先检测是否启用了SELinux

#sestatus -v
SELinux status:                 enabled

或者禁用状态。
#sestatus -v
SELinux status:                 disabled

若启用,需要继续下面的命令添加12345端口并验证结果。

#semanage port -a -t ssh_port_t -p tcp 12345

#semanage port -l | grep ssh_port_t

5.重启 sshd 服务让配置生效

#systemctl restart sshd

6.在另一台主机上通过新端口连接:

ssh -p 12345 user@your_server_ip

如果连通正常,即表示修改成功。

7. sshd停止22端口。

 使用文本编辑器编辑 /etc/ssh/sshd_config 文件:

#vi /etc/ssh/sshd_config

找到 #Port 22 行,将其取消注释并修改为:

#Port 22
Port 12345

 重启 sshd 服务让配置生效

#systemctl restart sshd

8.防火墙封禁sshd的22端口(drop包)

#firewall-cmd --permanent --add-rich-rule='rule family="ipv4" port port=22 protocol="tcp" drop'
#firewall-cmd --reload

9.验证

#ping your_server_ip
#ssh user@your_server_ip
或者
#telnet your_server_ip 22

ping和ssh或者telnet都会超时,达到「黑洞」(silently drop)效果:

服务器对 ICMP echo 请求直接丢弃,不返回任何报文。客户端会看到的是请求超时(Request timed out)。

服务区端对22 端口的访问进行「黑洞式」处理,即对来自外部的请求包不回应、不拒绝,直接丢弃(DROP)。这样对方会感到连接该端口时只是超时无响应,从而达到隐藏和迷惑的效果。

若还要加固:

可以禁用root登录,采用一个更复杂的普通用户(比如姓名-学号/工号的方式,zhangsan-2024008)登录后再su到root账号。

ssh禁止用户密码登录,只允许公约登录。

改天再加上这些内容。
 

 

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
0 评论
0 收藏
0
分享
返回顶部
顶部