- Izveidot direktorijas, kurās tiek klāt lietotāji un montēt ar bind tajās lietotāja mājas direktorijas.. Direktorijās root lietotājam jābūt īpašnieka tiesībām, tāpēc neder uzreiz chroot'oties uz lietotāja mājas direktoriju.
- Modificēt ssh servera uzstādījumus
- Papildu var uzstādīt pam_umask failu tiesībām.
Direktoriju veidošana un montēšana
Skripts veido direktorijas domēna lietotājiem, kurus iegūst ar "wbinfo -u". Esošās mājas direktorijas ir ar ceļu /home/domain/username.
Divpakāpju direktorijai jābūt tāpēc, ka augstāka līmeņa direktorijai jābūt root īpašumā, bet apakšdirketorija pēc piemontēšanas būs ar lietotāja tiesībām.
#!/bin/sh ## === # Skripts, kas taisa lietotājiem mājas direktorijas # priekš SFTP sesijām /home/domain/username # Jābūt root owned ## === wbinfo -u | grep -v \\$ | while read USR do if [ ! -d "/srv/$USR" ] ; then mkdir -p /srv/$USR/$USR fi # Ja nav piemontēts, montējam ar bind /bin/mountpoint -q /srv/$USR/$USR || /bin/mount -o bind /home/domain/$USR /srv/$USR/$USR done
Skriptu var ielikt gan pie rc.local, gan uzstādīt kā cron darbu.
Servera uzstādijumi.
Visām nepieciešamajām domēna lietotāju (primārajām!) grupām pievieno sekojošus ierakstus failā
/etc/ssh/sshd_config
.... Subsystem sftp internal-sftp Match Group "Domain Users" ChrootDirectory /srv/%u AllowTCPForwarding no X11Forwarding no ForceCommand internal-sftp Match Group "Darbinieki" ChrootDirectory /srv/%u AllowTCPForwarding no X11Forwarding no ForceCommand internal-sftp
Pēc tam pārstartējam openssh serveri
Atverot sftp/scp sesiju uz servera, lietotāji redz tikai vienu direktoriju savā lietotājvārdā, kas ir lietotāja mājas direktorija.
Atverot sftp/scp sesiju uz servera, lietotāji redz tikai vienu direktoriju savā lietotājvārdā, kas ir lietotāja mājas direktorija.
Tiesību - umask - uzstādīšana
Specifiskās tiesības/umask SFTP sesijai uzstāda rediģējot failu /etc/pam.d/sshd un pievienojot sekojošu ierakstu:
... session optional pam_umask.so umask=0066 ...