Eu tenho um Mac Mini com o OS X Server 5.1.7 em execução. Eu tenho um serviço rodando localmente acessível através de link (sem autenticação) e eu quero torná-lo disponível para o exterior, mas com autenticação usando o sistema operacional Diretório do X Server.
Então, na seção de sites, criei um novo site chamado intranet.mydomain.com, que é acessível apenas a "Usuários da Intranet" (um grupo que criei).
Depois de fazer isso, tento acessar o link , ele pede nome de usuário e senha e ele funciona com as credenciais de um usuário que está parte de "Usuários da Intranet".
Agora, para configurar o proxy reverso, vou para o arquivo
/Library/Server/Web/Config/apache2/sites/0000_127.0.0.1_34543_intranet.mydomain.com.conf
E adicione o seguinte:
ProxyPass /ask http://127.0.0.1:3000/ask
ProxyPassReverse /ask http://127.0.0.1:3000/ask
após o nó Directory
.
Agora, ao acessar o link , chego ao serviço interno, mas nenhuma autenticação é solicitada. O que deve estar bem, acredito, já que na configuração XML apenas o nó Directory
tem a autenticação configurada:
<Directory "/Library/Server/Web/Data/Sites/intranet.mydomain.com">
Options All -Indexes -ExecCGI -Includes +MultiViews
AllowOverride None
<IfModule mod_dav.c>
DAV Off
</IfModule>
<IfDefine !WEBSERVICE_ON>
Require all denied
ErrorDocument 403 /customerror/websitesoff403.html
</IfDefine>
AuthType Digest
AuthName "Realm ID 75040558"
<Limit PUT DELETE PROPPATCH PROPFIND MKCOL COPY MOVE LOCK UNLOCK>
Require no-user
</Limit>
<Limit GET HEAD OPTIONS CONNECT POST>
Require group memberusers
</Limit>
<IfDefine !WEBSERVICE_ON>
Require all denied
ErrorDocument 403 /customerror/websitesoff403.html
</IfDefine>
</Directory>
Então, para torná-lo global (tanto para o sistema de arquivos quanto para os caminhos não no sistema de arquivos), eu mudei o nó Directory
para um nó de localização, assim:
<Location "/">
Options All -Indexes -ExecCGI -Includes +MultiViews
AllowOverride None
<IfModule mod_dav.c>
DAV Off
</IfModule>
<IfDefine !WEBSERVICE_ON>
Require all denied
ErrorDocument 403 /customerror/websitesoff403.html
</IfDefine>
AuthType Digest
AuthName "Realm ID 75040558"
<Limit PUT DELETE PROPPATCH PROPFIND MKCOL COPY MOVE LOCK UNLOCK>
Require no-user
</Limit>
<Limit GET HEAD OPTIONS CONNECT POST>
Require group memberusers
</Limit>
<IfDefine !WEBSERVICE_ON>
Require all denied
ErrorDocument 403 /customerror/websitesoff403.html
</IfDefine>
</Location>
Depois de fazer isso, acessando a rota do meu domínio, me pedem autenticação e posso fazer o login. No entanto, acessando o caminho https://intranet.mydomain.com/ask
, estou pedindo autenticação (tudo bem!), Mas ele não aceita nenhum nome de usuário / senha de usuário válido (observe que ele funciona para /
, mas não para /ask
). / p>
Alguma ideia do porquê?
Este é o meu arquivo de configuração completo deste site antes de alterar o Directory
para Location
:
<VirtualHost 127.0.0.1:34543>
ServerName https://intranet.mydomain.com:443
ServerAdmin [email protected]
DocumentRoot "/Library/Server/Web/Data/Sites/intranet.mydomain.com"
DirectoryIndex index.html index.php default.html
CustomLog /var/log/apache2/access_log combinedvhost
ErrorLog /var/log/apache2/error_log
<IfModule mod_ssl.c>
SSLEngine Off
SSLCipherSuite "HIGH:MEDIUM:!MD5:!RC4"
SSLProtocol -all +TLSv1 +TLSv1.1 +TLSv1.2
SSLProxyEngine On
SSLCertificateFile "/etc/certificates/intranet.mydomain.com.A86175C9AFAC45AA2D0D590A8B94ACC1455519F8.cert.pem"
SSLCertificateKeyFile "/etc/certificates/intranet.mydomain.com.A86175C9AFAC45AA2D0D590A8B94ACC1455519F8.key.pem"
SSLCertificateChainFile "/etc/certificates/intranet.mydomain.com.A86175C9AFAC45AA2D0D590A8B94ACC1455519F8.chain.pem"
SSLProxyProtocol -all +TLSv1 +TLSv1.1 +TLSv1.2
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
</IfModule>
<Directory "/Library/Server/Web/Data/Sites/intranet.mydomain.com">
Options All -Indexes -ExecCGI -Includes +MultiViews
AllowOverride None
<IfModule mod_dav.c>
DAV Off
</IfModule>
<IfDefine !WEBSERVICE_ON>
Require all denied
ErrorDocument 403 /customerror/websitesoff403.html
</IfDefine>
AuthType Digest
AuthName "Realm ID 75040558"
<Limit PUT DELETE PROPPATCH PROPFIND MKCOL COPY MOVE LOCK UNLOCK>
Require no-user
</Limit>
<Limit GET HEAD OPTIONS CONNECT POST>
Require group memberusers
</Limit>
<IfDefine !WEBSERVICE_ON>
Require all denied
ErrorDocument 403 /customerror/websitesoff403.html
</IfDefine>
</Directory>
ProxyPass /ask http://127.0.0.1:3000/ask
ProxyPassReverse /ask http://127.0.0.1:3000/ask
</VirtualHost>