Apache proxy med sammanfattad autentisering
Detta inlägg kommer snabbt att visa dig hur man ställer in proxy med grundläggande autentisering med hjälp av apache .
I mitt fall ville jag ha överföring torrent klient lite tillgänglig över internet så jag kunde kolla på det statliga och adminster torrent downloads (t ex senaste utgåvan av Fedora) efter behov. Transmission själv bedriver sin webbklient på port 9091 som standard. Hellre än att bry sig om att öppna fler portar på min brandvägg och lägga till nessecary regler för vidarebefordring port bestämde jag mig bara proxy samtal genom att överföring via apache använder mod_proxy .
För att göra detta jag in en ny underdomän som skulle vara slutpunkten för webben klienten och la lämpliga vhost konfigurationen på följande sätt:
<VirtualHost *:80> Servernamn sub-domain.server.tld <Location /> ProxyPass http://localhost:9091/ </ Location> </ VirtualHost>
Efter omstart apache du nu kan navigera till slutpunkt och se sändningen webbklient.
Även överföring har sin egen autentisering för webbklient jag har hittat det lite buggig (ibland, ibland förlorar inställningar, etc) så jag bestämde mig för att gå med autentisering via apache använder mod_auth_digest bestämde jag mig för detta sedan dess inget mer arbete än grundläggande autentisering och gör saker och ting lite säkrare.
Så för att ställa in det första måste vi skapa ett lösenord fil med kommandot htdigest . Dess användning är nästan exakt samma som htpasswd , men det finns ett extra argument som är rike. Realm är det område där användarnamn och lösenord är giltiga, kan du definiera flera riken, att det enda säkra är att när du skapar ditt användarnamn och lösenord rike det är samma som den som anges i din vhost konfiguration. För detta exempel jag bara kommer att använda privat.
Så det första skapa en ny smälta lösenord filen och lägger den första användaren:
htdigest-c / var / lib / transmission / passwd-digest privat Lloyd Du blir ombedd att ange ett lösenord för nya användare. När du lägger till senare användare använder inte-c flaggan (det är bara för att initialt skapa lösenord filen).
Nästa vi uppdaterar vhost konfiguration med autentisering detaljer som följer:
<VirtualHost *:80> Servernamn sub-domain.server.tld <Location /> ProxyPass http://localhost:9091/ AuthType Digest AuthName "privata" AuthUserFile / var / lib / växel digest-passwd Kräv giltigt användare </ Location> </ VirtualHost>
När detta är färdigt, starta om Apache och navigera till din slutpunkt och du blir ombedd att ett användarnamn och lösenord.

















































