【问题标题】:How to completely disable access to nginx using server IP address?如何使用服务器 IP 地址完全禁用对 nginx 的访问?
【发布时间】:2021-06-29 12:19:46
【问题描述】:

由于我使用启用了 DNS 代理的 Cloudflare,我不希望用户找出/使用原始服务器 IP 地址并绕过 Cloudflare 安全和保护措施(在此服务器上托管多个具有不同域的网站) .

经过一些研究,我能找到的唯一解决方案是将下面的代码添加到默认站点配置中。

server {
    listen      80 default_server;
    listen      [::]:80 default_server;
    server_name "";
    return      444;
}

这种方法“有效”,但是会出现一些问题:

  1. 仍然可以使用https://访问该网站
  2. 此方法似乎并没有真正禁用使用 IP 地址的 nginx 访问,它只是不返回任何内容。

有没有更好的方法来禁用使用 IP 地址的 nginx 访问/是否可以改进我当前的方法?

Server OS Nginx version
Ubuntu 20.04.2 LTS (GNU/Linux 5.4.0-72-generic x86_64) nginx/1.18.0

【问题讨论】:

    标签: ubuntu nginx configuration cloudflare


    【解决方案1】:

    您可以在 L4 防火墙上为仅使用 Cloudflare 的 IP 的源服务器配置 https 允许规则 https://www.cloudflare.com/ips/

    另一种方法是,您可以在源服务器上运行 Cloudflare 隧道。 您将不必再发布您的原始 IP。 https://www.cloudflare.com/products/tunnel/ https://developers.cloudflare.com/cloudflare-one/connections/connect-apps

    【讨论】:

      猜你喜欢
      • 2016-12-22
      • 2015-12-22
      • 2015-04-23
      • 2017-07-12
      • 1970-01-01
      • 2020-01-14
      • 2017-01-10
      • 2021-12-28
      • 1970-01-01
      相关资源
      最近更新 更多