Я пытаюсь настроить сервер sftp на ubuntu / precision на EC2. Мне удалось добавить нового пользователя, который может подключаться через ssh, однако, как только я добавлю следующее предложение:
Match Group sftp
ChrootDirectory /home/%u
AllowTCPForwarding no
X11Forwarding no
ForceCommand internal-sftp
Я больше не могу подключиться (вообще, ssh или иначе) и получаю сообщение
Error: Connection refused
Error: Could not connect to server
Я могу подключиться к подсистеме, настроенной на:
#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp
Есть идеи, почему ssh-сервер не работает с этим предложением «Match»? По сути, все работает, кроме "chroot" части.
Хорошо, решил проблему:
2 вещи вызывали проблему
из: https://askubuntu.com/questions/134425/how-can-i-chroot-sftp-only-ssh-users-into-their-homes
"Вся эта боль вызвана несколькими проблемами безопасности, описанными здесь. По сути, каталог chroot должен принадлежать пользователю root и не может иметь доступа для групповой записи. Прекрасно. Так что вам, по сути, нужно превратить ваш chroot в удерживающую ячейку и внутри этого вы можете иметь свой редактируемый контент.
sudo chown root /home/bob
sudo chmod go-w /home/bob
sudo mkdir /home/bob/writable
sudo chown bob:sftponly /home/bob/writable
sudo chmod ug+rwX /home/bob/writable
И бац, вы можете войти в систему и писать / писать ".