Серверы FTP – это программное обеспечение, которое позволяет создавать FTP-соединение между вашим локальным компьютером и веб-сервером. ProFTPD – это FTP-сервер для серверов Unix/Linux, очень настраиваемый и очень эффективный, он бесплатный и с открытым исходным кодом и выпускается под лицензией GPL.
В этой статье мы расскажем вам о том, как установить и настроить ProFTPD на системах Ubuntu и Debian. Мы рассмотрим установку сервера, настройку учетных записей пользователей, настройку безопасности и тестирование установки.
Шаг 1: Установка сервера ProFTPD в Ubuntu
Конечно, для того чтобы использовать программное обеспечение, вам необходимо его установить. Для начала убедитесь, что все ваши системные пакеты обновлены, выполнив в терминале следующие команды apt.
sudo apt update sudo apt upgrade
После того как в системе установлены последние патчи безопасности и обновления программного обеспечения, установите сервер ProFTPD, выполнив следующую команду.
sudo apt install proftpd

Во время установки вам будет предложено выбрать тип использования вашего сервера ProFTPD, вы можете выбрать наиболее подходящий режим, который соответствует вашим потребностям.
- Standalone: ProFTPD работает независимо и обрабатывает все соединения.
- inetd: ProFTPD работает как служба под управлением суперсервера inetd.
Для большинства систем рекомендуется режим Standalone, так как он обеспечивает лучшую производительность и более простое управление.

После завершения установки автоматически запустится ProFTPD и вы можете убедиться, что служба работает, используя:
sudo systemctl status proftpd

