Я надеялся, что кто-то мог помочь мне с этой проблемой
"Пытаясь установить пользователя SFTP с ограниченным доступом".
Я запускаю Ubuntu 16.04.2 x64 на сервере DigitalOcean. Я отправил это на форумах DigitalOcean также.
system user
назван serverpilot
serverpilot
имеет полномочия пользователя root,home
папка расположена в: /srv/users/serverpilot
public
папка расположена в: /srv/users/serverpilot/apps/test-app/public/
Я хочу добавить второго пользователя, но ограничить то, что может сделать пользователь:
newsletters
, это будет в public
папка.newsletters
, папкаЭто - полный путь к newsletters
папка: /srv/users/serverpilot/apps/test-app/public/newsletters
Я следовал этому руководству, Как я ограничиваю пользователя определенным каталогом? Maxamilian Demian (@Maxoplata), существует большой ответ Jonathan Tittle (@jtittle).
Однако у меня все еще есть проблемы при входе на пути SFTP
Я перечислил все шаги, которые я сделал - надо надеяться, кто-то с большим опытом сможет определить мою ошибку (ошибки)!
root
user-sftp-only
adduser user-sftp-only
compgen -u
user-sftp-only
в нижней части спискаgrep user-sftp-only /etc/passwd
выводы:
user-sftp-only:x:1004:1007:,,,:/home/user-sftp-only:/bin/bash
user-sftp-only
полномочия пользователя rootgpasswd -a user-sftp-only sudo
root
user-sftp-only
public
названный newsletters
:cd /srv/users/serverpilot/apps/test-app/public/
sudo mkdir newsletters
Все еще в public
папка от предыдущего шага, я работаю
$ ls -al
drwxr-xr-x+ 3 serverpilot serverpilot 4096 Mar 7 15:26 .
drwxr-xr-x+ 3 serverpilot serverpilot 4096 Mar 3 16:22 ..
-rw-r--r--+ 1 serverpilot serverpilot 3393 Mar 3 16:22 index.php
drwxrwxr-x+ 2 root root 4096 Mar 7 15:26 newsletters
От того, чтобы читать различные сообщения DigitalOcean я знаю, что должен создать группу и присвоить моему новому пользователю user-sftp-only
той группе Затем изменитесь root root
к имени моего пользователя и группы.
user-sftp-only
sudo groupadd group-sftp-only
compgen -g
group-sftp-only
в нижней части спискаПримечание: Я замечаю своего нового позвонившего пользователя user-sftp-only
находится также в этом списке?
root
user-sftp-only
названной группе group-sftp-only
Выполнение этого означает, что это больше не возможно к SSH в как пользователь user-sftp-only
usermod -g group-sftp-only -d /srv/users/serverpilot/apps/test-app/public/newsletters -s /sbin/nologin user-sftp-only
-g
указывает название группы-d
указывает пользовательский корневой каталог-s
указывает доступ оболочки (/sbin/nologin, означает, что SSH отключен для этого пользователя),Зарегистрированный как root
$ grep user-sftp-only /etc/passwd
user-sftp-only:x:1001:1004:,,,:/srv/users/serverpilot/apps/test-app/public/newsletters:/sbin/nologin
root
nano /etc/ssh/sshd_config
#Subsystem sftp /usr/lib/openssh/sftp-server -l INFO
В самой нижней части sshd_config
добавленный это:
Subsystem sftp internal-sftp
Match group group-sftp-only
ChrootDirectory %h
ForceCommand internal-sftp
root
service ssh restart
root
user-sftp-only
/srv/users/serverpilot/apps/test-app/public/newsletters
Используемый это для проверки корневой каталог принадлежит пользователю и группе
chown -R user-sftp-only:group-sftp-only /srv/users/serverpilot/apps/test-app/public/newsletters
Все еще вошел в систему как root
:
$ cd /srv/users/serverpilot/apps/test-app/public/`
$ ls -al
drwxr-xr-x+ 3 serverpilot serverpilot 4096 Mar 7 15:26 .
drwxr-xr-x+ 3 serverpilot serverpilot 4096 Mar 3 16:22 ..
-rw-r--r--+ 1 serverpilot serverpilot 3393 Mar 3 16:22 index.php
drwxrwxr-x+ 2 user-sftp-only group-sftp-only 4096 Mar 7 15:26 newsletters
$ cd /srv/users/serverpilot/apps/test-app/public/newsletters
$ ls -al
drwxrwxr-x+ 2 user-sftp-only group-sftp-only 4096 Mar 7 15:26 .
drwxr-xr-x+ 3 serverpilot serverpilot 4096 Mar 7 15:26 ..
Это - то, где я готов. Однако я не могу войти в систему в как мой новый пользователь user-sftp-only
через SFTP
tail -f /var/log/syslog
Попытка к sftp в user-sftp-only считает сообщение
информации об успехе/отказе Примечания, Если отказ, добавляет следующая строка к /etc/ssh/sshd_config
:
AllowUsers user-sftp-only
затем выполненный:
sudo service sshd restart