SFTP для пользователей (собственная папка сайта)

1

Я пытаюсь настроить SFTP, чтобы мои пользователи могли получить доступ к своей папке на сайте (с помощью PSFTP / FileZilla). Я использую Vagrant, CentOS7, NGINX и .sh файл.

Это мой bootstrap.sh, для создания одного из моих пользователей.

#Make Group for SFTP
sudo groupadd sftpusers
#Make Website folder and SFTP Users
JS_WWW="/usr/share/nginx/html/jeroensteen"
sudo useradd -g sftpusers -d $JS_WWW -s /sbin/nologin -p jeroensteen jeroensteen
sudo chown jeroensteen:sftpusers $JS_WWW
sudo chown nginx:nginx $JS_WWW

#Configure SFTP
sudo sed -i "s@/usr/libexec/openssh/sftp-server@internal-sftp@" /etc/ssh/sshd_config
sudo echo "Match Group sftpusers" > /etc/ssh/sshd_config
sudo echo " ChrootDirectory /usr/share/nginx/html/%u" > /etc/ssh/sshd_config
sudo echo " ForceCommand internal-sftp" > /etc/ssh/sshd_config
sudo systemctl restart sshd

Когда я пытаюсь сделать обычный SSH с Putty с пользователем "vagrant" на 127.0.0.1, putty закрывается. Я даже не могу ввести пароль.

Когда я пытаюсь выполнить SFTP с помощью PSFTP, выполнив «open 10.0.0.100»: я вхожу как «jeroensteen@10.0.0.100» с моим пропуском, но я получаю: «Доступ запрещен».

Как я могу настроить SFTP для моих пользователей? Что не так, что Putty закрывается, а у меня нет доступа?

Йерун Стин
источник

Ответы:

0

Вы должны запустить sudo tail -f /var/log/secureи снова попробовать sftp, наблюдая за этим. Это покажет вам ошибки с сервера sshd, которые не разрешают доступ по sftp.

Посмотрев на шаги, которые вы выполнили, после того, как вы установили владельца $ JS_WWW на jeroensteen: sftpusers, вы изменили его на nginx: nginx. Возможно, вы хотели установить для пользователя значение jeroensteen, а для группы - значение nginx? Имеет ли пользователь jeroensteen доступ к каталогу $ JS_WWW? Вы никогда не показываете, какие разрешения. Если разрешения не доступны для чтения и не могут быть использованы для всех пользователей, то может произойти сбой входа в систему из-за проблем с разрешениями в $ JS_WWW. Вы можете использовать, sudo su -s /bin/sh jeroensteenчтобы переключиться на этого пользователя и посмотреть, что он может получить доступ.

Лично, когда я пытаюсь выполнить то, что вы делаете, я оставляю sshd_config в покое и вместо этого устанавливаю rssh из EPEL и устанавливаю для этого оболочку пользователя.

Freiheit
источник