Nginx禁止其他域名访问

  |   0 评论   |   2,472 浏览

    Nginx禁止其他域名访问

    今天发现自己的服务器域名被恶意的指向了;

    什么是恶意解析?

    一般情况下,要使域名能访问到网站需要两步,第一步,将域名解析到网站所在的主机,第二步,在web服务器中将域名与相应的网站绑定。但是,如果通过主机IP能直接访问某网站,那么把域名解析到这个IP也将能访问到该网站,而无需在主机上绑定,也就是说任何人将任何域名解析到这个IP就能访问到这个网站。可能您并不介意通过别人的域名访问到您的网站,但是如果这个域名是未备案域名呢?一旦被查出,封IP、拔线甚至罚款的后果都是需要您来承担的。某些别有用心的人,通过将未备案域名解析到别人的主机上,使其遭受损失,这是一种新兴的攻击手段

    可以在Nginx上设置禁止通过IP访问服务器,只能通过绑定域名访问(同时设置未绑定域名返回500错误或者跳转到我的域名首页)
    方法比较简单,个人建议:只能通过域名来访问网站,而不能通过IP来直接访问!!

    打开nginx.conf

    [root@aceie conf]# pwd
    /usr/local/nginx/conf
    [root@aceie conf]# ll -h
    total 68K
    -rw-r--r-- 1 root root 1.1K Nov 22 18:32 fastcgi.conf
    -rw-r--r-- 1 root root 1.1K Nov 22 18:32 fastcgi.conf.default
    -rw-r--r-- 1 root root 1007 Nov 22 18:32 fastcgi_params
    -rw-r--r-- 1 root root 1007 Nov 22 18:32 fastcgi_params.default
    -rw-r--r-- 1 root root 2.8K Nov 22 18:32 koi-utf
    -rw-r--r-- 1 root root 2.2K Nov 22 18:32 koi-win
    -rw-r--r-- 1 root root 5.1K Nov 22 18:32 mime.types
    -rw-r--r-- 1 root root 5.1K Nov 22 18:32 mime.types.default
    -rw-r--r-- 1 root root 2.9K Nov 23 11:18 nginx.conf
    -rw-r--r-- 1 root root 2.6K Nov 22 18:32 nginx.conf.default
    -rw-r--r-- 1 root root  636 Nov 22 18:32 scgi_params
    -rw-r--r-- 1 root root  636 Nov 22 18:32 scgi_params.default
    -rw-r--r-- 1 root root  664 Nov 22 18:32 uwsgi_params
    -rw-r--r-- 1 root root  664 Nov 22 18:32 uwsgi_params.default
    -rw-r--r-- 1 root root 3.6K Nov 22 18:32 win-utf
    [root@aceie conf]# 
    

    step1 绑定网站域名
    在server段server_name行 添加域名

    server {
            listen       80;
            server_name  www.aceie.cn;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                root   html;
                index  index.html index.htm;
            }
    
            #error_page  404              /404.html;
    
            # redirect server error pages to the static page /50x.html
            #
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
    }
    

    step2 设置禁止IP及未绑定域名访问
    加入以下代码到配置文件中(整段)
    ①返回500错误

    server {
            listen 80 default;
            server_name _;
            return 500;
    }
    

    ②跳转到自己域名首页

    server {
            listen 80 default;
            server_name _;
            rewrite ^(.*) http://www.aaaa.cn permanent;
    }
    

    step3 重启nginx
    这样,未在nginx内绑定的域名及ip访问时将返回500错误或者跳转到本人域名首页.

    注意:step2中的①和②选择一个即可。


    技术改变人生 Q群:702101215
    爱学习:www.aixx123.com


    技术改变人生 Q群:702101215 程序之家3群
    IT资源网:www.pplsunny.top
    程序之家5群:757629668

    评论