Гид по технологиям

Настройка PureFTPd с TLS на CentOS 6.2

• 4 min read • DevOps • Обновлено 22 Nov 2025
PureFTPd с TLS на CentOS 6.2
PureFTPd с TLS на CentOS 6.2

Краткое содержание

  • Предварительные требования
  • Установка OpenSSL
  • Конфигурация PureFTPd (режимы TLS)
  • Создание SSL-сертификата
  • Перезапуск и тестирование
  • Настройка FileZilla (FTPES)
  • Рекомендации по безопасности и отладке
  • Чеклисты, критерии приёмки и альтернативы

1 Предварительные заметки

Должна быть готовая рабочая установка PureFTPd на сервере CentOS 6.2 (например, как в руководстве по виртуальному хостингу с PureFTPd и MySQL). Убедитесь, что у вас есть root-доступ или sudo-права.

Важно: CentOS 6.2 устарел и больше не получает обновлений безопасности. По возможности планируйте миграцию на поддерживаемую версию ОС.

2 Установка OpenSSL

OpenSSL требуется для TLS. Установите его командой:

yum install openssl

3 Конфигурация PureFTPd

Откройте конфигурационный файл:

vi /etc/pure-ftpd/pure-ftpd.conf

Если вы хотите разрешить и обычные FTP, и TLS-сессии, установите TLS в 1:

| [...] # This option can accept three values : # 0 : disable SSL/TLS encryption layer (default). # 1 : accept both traditional and encrypted sessions. # 2 : refuse connections that don't use SSL/TLS security mechanisms, # including anonymous sessions. # Do _not_ uncomment this blindly. Be sure that : # 1) Your server has been compiled with SSL/TLS support (--with-tls), # 2) A valid certificate is in place, # 3) Only compatible clients will log in. TLS 1 [...] |

Если вы хотите принимать только TLS-сессии (без незащищённого FTP), установите TLS в 2:

| [...] # This option can accept three values : # 0 : disable SSL/TLS encryption layer (default). # 1 : accept both traditional and encrypted sessions. # 2 : refuse connections that don't use SSL/TLS security mechanisms, # including anonymous sessions. # Do _not_ uncomment this blindly. Be sure that : # 1) Your server has been compiled with SSL/TLS support (--with-tls), # 2) A valid certificate is in place, # 3) Only compatible clients will log in. TLS 2 [...] |

Чтобы полностью отключить TLS и использовать только FTP, установите TLS в 0:

| [...] # This option can accept three values : # 0 : disable SSL/TLS encryption layer (default). # 1 : accept both traditional and encrypted sessions. # 2 : refuse connections that don't use SSL/TLS security mechanisms, # including anonymous sessions. # Do _not_ uncomment this blindly. Be sure that : # 1) Your server has been compiled with SSL/TLS support (--with-tls), # 2) A valid certificate is in place, # 3) Only compatible clients will log in. TLS 0 [...] |

Важно: перед принудительным включением TLS (значение 2) убедитесь, что все клиенты поддерживают FTPS; иначе они не смогут подключиться.

4 Создание SSL-сертификата для TLS

Создайте каталог для приватных ключей и сертификатов, если он ещё не существует:

mkdir -p /etc/ssl/private/

Сгенерируйте самоподписанный сертификат (пример на 2048 бит, срок действия 20 лет):

openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem

При появлении запросов введите соответствующие данные (страна, область, город, организация, FQDN сервера и т.д.).

Защитите файл сертификата правами доступа:

chmod 600 /etc/ssl/private/pure-ftpd.pem

Перезапустите PureFTPd:

/etc/init.d/pure-ftpd restart

Если служба не перезапускается, проверьте логи (/var/log/messages или системный журнал) и убедитесь, что конфигурация и путь к сертификату корректны.

5 Настройка FileZilla для TLS

Для работы с защищённым FTP используйте FTP-клиент с поддержкой TLS, например FileZilla.

