Autenticazione in Apache tramite account di sistema

Ho attualmente il mio server apache per l'authentication tramite un file di password creato da htpasswd. Configurato come tale:

AuthType Basic AuthName "Secured Site" AuthUserFile "/etc/apache2/users.passwd" 

Come posso modificarla per l'authentication tramite account di sistema locali e restringere ulteriormente solo un sottoinsieme di account di sistema locali in un gruppo specificato?

  • Apache tuning con server LAMP molto ad alto carico
  • Come impostare Apache con Passenger (mod_rails) su Mac OS X?
  • Autenticazione IIS Kerberos
  • Migliore indice Apache di file?
  • org.apache.solr.common.SolrException: Errore durante il caricamento della class 'solr.VelocityResponseWriter'
  • Proxy Error 502 "Motivo: Errore di lettura dal server remoto" con Apache 2.2.3 (Debian) mod_proxy e Jetty 6.1.18
  • Centinaia di login ssh falliti
  • Apache / mod_cache: "Errore 103 software causato interruzione connessione"
  • Come risolvere dal lato server: ERROR: il certificato di 'www.example.org' non è attendibile
  • ssh login successful, ma la password scp mi dà "Permission denied"
  • SSH Come ignorare il controllo IdentityFile?
  • Rewrite port a un ciclo infinito di reindirizzamento 301 nelle directory esistenti
  • 3 Solutions collect form web for “Autenticazione in Apache tramite account di sistema”

    Come suggerito da David Z, è ansible utilizzare mod-authnz-external. Usalo con pwauth ad esempio.

    Se si esegue Debian o un derivato:

     apt-get install libapache2-mod-authnz-external pwauth a2enmod authnz_external 

    Nella tua configuration, aggiungi

     <IfModule mod_authnz_external.c> AddExternalAuth pwauth /usr/sbin/pwauth SetExternalAuthMethod pwauth pipe </IfModule> 

    E nella sezione Directory o il file .htaccess:

      AuthType Basic AuthName "Login" AuthBasicProvider external AuthExternal pwauth Require valid-user # or # Require user jules jim ... 

    Infine ricaricare la configuration con il apache2ctl restart o il service apache2 reload .

    Vedi anche questa documentazione .

    Il module Apache mod_auth_pam farà esattamente questo per te. Abilita il module e il file di configuration dovrebbe sembrare qualcosa di simile

     AuthType Basic AuthName "secure area" require group staff require user webmaster 

    E sei tutto pronto.

    Probabilmente vuoi esaminare qualcosa di simile a mod_auth_pam . PAM è il sistema "Pluggable Authentication Module" e il sistema standard di Linux (che sto assumendo questo è Linux) il sistema di accesso al sistema si affida a PAM per eseguire l'authentication.

    Un'altra opzione è mod_authnz_external , che guarda direttamente al /etc/shadow per autenticare gli account.

    EDIT : Apparentemente mod_auth_pam non è più mantenuto (purtroppo), quindi forse mod_authnz_external sarebbe una scommessa migliore …

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.