Jak ustawić domyślne uprawnienia dla SFTP dla serwera Ubuntu?

16

Mamy serwer Ubuntu 10.04. Jak mogę to ustawić, aby nowe pliki tworzone (lub kopiowane) przez SFTP lub SSH miały uprawnienia g + rw i g + rwx (w stosownych przypadkach)?

Używam również setgid (chmod g + s), aby odziedziczyli właściwego właściciela grupy.

wag2639
źródło

Odpowiedzi:

12

W / etc / ssh / sshd_config możesz przekazać flagę i wartość w (-u 0002) w następujący sposób, aby ustawić wartość umask:

Subsystem sftp /usr/lib/openssh/sftp-server -u 0002

Dołącz -u 0002 do istniejącej linii sftp podsystemu pliku konfiguracyjnego.

Następnie konieczne będzie zrestartowanie ssh, aby zmiany odniosły skutek:

service ssh restart
Domino
źródło
Dotyczy to tylko nowszych wersji OpenSSH, ale w miarę możliwości powinno być preferowanym rozwiązaniem.
Andrew B,
2
Działa to tylko wtedy, gdy potrzebujesz bardziej restrykcyjnych uprawnień niż ustalone przez klienta, a nie bardziej luźnych.
Joost
Jak powiedział Joost, nie pomaga to wymuszać uprawnień do zapisu grupowego. Pomógłbym zabronić pisania grupowego.
lot
Według najnowszej dokumentacji można używać tych samych opcji Subsystem sftp internal-sftp.
underscore_d
10

W / etc / ssh / sshd_config zmień następujące ustawienia:

Subsystem sftp /usr/lib/openssh/sftp-server

do:

Subsystem sftp /bin/sh -c 'umask 0002; exec /usr/libexec/openssh/sftp-server'

Soure: http://jeff.robbins.ws/articles/setting-the-umask-for-sftp-transactions

wag2639
źródło
1
Lepiej postawić execprzed finałem /usr/.../sftp-server, abyś nie miał bezużytecznych shprocesów.
user1686
Również umask to tylko liczba; 0002można zapisać krótszy jako 02.
user1686
Myślałem, że umask to ósemka, ale dzięki za część wykonawczą.
wag2639
2
Tak, umasks ósemkowe. To nie znaczy, że potrzebujesz trzech wiodących zer - jeden wystarczy. (W rzeczywistości umaskpolecenie nie potrzebuje żadnych zer wiodących, zawsze odczytuje argument jako liczbę ósemkową.) ... Ale z drugiej strony może być 0002bardziej zrozumiałe.
user1686
2
To mi nie działa. Nie będzie wymuszać pozwolenia G + W.
lot