Если ProFTPD работает правильно, вы увидите его статус как активный (работающий).
Шаг 2: Настройка сервера ProFTPD в Ubuntu
Прежде чем начать использовать его, необходимо отредактировать некоторые файлы, /etc/proftpd/proftpd.conf
является файлом конфигурации по умолчанию для Ubuntu/Debian серверов, чтобы начать редактировать его, используйте редактор nano, как показано на рисунке.
sudo nano /etc/proftpd/proftpd.conf
Вот несколько основных параметров конфигурации, которые вы, возможно, захотите изменить в соответствии с вашими потребностями:
ServerName
– это имя вашего FTP-сервера, вы можете использовать свое доменное имя или пользовательское имя для облегчения идентификации.
ServerName "MyFTPServer"
DefaultRoot
, чтобы пользователи FTP были ограничены своими домашними каталогами и не могли перемещаться по всей файловой системе, откомментируйте эту строку, удалив стоящее перед ней #:
DefaultRoot ~
- По умолчанию FTP работает через порт 21. Если вы хотите использовать другой порт (например, в целях безопасности), измените номер порта здесь:
Port 2121
- Параметр
MaxInstances
определяет, сколько клиентов может быть подключено одновременно. Вы можете настроить этот параметр в соответствии с вашими потребностями:
MaxInstances 30
- Если вы хотите отключить анонимный доступ по соображениям безопасности, убедитесь, что раздел
Anonymous
выглядит следующим образом:
<Anonymous ~ftp> User ftp Group nogroup # We want clients to be able to login with "anonymous" as well as "ftp" UserAlias anonymous ftp # Limit the maximum number of anonymous logins MaxClients 10 # Disallow login <Limit LOGIN> DenyAll </Limit> </Anonymous>
После внесения этих изменений сохраните файл и перезапустите службу ProFTPD, чтобы применить изменения:
sudo systemctl restart proftpd
Во время установки ProFTPD автоматически создается пользователь по умолчанию proftpd, но для него необходимо создать пароль, для этого выполните команду.
sudo passwd proftpd
Шаг 3: Создание пользователей ProFTPD
ProFTPD может использовать учетные записи обычных пользователей вашей системы для доступа к FTP, что означает, что вам не нужно создавать отдельные учетные записи FTP, если у ваших пользователей уже есть учетные записи на сервере.
Чтобы создать нового пользователя для доступа к FTP, выполните следующую команду adduser:
sudo adduser ftpuser
Вам будет предложено ввести пароль и некоторую дополнительную информацию для нового пользователя. Теперь эта учетная запись сможет входить на FTP-сервер, используя свое имя пользователя и пароль.
Если вы хотите, чтобы этот пользователь был ограничен своим домашним каталогом, убедитесь, что опция DefaultRoot ~
установлена в файле proftpd.conf, как упоминалось ранее.
Шаг 4: Защита сервера ProFTPD
FTP по своей сути небезопасен, поскольку передает данные, включая имена пользователей и пароли, открытым текстом. Чтобы повысить безопасность, вам следует настроить ProFTPD на использование FTPS, который добавляет шифрование с помощью SSL/TLS.
Если у вас нет сертификатов SSL, вы можете сгенерировать самоподписанный сертификат для целей тестирования. Для производственной среды рекомендуется использовать сертификат от доверенного центра сертификации (CA).
Чтобы сгенерировать самоподписанный SSL-сертификат:
sudo openssl req -x509 -newkey rsa:2048 -keyout /etc/ssl/private/proftpd.key -out /etc/ssl/certs/proftpd.crt -days 365 -nodes
После генерации сертификата снова отредактируйте файл proftpd.conf, чтобы включить FTPS.
sudo nano /etc/proftpd/proftpd.conf
Добавьте или удалите следующие строки:
<IfModule mod_tls.c> TLSEngine on TLSLog /var/log/proftpd/tls.log TLSProtocol SSLv23 TLSRSACertificateFile /etc/ssl/certs/proftpd.crt TLSRSACertificateKeyFile /etc/ssl/private/proftpd.key TLSVerifyClient off TLSRequired on </IfModule>
После внесения этих изменений перезапустите ProFTPD:
sudo systemctl restart proftpd
Шаг 5: Проверка FTPS-соединения
Чтобы проверить настройку FTPS, вы можете использовать FTP-клиент, например FileZilla или любой другой клиент, поддерживающий FTPS.
- Откройте FTP-клиент и создайте новый профиль сайта.
- Введите IP-адрес или доменное имя FTP-сервера, имя пользователя и пароль.
- В настройках соединения выберите FTPS или FTP через SSL/TLS.
Если все настроено правильно, вы сможете безопасно подключиться к вашему серверу ProFTPD.
Шаг 6: Управление настройками брандмауэра
Если вы используете брандмауэр (например, UFW), вам нужно разрешить FTP-трафик через брандмауэр.
Чтобы разрешить стандартный FTP:
sudo ufw allow 21/tcp
Для FTPS (если вы используете его на другом порту), вам нужно разрешить и этот порт. Например, если вы изменили порт на 2121:
sudo ufw allow 2121/tcp
После внесения этих изменений перезапустите брандмауэр:
sudo ufw reload
Шаг 7: Тестирование FTP-сервера
Чтобы проверить, работает ли ваш сервер ProFTPD, используйте браузер или FTP-клиент. Вы можете подключиться к вашему FTP-серверу, используя следующий синтаксис:
ftp://<server-ip-or-domain>
Войдите в систему под учетной записью пользователя FTP, которую вы создали ранее. Вы сможете загружать, скачивать и управлять файлами на сервере.
Шаг 8: Устранение неполадок ProFTPD
Все сообщения об ошибках по умолчанию сохраняются в /var/log/proftpd/proftpd.log
, вы можете проверить этот файл, если ваша установка сервера ProFTPD не работает.
Вы также должны отметить, что иногда случается так, что сервер ProFTPD лагает и вы не можете получить доступ к серверу из-за сообщения Connection Refused, это не проблема, все, что вам нужно сделать, это перезапустить сервер ProFTPD, пока он не заработает (в случае, если не было других ошибок).
Заключение
Вы успешно установили и настроили ProFTPD на системах Ubuntu и Debian. В этом руководстве были рассмотрены базовая установка, конфигурация, настройка безопасности с помощью SSL/TLS и настройка брандмауэра. Теперь у вас есть гибкий и безопасный FTP-сервер для передачи файлов.
Для расширенной настройки, такой как ограничение пропускной способности, настройка виртуальных пользователей или включение анонимной загрузки, обратитесь к документации ProFTPD. Всегда следите за безопасностью своего сервера и обновляйте программное обеспечение для обеспечения максимальной защиты.
Комментарии (0)