我似乎无法看到任何文件,但这似乎是一个明显的特点。 我想提供一个包含基本authentication用户列表的文件。 每次添加新用户时,我都不想编辑HAProxyconfiguration文件。 该文档仅给出在文件中直接指定的用户的示例。 我错过了什么吗?
我有两个文件夹,F1和F2,在我的公共文件夹下,每个都有一个.htaccess文件。 F1受到.htaccess中的基本身份validation的保护,如下所示: AuthName "Restricted Area" AuthType Basic AuthUserFile /home/myaccount/.htpasswd AuthGroupFile /dev/null require valid-user 我正在从F2重写一个url到F1,如下所示: RewriteRule ^f2file\.php$ ../F1/f1file.php [NC,L] 这个重写很有效,但是我用我在F1中设置的基本authentication来挑战我。 有没有办法发送基本身份validation与重写,或绕过基本身份validation从本地文件夹重写时? 我试过设置一个像这个问题一样的环境variables: SetEnvIf Request_URI ^f2file\.php$ ADD_BASIC_AUTH RequestHeader set Authorization "Basic XXXXXXXX" env=ADD_BASIC_AUTH 其中XXXXXXXX是user:pass的base 64编码值,如上面问题所述。 但是,这不起作用,它仍然挑战我的凭据,也许是因为我没有做重写作为代理? 有任何想法吗? 谢谢!
我读过使用客户端证书保护服务比使用TLS和基本身份validation的组合更安全。 客户端证书在安装复杂性和性能方面有很大的缺陷,所以我正在寻找客户端证书更安全的更具体的原因,以及他们certificate合理的情况的一些例子。 谢谢!
我正在做一个大学项目的networking安全分析。 服务器使用iis的基本authentication,与ssl集成。 我正在考虑暴力攻击的可能性。 我知道好的策略需要复杂的密码,每隔几天更改一次密码等。但是有一个系统,经过5次错误的尝试(例如)阻止帐户1小时,这有助于对这些攻击有更高的安全性。 我问的是如果有这种保护。 谢谢
我有一个内部服务器,需要重写入站请求到另一个内部框,出于愚蠢的原因,这两台机器都启用了基本身份validation。 为了解决auth的两个级别,并且因为这些只是内部服务器,所以我认为我可以这样做: RewriteCond %{REQUEST_URI} /api/service RewriteRule /api/service/(.*) http://uname:[email protected]/$1 [L,P] 我的期望是,uname:这个重写得到应用的时候,pword将会在下一个服务器上进行。 我认为'P'标志导致这种情况不会发生,但是我要求这是一个代理请求,因为从请求发起的浏览器不会响应来自不同URI的响应而不是请求。 谢谢
我刚刚在Ubuntu 11.04的VMWare Workstation上安装了Apache Web Server。 我创build了一个基本的HTML页面,将其命名为index.html,并将其放在/ var / www目录(文档根目录)中。 我可以从我的主机操作系统(Windows 7)访问此网页,方法是将浏览器指向: http://192.168.2.2/index.html 其中,192.168.2.2是Ubuntu VM的IP地址。 接下来,为了testing.htaccess文件的各种configuration,我在/ var / www中创build了一个名为members的新目录。 在这个目录下面,我创build并放置了一个.htaccess文件,其configuration如下: AuthUserFile /www/Neon/auth/.htpasswd AuthName "neon's home" AuthType Basic require valid-user IndexIgnore */* 我创build了一个目录path,如/ var / www / Neon / auth / 然后在其中放置一个.htpasswd文件。 将用户名和散列放在.htpasswd文件中:我创build了一个用户名“neon”,并计算了密码的DES散列并将其放在.htpasswd文件中,格式为: username:hash 现在,当我尝试访问网页时: http://192.168.2.2/members/ : http://192.168.2.2/members/ 它不会提示我用popup框input用户名和密码。 相反,它只是显示放置在成员目录内的index.html。 我想得到这个configuration工作:)
Apache在我的设置中充当反向代理。 在端口8081上运行的应用程序服务器需要一个有效的Authorization标头。 标题由客户端应用程序设置。 Apache似乎删除这个头。 它没有到达端口8081上的服务器。 <VirtualHost mydomain.com:443> ServerName mydomain.com ServerAlias www.mydomain.com <Proxy *> Order deny,allow Allow from all </Proxy> SSLEngine On SSLCertificateFile /etc/apache2/ssl/apache.pem ProxyPreserveHost On ProxyRequests Off ProxyPass / http://mydomain.com:8081/ ProxyPassReverse / http://mydomain.com:8081/ </VirtualHost> 要validation端口8081上的服务器是否正常工作,我将RequestHeader set Authorization "Basic XZY"到该configuration。 在这种情况下,服务器在端口8081上正确处理标题。 我也直接从客户端连接到端口8081上的服务器,以确保客户端真正设置正确的标题。 这也很好。
我如何才能应用基本身份validation只有当一个htaccess文件存在? 如果第一次尝试将auth_basic指令放在一个if块中,但这是不允许的。 然后,我尝试redirect到一个命名的位置,但是当基本身份validation的位置正常工作时,redirect(发生在没有htaccess文件时)正在出错。 这是什么configuration看起来像: server { listen 80; server_name ~^(?<instance>.+?)\.foo.example.com$; set $htaccess_user_file /var/htaccess/$instance.foo.example.com.htaccess; if (!-f $htaccess_user_file) { rewrite ^ @foo; } location / { auth_basic "Restricted"; auth_basic_user_file $htaccess_user_file; root /var/www/$instance.foo.example.com; try_files $uri /index.html =404; } location @foo { root /var/www/$instance.foo.example.com; try_files $uri /index.html =404; } } 这里是我没有htaccess文件时得到的错误消息: 2013/07/12 08:37:08 [error] 32082#0: *192 open() "/usr/html@foo" failed […]
我有一个Apache(2.2)在example.com上提供web应用程序。 该web应用程序有一个可通过example.com/debug访问的debugging页面。 /debug当前受到HTTP基本身份validation的保护。 由于只有非常小的用户可以访问debugging页面,所以我想根据IP地址来隐藏它,并将404返回给不能从我们的VPN访问的客户端。 仅基于IP地址提供404服务非常简单,详见https://serverfault.com/a/13071 。 但是,一旦我添加authentication,用户看到一个401而不是一个404 。 基本上,我需要的是: if ($REMOTE_ADDR ~ 10.11.12.*): do_basic_auth (aka return 401) else: return 404 更新这个工程: <VirtualHost …> … SetEnvIf REMOTE_ADDR 10.128.0.* HAS_debug=1 SetEnvIf REMOTE_ADDR 10.128.1.* HAS_debug=1 SetEnvIf REMOTE_ADDR 10.128.2.* HAS_debug=1 RewriteEngine On RewriteCond %{ENV:HAS_debug} !=1 RewriteRule ^/debug($|/) – [R=404,L] <Location /debug> AuthType Basic AuthName "hidden-debug" AuthUserFile … Require valid-user […]
我已经设置了一个多目录纯Web应用程序,只需要根目录的身份validation。 所有其他的子目录,我需要允许没有密码。 我使用.htaccess和.htpasswd设置了HTTP基本authentication。 这些文件被放置在web的根目录下。 我的问题是,子目录是自动inheritanceauthentication。 我只需要将其应用于root并保持所有子目录打开。 我该怎么做? 我的.htaccess文件内容如下。 AuthType Basic AuthName "Secure Portal" AuthUserFile /webroot/.htpasswd Require valid-user