Innhold
1 Verktøy for å lage og flytte brukere
Verktøy for å lage og flytte brukere må være installert og tilgjengelig på serveren. Dette gjøres ved å installere rpm-pakken uio-reguser, slik:
# yum -y install uio-reguser
Denne blir automatisk vedlikeholdt fra sentralt hold.
2 Legge til policy "homedir_server"
Dette må gjøres av USIT (i bofh):
jbofh> host policy_add <maskin> homedir_server
Kan sjekkes slik (eksempel):
jbofh> host policy_list baktus Policy: Description: samba_server Gjelder alle samba-servere. homedir_server Maskiner som har hjemmeområder
3 Montering med eller uten ACL
Dersom man ønsker å kunne bruke Access Control Lists (ACL) på filsystemene med hjemmeområder må man gi parameteren acl til mount. Dette gjøres ved å legge dette til i /etc/fstab. Eksempel:
/dev/mapper/internvg-test--u1 /usit/rhel6-test1/test-u1 xfs defaults,acl 0 0 /dev/mapper/internvg-test--u2 /usit/rhel6-test1/test-u2 xfs defaults,acl 0 0
Dersom man ikke monterer med ACL-støtte må man flagge dette overfor scriptet som brukes ved brukerflytting:
# touch /etc/uio/flag/disable.mvuser-acl
Dersom man ikke gjør dette vil brukerflyttinger til/fra disken feile.
Viktig
Husk å flagge dersom diskene ikke er montert med ACL!
4 SELinux
Dersom det skal være mulig for brukerne å logge inn på maskinen og aksessere sitt hjemmeområde der, må følgende policy settes for SELinux:
# semanage fcontext -a -t home_root_t '/fak/maskinnavn(/.*)?'
Kjør deretter for alle mapper under "/fak/maskinnavn" som skal inneholder hjemmeområder:
# semanage fcontext -a -e /home /fak/maskinnavn/<mappe>
Og til slutt endre metadata for selve filene:
# restorecon -Rv /fak/maskinnavn
5 Automount
Automounter-maps i LDAP kan lage korrupsjon i filsystemene. Autofs bør derfor skrus av på maskiner som deler ut hjemmeområder. Det gjøres slik:
# systemctl disable --now autofs # systemctl mask autofs
Dette betyr at maskinen ikke kan brukes som innloggingstjener for andre brukere enn de som har hjemmeområde på maskinen, med mindre man bruker fast NFS-montering (ikke autofs).
6 Sette opp Samba-server
Normalt skal serveren dele ut hjemmeområder via Samba (CIFS) til Windows- og MacOSX-klienter. Hvordan man setter opp Samba er dokumentert her: Samba ved UiO.
Merk at siden Samba i dette tilfellet skal dele ut brukeres hjemmeområder må man skru på dette i SELinux. Det gjøres slik:
# setsebool -P samba_enable_home_dirs 1
Erfaring tilsier at dette ikke er nok, så vi gjør også dette:
# setsebool -P samba_export_all_ro 1 # setsebool -P samba_export_all_rw 1
7 Sette opp NFS-server
Hvert hjemmeområde må eksporteres via NFS. Som et minimum skal alle hjemmeområder eksporteres til nettgruppen uio-felles. Dette gjøres ved å legge inn i /etc/exports (eksempel):
/uio/foo/bar-u1 @uio-felles(rw) /uio/foo/bar-u2 @uio-felles(rw)
Pakken nfs-utils må være installert:
# yum -y install nfs-utils
I tillegg må NFS enables og startes
# systemctl enable --now nfs-server
Dersom man gjør endringer i /etc/exports kan man få aktivert endringene på denne måten:
# systemctl reload nfs-server
7.1 Workaround for problem med 16 filgrupper
Et kjent problem med NFSv3 er at den kun håndterer 16 filgrupper. Grupper utover dette ignoreres, og det er tilfeldig hvilke filgrupper som rammes. Dette oppleves som at gruppen ikke eksisterer. Dette gjelder kun NFS-servere som bruker RPC med AUTH_SYS ettersom problemet ikke ligger i NFS men i RPC. Det finnes en workaround, åpne filen /etc/sysconfig/nfs og endre:
#RPCMOUNTDOPTS=""
til følgende:
RPCMOUNTDOPTS="-g"
Da brukes opsjonen -g (dvs. --manage-gids) til rpc.mountd, og problemet med 16 filgrupper forsvinner.