У меня установлен сервер Ubuntu 14.04 с открытым ssh. Я хотел бы настроить sftp, чтобы клиенты могли только загружать файлы. Другими словами, я помещаю файлы в каталог, к которому они привязаны. Мне нужно убедиться, что они могут получить доступ только к каталогу с их файлом(ами) и ни к чему больше.
Изначально я собирался использовать vsftpd, но кто-то сказал мне, что sftp — лучший вариант. Если есть какая-то документация о том, что мне нужно, это было бы здорово.
Мне нужна помощь по следующему вопросу:
- Как настроить sftp
- Как настроить учетные записи пользователей и использовать их для sftp
- Как посадить аккаунты в тюрьму
решение1
Настройки для/etc/ssh/sshd_config
Subsystem sftp internal-sftp -f AUTH -l VERBOSE
UsePAM yes
Match group sftp
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
создать группу sftp:
groupadd sftp
Создать каталог
sudo mkdir /ftpusers
sudo mkdir /ftpusers/HomeFolder
Создайте пользователя напрямую с присоединенной новой группой sftp:
sudo useradd -d /ftpusers/HomeFolder -m UserName -g sftp -s /bin/false
sudo passwd UserName
установить разрешения для использования с ssh для sftp:
chown root:root /ftpusers/HomeFolder
chmod 755 /ftpusers/HomeFolder
перезапустить службу:
service ssh restart
Обратите внимание, что домашней папке нового пользователя sftp должен быть предоставлен владелец root.