Oleg/ 1 марта, 2013

Хочется безопасной передачи данных, тогда не используем FTP, а используем SSH

Удаляем ProFTPd apt-get remove proftpd

Ставим OpenSSH сервер, если его нет, а он обязательно есть, но все же:
apt-get install openssh-server

Создаем пользователя oleg:
useradd —home /home/dir/oleg —shell /bin/false oleg

Редактируем конфиг SSH /etc/ssh/sshd_config:
Меняем Subsystem sftp /usr/lib/openssh/sftp-server
на
Subsystem sftp internal-sftp

Включаем Use PAM: UsePAM yes 

Добавляем для каждого пользователя, если их несколько:
Match user %u
ChrootDirectory %h
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

где переменная %h — домашняя директория, а переменная %u — имя пользователя

Для группы:
Match group <гуппа>
ChrootDirectory /home/groupoleg
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

ВНИМАНИЕ: домашняя директория и выше должны принадлежать root
таким образом владелец домашней директории /home/dir/oleg root:root
а уже что внутри /home/dir/oleg/oleg oleg:oleg

И еще одно маленькое дополнение, все, что выше т.е. /home/dir/ тоже должно быть под root

Поделиться этой записью