Настройте FTP-сервер в Linux
Протокол передачи файлов (FTP) - это широко используемый сетевой протокол, используемый для передачи файлов между двумя компьютерами. Протокол основан на архитектуре клиент-сервер. На одном из компьютеров работает программа FTP-сервера, а на другом - клиентская программа FTP, которая может загружать или выгружать файлы на серверный компьютер в зависимости от разрешений.
Обычно пользователи, осуществляющие доступ к FTP-серверу, должны пройти аутентификацию с использованием имени пользователя и пароля, однако сервер также может быть настроен для разрешения доступа анонимным пользователям.
Почти все популярные операционные системы, такие как Windows, GNU / Linux, Mac OS, имеют FTP-сервер и клиентские программы. В этой статье мы увидим, как настроить FTP-сервер в системе Ubuntu.
Установка
В Ubuntu программа vsftpd
, что означает Демон очень безопасного FTP - популярная программа FTP-сервера, которую можно запускать как демон, то есть как фоновый процесс, как и большинство серверов.
Эта программа доступна в стандартном репозитории Ubuntu. Чтобы установить его, запустите:
sudo apt установить vsftpd
Примечание: Для версий Ubuntu <14.04 используйте apt-get
вместо подходящий
.
После установки vsftpd
демон должен запуститься автоматически. Чтобы проверить, правильно ли он запустился, запустите:
статус службы vsftpd
Если статус не Активный
, т. е. он не запустился должным образом, выполните следующую команду, чтобы запустить его, и снова проверьте состояние после запуска, чтобы узнать, работает ли он сейчас Активный
.
sudo service vsftpd start
Конфигурация
Файл конфигурации для vsftpd
является /etc/vsftpd.conf
. Здесь доступно несколько вариантов конфигурации. Мы изменим две опции, которые обычно требуются.
Откройте файл с помощью vim или любого другого редактора по вашему выбору.
sudo vim /etc/vsftpd.conf
По умолчанию анонимный доступ к FTP-серверу запрещен. Чтобы разрешить анонимный доступ, мы меняем переменную anonymous_enable
от НЕТ
к ДА
в файле.
Для анонимного доступа пользователь с именем ftp
создается при установке. Каталог по умолчанию для доступа анонимного пользователя: / SRV / ftp
, который на самом деле является домашним каталогом пользователя ftp
. Все файлы, которые будут доступны анонимным пользователям, должны быть скопированы сюда.
Если необходимо изменить каталог для анонимного доступа, нам нужно изменить домашний каталог пользователя. ftp
. Для этого запустите:
sudo usermod -d ftp
Точно так же по умолчанию доступ для записи, то есть доступ для загрузки на FTP-сервер, не разрешен. Для его включения раскомментируем строку переменной write_enable = ДА
.
Сохраните и выйдите из файла. Если вы используете vim, нажмите Побег
чтобы перейти в командный режим vim, затем введите : wq
и нажмите Входить
для сохранения и выхода из файла.
Нам необходимо перезапустить демон FTP-сервера, чтобы эти изменения вступили в силу. Чтобы перезапустить его, запустите:
sudo service vsftpd перезапуск
Тестирование сервера
Большинство современных веб-браузеров имеют встроенную поддержку доступа к FTP-серверам, то есть они могут действовать как интегрированные FTP-клиенты. Однако они поддерживают только загрузку файлов с сервера, но не загрузку.
Скачать тест
Входить ftp: //
в адресной строке браузера для доступа к FTP-серверу, где - это IP-адрес или доменное имя FTP-сервера. Чтобы протестировать локальный FTP-сервер, введите
ftp :: //127.0.0.1
Обратите внимание, что, поскольку анонимный доступ был включен, сервер показывает нам список каталогов папки, которую мы включили для анонимного доступа, а именно. / SRV / файлы / ftp
.
Давайте изменим файл конфигурации, чтобы отключить анонимный доступ сейчас и протестировать доступ с помощью входа пользователя.
sudo vim /etc/vsftpd.conf
Измените переменную anonymous_enable
к НЕТ
.
Сохраните и выйдите из файла. Чтобы изменения вступили в силу, перезапустите FTP-сервер.
sudo service vsftpd перезапуск
Снова откройте тот же URL в браузере (ftp://127.0.0.1
).
Как мы видим, сервер теперь просит нас ввести имя пользователя и пароль. Введите учетные данные и нажмите В ПОРЯДКЕ
.
Теперь в списке каталогов находится домашний каталог вошедшего в систему пользователя. В данном случае это / home / abhi
.
Загрузить тест
Веб-браузеры позволяют скачивать файлы только с FTP-серверов. Чтобы загрузить файлы на FTP-сервер, мы получаем доступ к серверу из файлового проводника.
В Ubuntu мы будем использовать файловый менеджер по умолчанию Nautilus. Откройте Nautilus, щелкнув значок в доке, или выполните поиск в Dash и откройте его.
Нажмите на Другие локации
в самом низу.
В самом низу введите URL нашего FTP-сервера (ftp :: //127.0.0.1
) в поле ввода «Подключиться к серверу» и нажмите кнопку «Подключиться».
Установите флажок «Зарегистрированный пользователь» и введите имя пользователя и пароль. Вы можете выбрать любой из трех вариантов запоминания введенного выше пароля. Наконец, нажмите кнопку «Подключить» вверху окна.
Теперь мы можем легко скопировать или создать файл на FTP-сервере, как обычно в файловом проводнике. FTP-сервер отображается слева, как показано ниже.
Note: Несмотря на то vsftpd
может быть настроен для записи для анонимных пользователей, это огромный риск для безопасности системы и никогда не должен использоваться! Выгрузка на FTP-сервер должна быть разрешена только для пользователей системы.
Вывод
Таким образом мы можем настроить FTP-сервер в Ubuntu. Убедитесь, что вы пытаетесь получить доступ к нему из другой системы в вашей сети, и в этом случае вам нужно будет ввести ftp: // Ваш_IP_адрес
вместо ftp://127.0.0.1
в браузере другой системы.
Обратите внимание, что большинство программ FTP-серверов защищено для шифрования передаваемого контента с помощью SSL / TLS (называемого FTPS) или с помощью SSH FTP. vsftpd
в своей реализации использует FTPS.