Назад | Перейти на главную страницу

Доступ по SFTP в Ubuntu к отдельной папке в / html /

У меня есть сервер Ubuntu с несколькими сайтами.

Я хотел бы создать учетные записи SFTP для своих разработчиков и предоставить им доступ только к одному веб-сайту.

Например, developer_A будет иметь доступ только к website_A. Developer_b будет иметь доступ только к website_B.

Я создал пользователей, установил их домашние папки на website_A и website_B соответственно, а затем использовал chown, чтобы сделать их владельцами website_A и website_B.

Проблема в том, что разработчики по-прежнему могут перемещаться за пределы своих домашних папок и получать доступ ко всем папкам на один уровень выше (только с разрешением на чтение и ничего больше).

Есть ли способ запретить разработчикам просматривать любые другие папки за пределами их домашнего каталога? (так что для developer_A я хочу, чтобы он застрял в / html / website_A)

Если попытаться использовать Match User в sshd_confing следующим образом:

Match User developer_A
    ChrootDirectory /html/website_A
    AllowTCPForwarding no
    X11Forwarding no
    ForceCommand internal-sftp

но как только я это сделаю, я больше не смогу подключиться к серверу с этим пользователем, даже если / html принадлежит пользователю root и ни у кого больше нет прав на запись в / html.

Есть ли простой способ достичь того, что я ищу? Любая помощь приветствуется. Заранее спасибо!

Также /html/website_A должен принадлежать root и быть недоступным для записи кем-либо еще, или вы должны chroot к /html/ только. Это требование для chroot и вы не можете обойти это в OpenSSH, иначе сервер будет уязвим для CVE-2009-2904.

У пользователя не может быть прав на запись в корневой каталог chroot. Период.