Назад | Перейти на главную страницу

Лучший способ ограничить доступ по FTP к одному каталогу?

У меня есть VPS под управлением Ubuntu 10.04, и я хотел бы предоставить кому-то доступ по SFTP к одному каталогу, но не позволять им видеть что-либо еще в системе. Как лучше всего это осуществить?

Я подумал об удалении разрешений «для всех» для всего в системе, но это кажется действительно грубым инструментом для решения этой проблемы (и тем, что вызовет другие проблемы) - я надеюсь, что здесь есть лучший вариант.

редактировать: Ценю ответы! (И я многому научился, читая / исследуя их). В итоге я нашел и использовал это руководство от Linode, поскольку в нем были прописаны все шаги: http://library.linode.com/security/sftp-jails/

Лучше всего использовать ftps и chroot (vsftpd) или web-dav с ssl (Apache2, nginx).

Создать сертификат:

openssl req -x509 -nodes -days 365 -newkey rsa:1024  -keyout /etc/vsftpd/vsftpd.pem   -out /etc/vsftpd/vsftpd.pem

Редактировать конфигурацию:

 ssl_enable=YES
 rsa_cert_file=/etc/vsftpd/vsftpd.pem
 chroot_local_user=YES

С Ubuntu вы можете использовать scponly довольно легко

sudo apt-get install scponly
sudo dpkg-reconfigure -plow scponly

После его установки и настройки вы можете использовать прилагаемый сценарий для создания учетных записей пользователей и тюрем.

cd /usr/share/doc/scponly/setup_chroot
sudo gunzip setup_chroot.sh.gz
sudo chmod +x setup_chroot.sh
sudo ./setup_chroot.sh

Следуйте инструкциям на экране, чтобы настроить пользователя.

Если вам нужен SFTP, который является подсистемой SSH, ознакомьтесь с этим руководством. Вот

Если вам нужен FTP со слоем SSL, то предложение ooshro подойдет.