В FileZilla откройте Менеджер сайтов и выберите сервер, где настроен PureFTPd. В выпадающем списке «Тип сервера» (Server Type) выберите FTPES (Explicit FTP over TLS):

Если вы подключаетесь впервые, FileZilla запросит подтверждение SSL-сертификата сервера — примите его, если вы доверяете серверу:

После успешного подключения вы увидите файловую систему сервера в интерфейсе клиента:

ALT-примечание: если используете самоподписанный сертификат, пользователям нужно будет вручную принять сертификат в клиенте.

6 Ссылки

Рекомендации по безопасности и отладке

  • Используйте сильный ключ RSA минимум 2048 бит; при возможности — 3072/4096.
  • Ограничьте поддерживаемые версии TLS (отключите SSLv2/SSLv3). Вырежьте слабые шифры и включите только современный набор (например, ECDHE+AES/GCM).
  • По возможности отдавайте предпочтение SFTP (SSH) для передачи файлов — это альтернатива FTPS с другим протоколом.
  • Включите chroot для пользователей FTP, чтобы ограничить доступ к файловой системе.
  • Настройте fail2ban для защиты от грубой силы.
  • Логируйте успешные и неуспешные подключения и регулярно проверяйте логи.

Когда TLS не работает:

  • Клиент не поддерживает FTPS (особенно старые встроенные FTP-клиенты). Проверьте совместимость.
  • Неверный путь к файлу сертификата или неправильные права доступа.
  • PureFTPd был собран без опции –with-tls.

Чек-лист администратора (быстрый контроль)

  • PureFTPd установлен и скомпилирован с поддержкой TLS (–with-tls).
  • OpenSSL установлен.
  • Сертификат /etc/ssl/private/pure-ftpd.pem присутствует и права 600.
  • В конфиге pure-ftpd.conf задан TLS = 1 или 2 в зависимости от политики.
  • Сервис перезапустился без ошибок.
  • Клиенты протестированы (FileZilla/WinSCP).
  • Логи и механизмы защиты (fail2ban) настроены.

Критерии приёмки

  • Сервер принимает TLS-сессии (FTPS/FTPES) и клиенты успешно проходят аутентификацию.
  • Трафик между клиентом и сервером зашифрован (проверяется сниффером на стороне сети или просмотром статуса соединения в клиенте).
  • При попытке подключения старого неподдерживаемого клиента при значении TLS=2 соединение отклоняется.

Альтернативные подходы и миграция

  • Использовать SFTP (SSH File Transfer) вместо FTPS — проще в настройке с точки зрения ключей и портов (один порт 22).
  • Протестировать ProFTPD или vsftpd с поддержкой TLS как альтернативы PureFTPd.
  • План миграции: обновление ОС (например, на CentOS 7/8/Stream или другую поддерживаемую дистрибуцию) -> пересборка/переустановка сервисов -> перенос SSL-ключей и тесты.

Небольшой словарь (1 строка)

  • TLS — протокол шифрования, используемый для защиты трафика.
  • FTPS — FTP поверх TLS/SSL (explicit/implicit).
  • FTPES — FTP explicit over TLS (явное переключение на TLS в сессии).
  • SFTP — передача файлов через SSH, не связана с FTP/TLS.

Короткое руководство для пользователя

  1. В FileZilla выберите FTPES как тип соединения. 2. Введите хост, порт (обычно 21), логин/пароль. 3. При первом подключении подтвердите сертификат. 4. Проверьте, что в статусе соединения указано «TLS».

Итог

Настройка PureFTPd с TLS на CentOS 6.2 — относительно прямая задача: установить OpenSSL, сгенерировать сертификат, задать нужное значение TLS в конфиге и перезапустить службу. Обязательно протестируйте подключение клиентами и примените базовые меры безопасности: ограничение шифров, права на ключи, мониторинг и брутфорс‑защиту.

Важно: рассматривайте SFTP как долгосрочную альтернативу и планируйте миграцию с устаревшей ОС.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро