Мне нужно предоставить пользователю с именем "Bert" доступ к одному каталогу (/var/www/application/thisDirectory/) на моем сервере Linux.

Первоначально я пытался использовать FTP (на самом деле SSH).

Моей первой мыслью было найти Берта и сделать его домом /var/www/application/thisDirectory/ . Проблема в том, что это требует, чтобы /var/www/application/ был владельцем и был доступен только пользователю root, что недопустимо.

Затем я изменил домашний каталог Берта на /home/Bert/ . Затем я поместил символическую ссылку в домашний каталог Берта и указал на /var/www/application/thisDirectory , но я не верю, что это было разрешено, потому что Берта сделали chroot и считают угрозой безопасности, и я не смог заставить его работать. Есть мысли, как это может работать?

Затем, оставив домашний каталог Берта как /home/Bert/ , я переместил /var/www/application/thisDirectory в /home/Bert/thisDirectory/ и добавил символическую ссылку /var/www/application/thisDirectory/ чтобы указать на /home/Bert/thisDirectory/ . Хотя это технически работало, это вызвало хаос с моим контролем версий Git, и я переключился обратно.

Если я не могу заставить это работать, я полагаю, что я мог бы заглянуть в Samba, но не хотел бы.

Спасибо

1 ответ1

2

Я использовал этот способ, и я могу сказать, что это работает,

в вашем /etc /ssh /sshd_config, после изменения перезагрузите сервис sshd

Match User bert
ChrootDirectory /home/%u
ForceCommand internal-sftp

добавить пользователя

useradd -m -s /bin/false bert
passwd bert

разрешение на sftp

chown root:root /home/bert

создайте каталог для пользователя bert под моим корнем моего веб-сервера:

mkdir /srv/www/htdocs/bertdir
chown bert:wwwrun /srv/www/htdocs/bertdir

Создайте точку монтирования под домом пользователя bert для монтирования каталога:

mkdir /home/bert/www

Теперь мы монтируем каталог

mount --bind /srv/www/htdocs/bertdir/ /home/bert/www/

Теперь я использовал свой сервис sftp:

sftp> ls
bin          public_html  www       

Теперь я загружаю /etc /passwd

sftp> put /etc/passwd
Uploading /etc/passwd to /www/passwd

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .