Apache ProxyRemote-referenties versus proxy-chain-auth
Kies tussen een vaste account voor de bovenliggende proxy en het bewust doorgeven van de proxyreferenties van de client.
Een client kan zich met het ene account aanmelden bij een Apache-doorstuurproxy, terwijl Apache zich met een ander account aanmeldt bij een bovenliggende proxy:
client ── client account ── Apache ── parent account ── parent proxy
Voor een vaste account bij de bovenliggende proxy op httpd 2.4.59 of later accepteert ProxyRemote een derde argument:
ProxyRemote "*" "http://parent.example:3128" "parent-user:replace_with_private_password"
Dit vormt een aanvulling op de bestaande toegangsgecontroleerde doorstuurproxyconfiguratie, zoals een private listener die zowel een client-IP als een proxyaanmelding vereist. Het account hoort bij de gekozen bovenliggende proxy. Bescherm de configuratie die het bevat, en kies de overeenkomstscope die de uitrol vereist.
Apache verstuurt deze Basic-referenties vooraf, zonder eerst op een uitdaging te wachten. Daardoor zijn transport en accountbeleid van de verbinding met de bovenliggende proxy belangrijk; de latere HTTPS-sessie van de website beschermt zelf geen onversleutelde HTTP-sprong naar de bovenliggende proxy.
Wanneer hetzelfde inkomende account moet doorlopen
Apache verbruikt normaal gesproken de proxyauthenticatie die aan hemzelf is gericht. De omgevingsinstelling proxy-chain-auth staat in plaats daarvan toe de proxyreferenties van de client door te geven aan de volgende proxy:
SetEnv proxy-chain-auth On
Dit is alleen geschikt voor een bewust gedeelde authenticatieketen. Het geeft het inkomende accountmateriaal door; het verzint geen andere gebruikersnaam en wachtwoord voor de bovenliggende proxy.
Met het expliciete referentieargument van ProxyRemote heeft proxy-chain-auth geen effect. Kies de bron van de referenties bewust in plaats van beide instellingen te stapelen in de hoop dat het wachtwoord dat werkt wordt gekozen.
Deze mechanismen authenticeren proxysprongen. De Authorization-header van een doelsite blijft een aparte uitwisseling.