Linux

如何指示 Apache HTTPd 僅服務於特定 IP 地址組

  • July 2, 2022

我在 Fedora Linux 上使用 Apache HTTPd 伺服器來提供僅供內部使用的 Web 套件。但是,我的機器只有一個公共 IP 地址。

我想將 HTTPd 配置為接受網頁並將其提供給屬於指定 IP 地址組的客戶端,而不是提供給整個 www。是否可以以這種方式配置httpd?或者我是否需要配置我的機器防火牆而不是 HTTPd 伺服器來為我做同樣的事情?

防火牆將允許您限制對 Web 伺服器埠的訪問,但如果您的 Web 伺服器既有公開的公共內容,也有您只想與來自特定 IP 地址範圍的使用者共享的內容,那麼您需要應用訪問控制在 apache httpd Web 伺服器級別,不能使用防火牆。

您通常在 apache 配置文件中設置 Apache 訪問控制並保護目錄:

<Directory "/www/docs">
 Require ip 10 172.20 192.168.2
</Directory>

Require ip語法用於向 10.0.0.0/8 、 172.20.0.0/16 和 192.168.2.0/24 IP 地址範圍內的使用者授予訪問權限。

有關如何設置更複雜的訪問控制和身份驗證的範例,請參閱https://httpd.apache.org/docs/2.4/howto/auth.html 。

引用自:https://serverfault.com/questions/1104636