在使用 LNMP
搭建的 Linux
环境下,安装了 BT 面板来搭建站点,但当我们在服务器上安装了代理软件,我们不想让别人通过代理 IP 直接访问我们的某些站点。需要禁止某些 IP 访问某些站点,或者禁止某些 IP 进行恶意解析,可以按照下面的方法进行设置:
编辑修改文件/www/server/panel/vhost/nginx/0.default.conf
将默认的配置:
1 2 3 4 5 6 7
| server { listen 80; server_name _; index index.html; root /www/server/nginx/html; }
|
修改为:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| server { listen 80; listen 443 ssl http2; server_name _; index index.html; root /www/server/nginx/html;
# DEFAULT SSL CONFIG ssl_certificate /www/server/panel/vhost/cert/0.default/fullchain.pem; ssl_certificate_key /www/server/panel/vhost/cert/0.default/privkey.pem; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5; ssl_prefer_server_ciphers off; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; add_header Strict-Transport-Security "max-age=31536000";
# 关键设置:直接关闭连接 return 444; }
|
return 444; 是 Nginx 独有的指令,它会直接断开连接,不返回任何内容,非常适合用于拦截恶意请求 。添加了这一行后,当用户访问你的站点时,Nginx 会直接返回一个空响应,并断开连接。这样,用户将无法访问你的站点,除非被允许访问的 IP 地址。
致力于网站建设与Web开发。喜欢新事物,关注前后端动态,对新的技术有追求, 做一个优秀的web全栈工程师。