打印

nginx关闭默认站点/空主机头(禁止IP直接访问、防止域名恶意解析)

nginx关闭默认站点/空主机头(禁止IP直接访问、防止域名恶意解析)

默认情况下,只要将域名解析到vps的IP上,访问该域名就会访问到lnmp默认虚拟主机的默认页面。为了防止别人恶意将域名解析到自己的IP上,可以通过以下方法进行,修改/usr/local/nginx/conf/nginx.conf ,将里面的默认的虚拟主机server{}段修改为如下即可:
复制内容到剪贴板
代码:
server {
listen 80 default_server;
server_name _;
return 500;
}
当然也可以将return 500;替换为rewrite ^(.*) https://www.vpser.net permanent;   将流量导入到你指定的网站上。
最后记住,/usr/local/nginx/sbin/nginx -s reload


使用空主机头后,原默认虚拟主机下的文件,如PHPmyadmin将无法访问,需要你加个二级域名指向phpmyadmin目录就行了。

对于开启了https的用户,未添加https站点的域名,也可以https访问,只是会访问默认的https网站并提示不安全、域名证书不匹配。
开启SSL后https的空主机头的设置
复制内容到剪贴板
代码:
server {
listen 443 default_server;
server_name _;
ssl on;
ssl_certificate 随便设置一个ssl证书;
ssl_certificate_key 随便设置一个ssl证书的key;
return 500;
}

LNMP付费问题排查/LNMP技术支持/Paypal信用卡代付/代购VPS,域名,软件等 QQ 503228080 旺旺 lzhenbao
军哥淘宝店铺
QQ/旺旺仅提供代购及付费代维/问题解决等服务,其他不回复!LNMP相关问题请在本论坛发帖,提问前先搜索,按https://bbs.vpser.net/thread-2555-1-1.html 要求反馈问题!

TOP

那这样的话phpmyadmin就无法访问了

TOP

回复 2# 的帖子

你可以专门弄个二级域名绑定到phpmyadmin上。

LNMP付费问题排查/LNMP技术支持/Paypal信用卡代付/代购VPS,域名,软件等 QQ 503228080 旺旺 lzhenbao
军哥淘宝店铺
QQ/旺旺仅提供代购及付费代维/问题解决等服务,其他不回复!LNMP相关问题请在本论坛发帖,提问前先搜索,按https://bbs.vpser.net/thread-2555-1-1.html 要求反馈问题!

TOP

复制内容到剪贴板
代码:
server
        {
                listen       80;
                server_name localhost;
                index index.html index.htm index.php;
                root  /home/wwwroot;
这个实用,请问军哥,是不是修改这里?

TOP

复制内容到剪贴板
代码:
server_name localhost;
index index.html index.htm index.php;
root /home/wwwroot;
把这些替换?

TOP

回复 5# 的帖子


LNMP付费问题排查/LNMP技术支持/Paypal信用卡代付/代购VPS,域名,软件等 QQ 503228080 旺旺 lzhenbao
军哥淘宝店铺
QQ/旺旺仅提供代购及付费代维/问题解决等服务,其他不回复!LNMP相关问题请在本论坛发帖,提问前先搜索,按https://bbs.vpser.net/thread-2555-1-1.html 要求反馈问题!

TOP

这样安全性要好很多,我从前为这个吃过大亏,服务器被迫强行下架扫地出门……

如果用Pure-ftpd的话,也和phpmyadmin一样,得单独用个二级域名指一下

TOP

具体的应该怎么弄呢? 是不是也是用vhost.sh绑定上一个? 我用vhost.sh绑了一个a.domain.com到/home/wwwroot/phpmyadmin
,但是输入a.domain.com却无法打开


问题解决了,https://bbs.vpser.net/thread-3769-1-1.html

[ 本帖最后由 kuluutu 于 2011-8-15 10:56 编辑 ]

TOP

俺不用500 俺用 403

TOP

一年后总结

三种办法
一个是空头主机去除,也就是军哥的办法.但是如果我用的直接就是这个默认站点(空头主机)如何
二个是用vhost命令去弹开,向楼上说的,但是这里无端多了一个配置文件和子站点目录
三个是用反向代理去弹开.直接在conf里边加反向代理配置即可.

第一种我想比较节约资源,但是会将空头主机删除,对于需要这个默认站点的人来说,有点无奈.
2,3应该都会占用一些资源,但是2的方法,如果恶意解析的域名有一串如何?你得建立多少个文件夹.3相对折中.

TOP

我把默认目录的ftp和phpmyadmin目录改名不知道可不可以?

TOP

这个帖子太需要了,可惜沉底了,顶上来。

TOP

为什么修改后,报错呢?

TOP

呵呵,太好了,找了半天终于找到这里,搜索了半天原来是关键词不对。。。

TOP

标记一下,又学习了一个东东。

TOP