正常情况下服务器都是暴露在公网上的,难免会被人扫描并且日常爆破上万次,下面两种办法可以让你的服务器"隐藏"在公网当中

1. 服务器禁止ping

禁ping可以防止服务器被扫描,让对方误以为服务器没有工作

1.1. 宝塔

如果你的服务器安装了宝塔,点击安装->启用禁ping即可。包括以下的操作你都可以在宝塔面板中直接操作。

1.2. 手动禁ping

1.2.1. Windows

1.2.1.1. 防火墙方案

Windows XP,Windows Server 2003:
Windows防火墙 --> 高级 --> ICMP --> 设置 --> 把“允许传入回显请求”前打上勾 --> 确定 --> 大功告成。

Windows 7,Win 2008 R2,2012 R2 2016 2019:
Windows防火墙 --> 高级设置 --> 入站规则 --> 在列表里找到“文件和打印机共享(回显请求 - ICMPv4-In)” --> 右击选择启用规则,并在其属性里设置为‘阻止连接'--> 确定 --> 大功告成。
要禁止ping,去掉勾选即可.

指令方式:

netsh firewall set icmpsetting 8 disable

开启将disable去掉执行命令即可

注意:你需要开启windows的防火墙才能使上面的操作有效

1.2.1.2. 本地安全策略方案

可以从控制面板打开本地策略,这里只提供win+r,输入 secpol.msc

找到 IP安全策略,在本地计算机

在右侧点击 创建IP安全策略 点击下一步 名称可以自定义(如禁ping) ->下一页直到点击完成。会自动跳出一个窗口(如果没有跳出双击刚刚创建的策略)

点击左下角添加 点击三次下一页,出现ip筛选列表 ,点击右侧添加,输入一个自定义名称 -> 点击右侧添加->下一页-> 去掉“镜像...”前面的√ -> 下一页-> 源地址为任何ip地址-> 目标地址为我的ip地址-> 下一页-> 选择ICMP-> 下一页直到完成->点击确定。

可以看到ip筛选列表出现了刚刚创建的策略,选择上->下一页->点击右侧添加-> 安全方法选择阻止 ,点击上方的常规,名称输入刚刚创建的规则名-> 点击下一页直到完成,接着点击确定。

接着右击你刚刚创建的安全策略,点击分配。

尝试ping下你的服务器吧,可以发现已经没有响应了。

此方法参考:百度经验

1.2.2. Linux

/etc/sysctl.conf 中增加一行net.ipv4.icmp_echo_ignore_all=1
保存后输入 sysctl -p 即可
如果需要恢复将1改成0即可

不过禁ping之后,如果服务器或网络出现问题,就无法快速判断是哪个造成的问题了。

2. 修改常用服务端口

如果只是禁ping,攻击者可能会直接尝试连接常用的"高危"的服务端口,如ssh和远程桌面

2.1. 修改SSH端口

默认ssh端口是22,如果使用秘钥链接ssh可以不修改端口,如果使用密码登录建议还是换个端口。

修改/etc/ssh/sshd_config 文件,如果怕改错可以先备份下

vim  /etc/ssh/sshd_config

找到# Port 22,将#去掉后修改22位其他端口既可以,保存。

接着终端输入下面的指令或者重启服务器。

/etc/init.d/sshd restart

重启ssh服务,修改后记得放行你修改的端口。

iptables -I INPUT -p tcp --dport 端口 -j ACCEPT

不过不是经常换登录设备的话,建议还是使用ssh秘钥登录。

2.2. 修改远程桌面端口

windows远程桌面的端口是3389,如果是使用弱密码的话,很有可能被攻击者跑出密码,建议设置长密码和多符号混用并修改端口,下面是方法。

win+r 输入regedit打开注册表编辑器打开以下路径

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp

win10系的可以直接复制路径进去

找到PortNumber 修改成你想要的端口 选择十进制 点击确定即可。修改完后需要重启下服务器。

目前就先写这么多了。