VirtualS
В общем нужно на freebsd создать пользователя, который может использовать и просматривать только свои файлы в собственном домашнем каталоге. И шел ему не нужен.
Добавляю его в /etc/ftpchroot, по фтп есть ограничения. Ставлю шел /sbin/nologin, фтп тоже отрубается вообще.
По умолчанию пользователь может ползать по всей файловой системе и качать себе все что угодно. Нужно, чтобы файлы не принадлежащие этому пользователю не были ему доступны.
Куда копать? Гугла выдает однотипные нефункциональные решения.
freebsd 6.2
zuborg
/sbin/nologin нельзя, добавь в /etc/shells какой-то левый шелл типа
/usr/bin/true
или
/usr/bin/passwd
и поставь его юзеру.
ssh работать перестанет, а ftp продолжит.
По умолчанию во фре врублен протокол sftp, он работает через ssh, но на него шелл не действует и настройки в /etc/ftpchroot тоже, поэтому выключи sftp в /etc/ssh/sshd_config (затем /etc/rc.d/sshd restart) или позаботься чтоб права не позволяли пользователю смотреть чужие файлы.
На самом деле секюрней как раз пользовать sftp а не ftp, и управлять видимостью файлов через права доступа.
Т.к. к примеру если у пользователя есть возможность заливать php или cgi скрипты, то он через них может обойти настройки /etc/ftpchroot
Dr.Syshalt
VirtualS писал:
Если для скриптов принадлежащих пользователю такие ограничения работать не будут
Не будут.
Но про всю систему заботиться смысла нет - freebsd, как и любая многопользовательская OS и так по умному выставляет права для того, чтобы пользователь мог пользоваться системой, но не портить ее. На большое количество системных файлов пользователь просто обязан иметь права чтения и использования, так что "использовать и просматривать только свои файлы в собственном домашнем каталоге" по-любому работать не будет. Надо знать, что именно ты хочешь ему запретить видеть и запретить именно это.