Создайте FTP-пользователей с ограниченным доступом только к домашнему каталогу Ubuntu 12.04

Вопрос или проблема

У меня сервер Ubuntu 12.04, и я установил службу VSFTPD для FTP.

Я пытаюсь создать FTP-пользователя, который имеет доступ только к директории /var/www/ и ко всем правам для подкаталогов.

FTPUser не должен иметь доступ к каким-либо основным / верхним уровням директориям и файлам.

На данный момент я сделал следующее.

  • Я создал пользователя с именем FTPUser1
  • Я изменил домашнюю директорию для FTPUser1 на /var/www/
  • Я отредактировал файл /etc/vsftpd.conf и установил chroot_local_user=YES
  • Перезапустил службу vsftpd

После всех этих действий мой FTPUser1 все равно может получить доступ к верхним уровням директориям и файлам.

Пожалуйста, дайте мне знать, как я могу заблокировать доступ к верхним уровням?

Как владелец/root, выполните:

chmod 700 -r [directory]

700 означает, что только владелец имеет полный доступ, -r означает применить правила к подкаталогам. Вы также захотите:

chown user:user -r [/path/to/dir]

Команда chown изменяет владельца. user: – это имя пользователя, который станет владельцем; :user – это группа.

(Не знаю, почему вопрос 2014 года снова появляется на главной странице, но все равно 😀 )

Возможно, не лучшая идея изменять общие права доступа к остальной файловой системе, как было предложено в другом ответе. Лучший способ – использовать функцию, называемую “chroot”.

“chroot”, сокращение от “change root”, просто делает это: он меняет корень дерева директорий, к которому (FTP) пользователь может получить доступ, в то, что администратор хочет, чтобы это было. Иногда эту же функцию называют “тюремным” размещением пользователя в его домашней директории.

Большинство FTP-серверов поддерживают chroot (за исключением некоторых очень маленьких, минимальных). Я не очень знаком с vsftpd, но согласно этому руководству на Cybercity, вам нужно установить директиву конфигурации chroot_local_user на 1.

Ответ или решение

Как создать FTP-пользователей с ограниченным доступом к домашнему каталогу в Ubuntu 12.04

Введение

В данной статье мы рассмотрим, как создать FTP-пользователя с ограниченным доступом только к каталогу /var/www/ в серверной среде Ubuntu 12.04 с использованием сервиса VSFTPD. Задача заключается в том, чтобы предоставить пользователю доступ только к указанному каталогу и при этом заблокировать доступ к другим уровням файловой системы.

Шаги по созданию пользователя FTP

Следуя этим шагам, вы сможете создать FTP-пользователя с необходимыми ограничениями:

1. Создание пользователя

Сначала необходимо создать нового пользователя (например, FTPUser1) с домашним каталогом, установленным на /var/www/. Для этого выполните следующую команду:

sudo useradd -d /var/www/ -s /usr/sbin/nologin FTPUser1

2. Установка пароля

Установите пароль для нового пользователя с помощью команды:

sudo passwd FTPUser1

3. Настройка VSFTPD

Теперь переходим к настройкам VSFTPD. Откройте файл конфигурации серверной программы:

sudo nano /etc/vsftpd.conf

Проверьте и измените следующие строки:

chroot_local_user=YES
allow_writeable_chroot=YES
  • Опция chroot_local_user=YES позволяет ограничить пользователя его домашним каталогом.
  • allow_writeable_chroot=YES гарантирует, что пользователи смогут записывать в корне их «внутреннего» чroot-директории.

4. Настройка прав доступа

Для того чтобы пользователь мог получить доступ только к каталогу /var/www/, необходимо правильно настроить права доступа к этому каталогу. Выполните следующие команды:

sudo chown -R FTPUser1:FTPUser1 /var/www/
sudo chmod -R 750 /var/www/
  • chown: изменяет владельца каталога и всех его подкаталогов на FTPUser1.
  • chmod: устанавливает разрешения, позволяющие владельцу читать и записывать, а группе только читать. Остальным пользователям доступ запрещён.

5. Перезагрузка VSFTPD

После внесения всех изменений необходимо перезапустить сервис VSFTPD:

sudo service vsftpd restart

Проверка безопасности

После выполнения всех шагов, рекомендуется протестировать доступ FTP-пользователя с помощью FTP-клиента (например, Filezilla). Убедитесь, что FTPUser1 видит только каталоги и файлы внутри /var/www/ и не имеет возможности навигации в другие каталоги.

Заключение

Теперь вы успешно создали FTP-пользователя с ограниченным доступом к каталогу /var/www/. Следуя этому гид, вы сможете обеспечить как безопасность, так и функциональность вашего FTP-сервера.

Если у вас есть дополнительные вопросы или вам требуется помощь, не стесняйтесь обращаться за информацией.

Оцените материал
Добавить комментарий

Капча загружается...