Я создаю SFTP-сервер на Red Hat 6.9 (для ясности, я использую FTP-расширение OpenSSH). Я следовал следующему руководству:
https://www.howtoforge.com/tutorial/how-to-setup-an-sftp-server-on-centos/
Настраиваю все именно так, как описано. Я использую клиентскую ОС Windows 10. Я тестировал SFTP-клиент Putty и WinSCP (я не считаю, что моя проблема связана с клиентом). Когда я пытаюсь подключиться, мне предлагается ввести имя пользователя, а затем пароль. После ввода моего пароля сессия сразу закрывается. / var / log / secure показывает эти соответствующие сообщения:
Aug 2 14:30:28 SFTP_Server sshd[4087]: pam_unix(sshd:session): session opened for user scott.ftp by (uid=0)
Aug 2 14:30:28 SFTP_Server sshd[4089]: fatal: bad ownership or modes for chroot directory "/sftp/scott.ftp/data"
Aug 2 14:30:28 SFTP_Server sshd[4087]: pam_unix(sshd:session): session closed for user scott.ftp
Чтобы показать разрешения каталога, соответствующие руководству:
[root@SFTP_Server data]# ls -alh / | grep sftp
drwxr-xr-x 4 root root 4.0K Aug 2 12:37 sftp
[root@SFTP_Server data]# ls -alh /sftp
total 16K
drwxr-xr-x 4 root root 4.0K Aug 2 12:37 .
dr-xr-xr-x. 25 root root 4.0K Aug 2 12:35 ..
drwxr-xr-x 3 root root 4.0K Aug 2 12:38 scott.ftp
[root@SFTP_Server data]# ls -alh /sftp/scott.ftp/
total 12K
drwxr-xr-x 3 root root 4.0K Aug 2 12:38 .
drwxr-xr-x 4 root root 4.0K Aug 2 12:37 ..
drwxrwx--- 2 scott.ftp sftpusers 4.0K Aug 2 12:38 data
[root@SFTP_Server data]# ls -alh /sftp/scott.ftp/data/
total 8.0K
drwxrwx--- 2 scott.ftp sftpusers 4.0K Aug 2 12:38 .
drwxr-xr-x 3 root root 4.0K Aug 2 12:38 ..
Я не уверен, что натолкнуло меня на эту идею, но для устранения неполадок я изменил разрешения для "." каталог:
[root@SFTP_Server data]# pwd
/sftp/scott.ftp/data
[root@SFTP_Server data]# chown root:root .
[root@SFTP_Server data]# ls -alh
total 8.0K
drwxrwx--- 2 root root 4.0K Aug 2 12:38 .
drwxr-xr-x 3 root root 4.0K Aug 2 12:38 ..
Теперь я пытаюсь подключиться снова и могу успешно подключиться. Но я не могу перечислить каталог или создать каталог или любое другое действие. Ошибка, которую я получаю, - «отказано в разрешении». Пока я все еще подключен через SFTP, в альтернативном SSH-соединении я снова меняю разрешения:
[root@SFTP_Server data]# chown scott.ftp:sftpusers .
[root@SFTP_Server data]# ls -alh
total 8.0K
drwxrwx--- 2 scott.ftp sftpusers 4.0K Aug 2 12:38 .
drwxr-xr-x 3 root root 4.0K Aug 2 12:38 ..
Теперь я могу создавать каталоги и другие действия в сеансе SFTP. Я выхожу из сеанса SFTP и пытаюсь подключиться, но вход в систему не выполняется, как описано выше.
Любая помощь приветствуется.
Теперь я пытаюсь подключиться снова и могу успешно подключиться. Но я не могу перечислить каталог или создать каталог или любое другое действие. Ошибка, которую я получаю, - «отказано в разрешении».
Технически невозможно создать chroot
, который будет доступен для записи подключающемуся пользователю (если вы не используете расширенный ACL, что не является хорошей практикой в этом случае, когда это запрещено по соображениям безопасности).
Общий совет: либо
data/
, который будет доступен для записи этому пользователю.