Как настроить vsftpd на Ubuntu 12.04

vsftpd (англ. Very Secure FTP Daemon) — FTP-сервер с поддержкой IPv6 и SSL. Первые две буквы в названии vsftpd означают “very secure” («очень защищенный»), поскольку разработчики программы предусмотрели защиту от многих возможных уязвимостей протокола FTP.

Шаг #1: Установка vsftpd

С помощью специальной команды установить программу на VPS-сервер можно за пару секунд:

sudo apt-get install vsftpd

Фактически, после скачивания всех нужных файлов, пользователь получает уже сконфигурированную программу с базовыми настройками безопасности. Однако они недостаточны — например, в режиме по умолчанию vsftpd позволяет доступ к серверу анонимным пользователям.

Шаг #2: Настройка vsftpd

После установки программы, можно заняться ее настройкой. Для этого нужно открыть конфигурационный файл:

sudo nano /etc/vsftpd.conf

В нем нужно найти строчку Anonymous_enable и поменять значение с YES на NO:

anonymous_enable=NO

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

Также следует «раскомментировать» (убрать знак #) опцию local_enable и поменять ее значение на YES, а затем — разрешить пользователям осуществлять запись в директорию, убрав символ комментария для опции write_enable:

local_enable=YES
write_enable=YES

Затем нужно раскомментировать опцию chroot_local_user — если она будет установлена в YES, то все пользователи будут ограничены своими правами chroot и не смогут получить доступ к другим частям сервера:

chroot_local_user=YES

После этого необходимо сохранить изменений и выйти из конфигурационного файла.

Чтобы избежать ошибки запуска последних версий vsftpd ("refusing to run with writable root inside chroot") при работе не из под пользователя root (пользователи 1cloud по умолчанию получают доступ к своим серверам именно с такими привилегиями, так что появление подобной ошибки маловероятно), можно предпринять несколько простых шагов:

  1. Создать нового пользователя (здесь и далее ##username## необходимо заменить на название конкретного пользовалея) adduser ##username##
  2. Дать новому пользователю администраторский доступ командой adduser ##username## sudo
  3. Создать новую директорию внутри пользовательской домашней директории: mkdir /home/##username##/files

    Также возможно система откажется создавать весь путь сразу, тогда нужно будет перейти в папку /home:

    cd /home

    Создать в ней папку нужного пользователя /##username## (sudo mkdir ##username##), перейти в нее командой cd и уже затем создать папку files командой mkdir.

  4. Изменить владельца этой директории на корневого пользователя root: chown root:root /home/##username##
  5. Осуществить все изменения внутри поддиректории “files”.

    После внесения всех изменений в конфигурационный файл, нужно перезапустить vsftpd.

    sudo service vsftpd restart

Шаг #3: Получение доступа к FTP-серверу

После установки FTP-сервера получить к нему доступ можно двумя способами: через адресную строку браузера и с помощью командной строки.

Чтобы воспользоваться первым способом нужно вбить в адресную строку браузера название протокола ftp и доменное имя или IP-адрес сервера: ftp://example.com (пример с IP-адресом: ftp://5.200.47.19/)

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

Альтернативный способ заключается в использовании в терминале команды ftp в комбинации с доменным именем или IP-адресом сайта:ftp example.com

После завершения работы с FTP, выйти из этого режима терминала можно с помощью команды “exit”.


Средняя оценка: 4,8, всего оценок: 9