百度一下关键词“用宝塔板搭建云服务器,防止IP访问和恶意域名解析”。有许多版本和不同的说法。宝塔面板官方论坛于2017年7月由“河魔”老大“nginx环境”《禁止ip访问(反恶意解析)教程》发布,但线程响应无法阻止443端口的访问,10月2017年,宝塔面板热心用户“sjzxyzp”发表了《APACHE环境下禁止ip访问(反恶意解析)教程》,由于教程发布时间较长,宝塔面板从版本< @5.x到版本6.x,兄弟对象向宝塔官方求助,获取最新方法,
什么是恶意解析?
恶意解析其实并不复杂。如果你的网站可以通过IP直接访问,而其他人通过A记录直接将域名解析为你的IP地址,那么,访问这个域名就会得到一个和你的网站一模一样的网站。而你自己也找不到。
恶意解析的后果是什么?
恶意解析的后果很可怕。一般来说,有以下后果:
他人域名产生的流量费用和CDN费用由您自行承担。
搜索引擎也可能包含其他人的域名,因为重复的网站,你的域名可能是K。
如果您加入广告网络,您也可能会被禁止进入广告网络。
如果其他域名被CC或DD攻击,你也会遭受损失,甚至被服务商封杀。
如何防止IP访问和恶意域名解析
步骤1:登录宝塔面板并创建一个新的默认站点。比如创建一个默认站点127.0.0.1,这样所有未绑定该站点的域名都会访问这个默认站点。
步骤 2:为新创建的默认站点配置 SSL 证书。这个证书是任意生成的,防止443端口访问。如果没有配置证书,只能阻止默认的80端口访问。
第三步:在本站的伪静态配置文件中,添加如下代码:
location / {
return 444;
}
以上是宝塔官方给出的最新解决方案。为了便于比较和学习,对象兄弟还全面分享了网络上的优质方法,供孩子们参考。
Nginx 拦截恶意域名解析
以宝塔为例,在对应网站的 nginx.conf 配置文件中增加了一个新的 server { }。建议使用 444 状态码来禁止获取任何资源。
要仅阻止对端口 80 的访问,请添加
server {
listen 80 default_server;
return 444;
}
如果80和443端口被阻塞,添加如下代码并添加证书crt和key的路径
server {
listen 80 default_server;
listen 443 ssl default_server;
return 444;
ssl_certificate #crt路径
ssl_certificate_key #key路径
}
Apache 阻止恶意解析
确定 Apache 是否启用了虚拟主机
在配置文件httpd.conf中搜索,如果有类似下面的选项,则说明虚拟主机开启,#为注释
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
进行配置文件修改
如果启用了虚拟主机,则需要修改httpd-vhosts.conf中的配置如下:
如果虚拟主机没有激活,可以直接在httpd.conf文件末尾添加如下代码:
NameVirtualHost XXX.XXX.XXX.XXX
<virtualhost XXX.XXX.XXX.XXX:80>
ServerName XXX.XXX.XXX.XXX
<Directory />
Order Allow,Deny
Deny from all
</Directory>
</virtualhost>
<virtualhost XXX.XXX.XXX.XXX:80>
ServerName www.abc.com
DocumentRoot /home/wwwroot/
</virtualhost>
修改说明:
上面代码中的XXX.XXX.XXX.XXX就是你的IP地址
首先虚拟主机被配置为拒绝任何来自该IP的访问请求,返回403错误
第二个地方的virtualhost配置为允许通过域名www.abc.com访问,网站主目录为/home/wwwroot/