apache2 - 如何仅允许未加密的访问本地网络?

apache2 - 如何仅允许未加密的访问本地网络?

我的本地网络上有一台 Linux 服务器,上面运行着一些服务。我希望能够通过我的域名以加密方式访问该服务器,但 LAN 访问仍然免费。我尝试搜索,但一无所获。使用VirtualHost服务器的内部 IP 再创建一个 IP 地址,这样外部网络就可以在不加密的情况下进行连接。

顺便问一下,是否可以基于同样的理由拒绝访问目录?

编辑:我想我会加密所有内容,而不必费心让 IP 可以访问它

答案1

我找到了答案。我只是没有在路由器上转发端口 80,并在服务器上禁用了 http 到 https 的重定向。

答案2

您可以使用 Apache 的mod_authz_core访问控制命令 - 这是一个核心模块,您不需要安装或启用任何特殊内容。

查看此处的教程:https://httpd.apache.org/docs/2.4/howto/access.html

<VirtualHost>要使用它,请在您的某个部分下进行设置<Directory>- 必须在某个部分中设置此说明,因此即使您计划使用在其他地方配置的默认目录处理,<Directory>您也应该在您的部分中有一个<Directory>部分:<VirtualHost>

<VirtualHost *:80>
    DocumentRoot "/some/docroot"
    ServerName my.domain.com

    <Directory "/some/docroot">
        <RequireAll>
            Require ip 192.168.1.0/24
        </RequireAll>
    </Directory>
</VirtualHost>

这将导致从您的 LAN 外部(此处表示为 192.168.1.0/24 - 根据您的实际 LAN 地址而变化)对端口 80 的所有调用都收到响应403 Forbidden

相关内容