Hvordan sette ACLer på objekter

ITKACL har flere forskjellige grensesnitt; antageligvis vil det komme til flere, men de som er her er de som foreløpig er implementert. Merk at hvis du ønsker å bruke ACLer fra programkode, er noden ITKACLProgrammering mer relevant; denne gjelder også dersom du ønsker å sjekke litt mer differensierte tilganger (se f.eks. ITKACLIntro under "meta-tilganger") fra f.eks. PHP-scripts. De forskjellige modulene er definert under:

Opprette Kerberos-keytab

  1. ssh til voff som root
    samba-tool spn add HTTP/<subdomain>.samfundet.no cirkus$
    $-tegnet betyr at det er snakk om en maskinkonto
  2. kontroller at keytaben ble lagt til
    samba-tool spn list cirkus$
  3. Lag og kopier en .keytab fil til Cirkus
    samba-tool domain exportkeytab <subdomain>.keytab --principal=HTTP/<subdomain>.samfundet.no
    samba-tool domain exportkeytab <subdomain>.keytab --principal=HTTP/cirkus.samfundet.no
    scp <subdomain>.keytab root@cirkus:/etc/apache2/krb5/<subdomain>.keytab
    
  4. SSH deg over til Cirkus
    
    
  5. Endre eierskap av filen for å gjøre den leselig av Apache
    chown <bruker>:<gruppe> /etc/apache2/krb5/<subodmain>.keytab
    

    Se guiden til hvordan man skal utvikle din spesifikke insans for hvilken bruker og gruppe som skal ha tilgang til denne filen. Hvis du setter opp en uka instans skal det være uka-httpd:uka-web, og tilsvarende for ufs. ufs-httpd:ufs-web

Apache (mod_auth_gssapi + mod_authz_itkacl)

Dette er antageligvis den modulen det blir mest aktuelt for folk å sette opp. For å sette en ACL på et webområde, lager du en .htaccess-fil i den aktuelle katalogen som inneholder noe slikt som:

       <Location />
               AuthType GSSAPI
               AuthName "<beskrivelse av instansen>"
               GssapiCredStore keytab:/etc/apache2/krb5/<subdomain>.keytab
               GssapiCredStore cache:MEMORY:user_ccache
               GssapiBasicAuth on
               GssapiAllowedMech krb5
               GssapiBasicAuthMech krb5
               GssapiNegotiateOnce On

               # Send brukere i Windows rett til basic auth, unntatt Firefox
               BrowserMatch Windows(?!.*Firefox) gssapi-no-negotiate

               Require itkacl <acl-sti>
       </Location>

For de fleste brukere vil denne autentiseringen foregå som en hvilken som helst vanlig Basic-autentisering (mao.: du burde helst sørge for at systemene fungerer over SSL slik at passord ikke sendes over i klartekst!). Derfor bør/må du sette opp SSL. For browsere som skjønner Kerberos (dvs. IE6 når man er logget på Active Directory, Mozilla 1.7 og nyere, eller Firefox) vil man imidlertid få full, sikker zero-knowledge-autentisering med single-signon (mao.: logger du inn på en av ITKs arbeidsstasjoner, får du automatisk autentisering mot websystemet også). Veldig fancy. :-)

Hvis du har lyst til å bruke SSSO, kan du følge instruksene på hverdagskonfignoden.

PAM (pam_itkacl)

PAM brukes til mye rart, men det mest aktuelle for vår del er nok å begrense tilgangen til å logge inn på bokser (så ikke f.eks. hvem som helst har tilgang til å logge inn på cirkus). Det er skrevet en begynnende PAM-modul; sleng følgende i f.eks. /etc/pam.d/common-account eller /etc/pam.d/ssh, alt ettersom:

account    required     pam_itkacl.so realm='/login/itk-workstations'

realm= er selvsagt påkrevd, og er ACL-stien du vil autentisere mot.

Lenker: Start, innsida, hvordan utvikle, itkacl, itkaclintro, itkaclprogrammering, request tracker v2, tekniske løsninger, utleggsys

Epost: itk@samfundet.no | Telefon: 992 15 925 | Sist endret: 2025-04-27 21:27 | Revisjon: 34 (historie, blame) | Totalt: 1933 kB | Rediger