IP地址的Apache身份验证

IP地址的Apache身份验证,apache,authentication,Apache,Authentication,我是apache新手,如果这是一个新手问题,我很抱歉。我有一个反向代理设置(和工作),代码如下,包括工作身份验证: <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/html ProxyPass /PIZZA/ http://localhost:3636/PIZZA/ ProxyPassReverse /PIZZA/ http://localhost:3636/PIZZA/ Proxy

我是apache新手,如果这是一个新手问题,我很抱歉。我有一个反向代理设置(和工作),代码如下,包括工作身份验证:

<VirtualHost *:80>

ServerAdmin webmaster@localhost
DocumentRoot /var/www/html

ProxyPass /PIZZA/ http://localhost:3636/PIZZA/
ProxyPassReverse /PIZZA/ http://localhost:3636/PIZZA/
ProxyPreserveHost On

<Location /PIZZA/>
AuthUserFile /etc/USER_PWD/PIZZA_PWD
AuthName "Password Protected"
AuthType Basic
require valid-user
</Location>

</VirtualHost>

服务器管理员webmaster@localhost
DocumentRoot/var/www/html
代理通行证/比萨饼/http://localhost:3636/PIZZA/
ProxyPassReverse/PIZZA/http://localhost:3636/PIZZA/
代理主机
AuthUserFile/etc/USER\u PWD/PIZZA\u PWD
AuthName“密码保护”
AuthType Basic
需要有效用户
如果我去做我的/PIZZA/url,上面的身份验证就起作用了

但是,如果我为同一url(例如:192.168.1.11:3636/PIZZA/)键入源IP地址,则网页加载时无需验证

我的问题是,有没有办法验证特定的源ip地址?像下面这样的东西(不起作用)


AuthUserFile/etc/USER\u PWD/PIZZA\u PWD
AuthName“密码保护”
AuthType Basic
需要有效用户

任何帮助都将不胜感激。谢谢

在第二种情况下,您甚至都没有访问Apache,因此任何Apache配置都不会产生任何影响。如果您希望后端服务器只接受来自代理服务器的连接,则必须正确配置后端服务器(或者指望它通过TCP无法访问)

谢谢您的响应。尝试进行第二次身份验证可能是新手犯的错误

阿卡斯卡-你的回答为我指明了正确的方向,我成功了。我基本上只是在防火墙中阻止了对端口的访问,这起到了作用

如果你不给我指出正确的方向,我永远也不会明白这一点,所以谢谢

您不希望在侦听端口3636的后端服务器中实现附加身份验证。您只需要在网络级别上阻止对该端口的所有请求,这些请求不是来自系统本身。因此,请使用您的网络包过滤器(“防火墙”)进行过滤。
<Location http://192.168.1.11:3636/PIZZA/>
AuthUserFile /etc/USER_PWD/PIZZA_PWD
AuthName "Password Protected"
AuthType Basic
require valid-user
</Location>