Oppsett av Samba PDC / domenetjenesten

Vi kjører Active Directory basert på Samba 4. Domenekontroller er for tiden voff, og primær filserver (samba.samfundet.no) er for tiden cassarossa. Det er denne tjenesten som gjør det mulig å velge SAMFUNDET (eller ekvivalent ad.samfundet.no) under innlogging på datamaskiner på Samfundet. Active Directory står også for autentisering og bruker-/gruppeinformasjon på alle Linux-maskiner.

Tjenesten er praktisk da all autentisering utføres mot domenetjeneren. I tillegg legges Windows-profilen lagret på felles filtjener, noe som i teorien skal gi likt oppsett på alle maskiner.

Av og til kan du også koble til kataloger fra utenfor Samfundets nett, se ISPer med port 445 åpen.

SSSD

System Security Services Daemon er en tjeneste som fungerer som mellomledd mellom Linux og AD. Tjenesten tilbyr caching og offline autentisering. Når noen forsøker å logge inn på en tjener som bruker SSSD, vil Linux først spørre SSSD om å logge inn. Hvis SSSD ikke finner noe i cachen sin, snakker SSSD videre med AD, og videreformidler svaret til brukeren. Deretter lagres autentiseringsdetaljene i en viss tid, sånn at neste innlogging går raskere.

Oppsett av Samba-database

Dersom en bruker eller gruppe ikke er definert på rett måte i AD, vil ikke SSSD forstå at dette er en UNIX-bruker eller -gruppe, og man vil se uventet oppførsel.

Brukere må ha følgende felter definert:

FeltVerdi
objectClass posixAccount
primaryGroupID 513 (tilhører gruppen "Domain Users")
gidNumber <UNIX-primærgruppe-gid>
uidNumber <UNIX-uid>
sAMAccountName <UNIX-brukernavn>
unixHomeDirectory <UNIX-hjemmekatalog>
loginShell <UNIX-skall>

Grupper må ha følgende delter definert:

FeltVerdi
objectClassposixGroup
gidNumer<UNIX-gid>

Hvordan legge til maskiner i Samba-domenet?

Linux

Om ikke allerede Puppet har gjort det for deg, sørg for at /etc/samba/smb.conf har:

[global]
        workgroup = SAMFUNDET
        realm = AD.SAMFUNDET.NO
        security = ads
        kerberos method = secrets and keytab

Så kan du joine med

net ads join -U Administrator

Dette vil legge maskinnøkkelen for Kerberos i /etc/krb5.keytab. Ignorer feilmeldingene om at DNS ikke ble oppdatert.

Windows

Vær obs på at hvis du bytter NetBIOS-navn på en Windows-maskin, den varmstartes for at dette skal bli aktivt. Dersom du bytter navn og ikke varmstarter den etterpå, vil maskinen ikke la seg melde inn i domenet.

Gå inn i nettverksinnstillingene i Windows (Network Connections). Fra "Advanced" -> "Network Identification". Velg change og dytt inn "ad.samfundet.no" på domenet. Det vil nå komme opp spørsmål av brukernavn og passord, her benyttes kontoen «Administrator» i SAMFUNDET-domenet. Etter dette må maskinen rebootes og man skal da kunne logge på domenet.

Loginscript og oppsett for Windows-maskiner

Hver gjeng har sin egen share (og evt. sitt eget webshare om de har et gjengområde). Disse ligger ordnet fint og kategorisortert+alfabetisk i smb.conf; det ville være fint om folk kunne opprettholde denne rekkefølgen.

Når en bruker logger inn, mappes først M: automatisk til hjemmeområdet til vedkommende; deretter kjøres \\samba.samfundet.no\netlogon\logon.bat. Denne henter (via wget!) resten av stasjonsmappingene fra http://samba.samfundet.no/loginscript.pl?user=%USERNAME%, samt gjør bittelitt ekstra magi.

loginscript.pl (som kjører på cassarossa som et CGI-script) henter ut hvilke grupper den aktuelle brukeren er medlem av og genererer tilsvarende stasjonsmappinger. Scriptet ligger i /var/www/samba/loginscript.pl, og burde være rimelig enkelt å forstå for de som kan Perl.

Stasjonsbokstaver tilordnes som følger:

Dersom det mot formodning ikke skulle være plass (som f.eks. at brukeren er medlem av så mange grupper at N: til V: ikke er nok), begynner scriptet på L: (rett under M:, altså) og jobber seg nedover. (Når den noensinne så langt ned som til D:, er det den siste stasjonsbokstaven som tilordnes; Windows-maskiner uten C: er ganske sjeldne.)

Perl-scriptet henter mappinger fra UNIX-grupper til Samba-shares (inkludert UKAs shares) fra /etc/samba/shares.list. Formatet her skulle være rimelig selvforklarende (igjen ordnet først etter kategori og så etter alfabetet); første kolonne er UNIX-gruppen, andre kolonne er fullstendig UNC-path og tredje kolonne er enten "group" eller "web" avhengig om sharen er en gjengshare (som mappes fra N: og oppver) eller en webshare (som mappes fra W: og oppover).

login.bat kaller også \\voff.ad.samfundet.no\netlogon\defaultprinter.ps1, et powershell-skript som velger rett standardskriver for maskinen.

Lenker: Start, active directory databehandling, autentisering og autorisering, brukere, chocolatey, gsuite, historie, itkretningslinjer, kortsys med rita, msblaster, padl, servere, suwi10, suwi7, til nye itkere

Epost: itk@samfundet.no | Telefon: 992 15 925 | Sist endret: 2019-05-20 20:29 | Revisjon: 48 (historie, blame) | Totalt: 1880 kB | Rediger