如何设置 apache 以仅允许本地设备连接到我的网站/应用程序?

如何设置 apache 以仅允许本地设备连接到我的网站/应用程序?

大家好,我对这个真的很陌生,如果我搞错了所有的术语,请原谅我。我已经设法为我的小企业运行了一个 lamp-server,并创建了一个在服务器上运行的小型 webapp。如何配置 apache 以仅允许同一网络中的其他设备连接并限制其他所有人的访问?我试图实现的是否称为 Intranet 服务器?如果是,我应该注意哪些安全方面?

提前致谢!我期待向你们学习。

答案1

Allow、Satisfy 和相关指令已被弃用,它们仅作为模块的一部分用于向后兼容mod_access_compat

新方法是使用模块mod_authz_hostRequire指令。(关联

不建议将两者混合使用。引用这个官方来源

mod_access_compat 提供的 Allow、Deny 和 Order 指令已弃用,并将在将来的版本中消失。您应避免使用它们,并避免使用推荐使用它们的过时教程。

如果你想限制到本地网络,你可以这样做

<Directory /var/www/ncp-web/>
  Require host localhost
  Require ip 127.0.0.1
  Require ip 192.168
  Require ip 10
</Directory>

删除所有允许指令。

答案2

只需在 Apache 配置中创建一个 VirtualHost 来限制对它的访问即可。这是一个示例:

<VirtualHost *:80>
    DocumentRoot "/var/www/"
    ServerName www.example.com      

   <Directory "/var/www/">
      Options Indexes FollowSymLinks
      AllowOverride all
      Order deny,allow
      Allow from all
      Require 192.168.0.1/24
   </Directory>    
</VirtualHost>

提供Require了多种允许或拒绝访问资源的方法。在我的示例中,它仅限制对子网 192.168.0.1/24 的访问。

答案3

您可以使用-Listen 指令选项来接受两个指定接口和端口号上的连接

更改 ports.conf 使其包含:

监听 127.0.0.1:80 监听 127.0.0.1:8000

请参阅链接了解详细信息:http://httpd.apache.org/docs/2.0/mod/mpm_common.html#listen

{或者}

在您启用站点功能的网站中。

应限制 Apache 服务仅向 localhost 以外的任何人开放,具体服务范围如下:

顺序拒绝,允许拒绝所有允许来自 127.0.0.0/255.0.0.0 ::1/128

相关内容