免责声明:所有信息/资源均收集转载自网络,仅供参考,解压及网盘密码 1024
一般网站,都会绑定域名解析到 VPS 主机服务器真实 ip 上。服务器对外提供服务,如果也支持 ip 直接访问,会有危险。比如,恶意攻击者,可以将它自己的域名(未备案域名)也解析到此服务器 ip,然后去做些违反法律法规的事,封 VPS 服务器 ip 甚至罚款喝茶也会影响到你。
「Nginx Apache 禁止 ip 直接访问 防止 VPS 主机 ip 被恶意解析:https://ostarted.com/34」如何防止 VPS 主机 ip 被恶意解析?
解决方法:禁止 ip 直接访问网站,可以别恶意解析 VPS 服务器 ip
Nginx Apache 禁止 ip 直接访问
在 nginx 默认配置文件 nginx.conf 文件找到 默认 80 server 配置段,添加一行 return 444; 或者 rewrite ^(.*) https://www.sample.com permanent; 即可。
「Nginx Apache 禁止 ip 直接访问 防止 VPS 主机 ip 被恶意解析:https://ostarted.com/34」server
{
listen 80;
server_name _;
return 444;
}
444 No Response:Nginx 上 HTTP 服务器扩展。服务器不向客户端返回任何信息,并关闭连接(有助于阻止恶意软件)。
当然,不一定非得返回 444 状态码,403 也可以,500 应该也没问题。另外除了直接返回状态码,还可以直接转发到特定 url
server {「Nginx Apache 禁止 ip 直接访问 防止 VPS 主机 ip 被恶意解析:https://ostarted.com/34」
listen 80;
server_name _;
rewrite ^(.*) https://www.sample.com permanent;
}
Apache 禁止 ip 直接访问
没有环境实测,有需要参考一下。
CentOS 配置文件路径一般为:/etc/httpd/conf/httpd.conf ;Debian 或者 Ubuntu 系统,则配置文件路径为:/etc/apache2/sites-available/000-default.conf
Apache 2.2 版本代码
将 8.8.8.8 替换为 VPS 主机服务器真实 ip 即可。
「Nginx Apache 禁止 ip 直接访问 防止 VPS 主机 ip 被恶意解析:https://ostarted.com/34」<VirtualHost *:80>
ServerName 8.8.8.8
<Location />
Order Allow,Deny
Deny from all
</Location>
</VirtualHost>
禁止通过 ip 访问 443 端口:
<VirtualHost *:443>
ServerName 8.8.8.8
Redirect 403 /
DocumentRoot /
</VirtualHost>
Apache 2.4 版本代码
<VirtualHost *:80>
ServerName 8.8.8.8
DocumentRoot /var/www
<Location />
Require all denied
</Location>
</VirtualHost>
禁止通过 ip 访问 443 端口:
<VirtualHost *:443>
ServerName 8.8.8.8
Redirect 403 /
DocumentRoot /
</VirtualHost>
另外 Ubuntu 系统种,如果 Apache 配置了多个虚拟主机,部署了多个域名网站,那么多个配置文件会按默认排序规则,排在最前面的网站配置最先读取和生效。
感谢支持 Thanks!解压及网盘密码 1024