如何隐藏服务器真实IP,防止被攻击?

  • A+
所属分类:Network Security

网络安全,隐藏IP,如何隐藏服务器真实IP,防止被攻击?

1、应用仅监听本地端口
确保你的服务监听的仅为本地连接,该项与你说采用的服务器软件无关
例如:Apache服务器应该确保/etc/apache2/ports.conf配置中,监听应为

1
Listen 127.0.0.1:80

Nginx服务器/etc/nginx/nginx.conf配置文件中应该为:

1
listen 127.0.0.1:80;

2、禁止目录列表服务
Apache:

1
2
3
<Directory /var/www/>
Options -Indexes
</Directory>

Nginx:

1
2
3
location / {
    autoindex off;
}

3、禁用详细签名和错误报告
这是为了确保您的服务器指纹很小,没有特定的标头或唯一的版本号来跟踪您。
(1)禁用服务器信息和服务器状态(仅适用于Apache)
在某些配置上,Apache默认显示/ server-info和/ server-status页面泄漏内部数据(例如,其他用户请求的URL)。 您可以通过从httpd.conf中删除mod_info或在配置文件中注释掉指令轻松地禁用它

(2)删除服务器签名
这样可以确保您的网络服务器的版本和OS服务器名称不会在服务器标题和默认错误网页(404、500等)内泄漏。
在Apache上,只需将以下指令添加为默认的httpd.conf文件(在Debian 8上,您可以直接编辑/etc/apache2/conf-enabled/security.conf):

1
2
ServerSignature Off
ServerTokens Prod

在Nginx上,禁用nginx.conf中的server_tokens:

1
2
3
http {
    server_tokens off;
}

(3)禁用应用程序错误报告
这取决于您使用的后端语言(PHP,NodeJS,Python等),如何禁用错误报告请自行搜索各种程序的文档。
大多数错误报告(堆栈跟踪,内存转储等)都可能泄漏您的IP地址或其他相关信息:全部禁用!

4、修复你的缺陷
保持服务器上的程序更新到最新版本,检查程序是否有SQL注入的问题。
禁用不需要的服务,遵守最小权限原则,并分隔Web应用程序的不同层。

5、禁用服务器发送邮件(请使用第三方的邮件服务,使用SMTP收发信)
某些Web应用程序正在发送验证电子邮件,这些电子邮件可能会将您的IP地址泄漏给收件人。

6、使用CDN且使用SSL连接

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: