Я хочу создать пользователя SFTP и ограничить доступ к каталогу. Итак, я создал пользователя и добавил следующее в конфигурацию
Match user joe
ChrootDirectory /storage/public
ForceCommand /usr/libexec/sftp-server
Однако, похоже, я не могу подключиться к серверу, у меня ошибка
ssh: connect to host 11.22.33.44 port 22: Connection refused
Сообщение об ошибке «Отказ в соединении» обычно означает, что ничего не прослушивает соответствующий интерфейс: порт, поэтому первое, что нужно сделать, это проверить и, если необходимо, исправить это. Чтобы узнать, где слушает ваш sshd, выполните команду
netstat -tnlp | grep sshd
tcp 0 0 192.168.10.188:2222 0.0.0.0:* LISTEN 29929/sshd
tcp 0 0 192.168.10.188:22 0.0.0.0:* LISTEN 29929/sshd
Обратите внимание, что это показывает, что sshd работает на портах 22 и 2222 на одном IP-адресе. То, что вы видите, скорее всего, будет другим, но вы должны понять это и увидеть, где ваш sshd слушает.
Если sshd не прослушивает IP-адрес, соответствующий вашему хосту, вы можете добавить директиву ListenAddress в свой /etc/ssh/sshd_config
файл
ListenAddress 11.22.33.44
затем перезапустите sshd.
Если ваш sshd прослушивает нестандартный порт, например. 2222, тогда вы можете использовать
sftp -p 2222 joe@yourhost
для подключения к системе. Если вы хотите использовать стандартный порт 22
тогда вы можете добавить новую директиву порта в /etc/ssh/sshd_config
Port 22
Port 2222
затем перезапустите sshd.
Проблема в файле sshd-config. Теперь я помещаю текст конфигурации, связанный с chroting, в конец файла, и это сработало. Спасибо ребята за помощь