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

Настройка PureFTPd с TLS на Fedora 14

• 5 min read • Linux • Обновлено 22 Nov 2025
Настройка PureFTPd с TLS на Fedora 14
Настройка PureFTPd с TLS на Fedora 14

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

У вас должен быть уже установлен и рабочий PureFTPd на сервере Fedora 14, например, как в руководстве: Virtual Hosting With PureFTPd And MySQL (Incl. Quota And Bandwidth Management) On Fedora 14. Если PureFTPd не запущен — настройте обычный FTP до включения TLS.

Важно: Fedora 14 — устаревшая версия. Рекомендуется планировать миграцию на поддерживаемую версию ОС в ближайшее время.

2 Установка OpenSSL

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

yum install openssl

Эта команда устанавливает необходимые библиотеки и утилиты для генерации сертификатов и работы TLS.

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
[...]

Совет: Если клиентам сложно мигрировать, временно установите 1 (mixed mode), а затем постепенно переведите на 2 (только TLS).

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

TLS требует сертификат в формате PEM. В примере он хранится в /etc/ssl/private/. Сначала создайте директорию, если её нет:

mkdir -p /etc/ssl/private/

Сгенерируйте самоподписанный сертификат (в примере срок 7300 дней и ключ RSA 2048 бит):

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

При интерактивном запросе заполните поля (указываются подсказки; ниже — перевод подсказок для справки):

Country Name (2 letter code) [XX]: <– Введите код страны, напр. DE для Германии или RU для России. State or Province Name (full name) []: <– Введите область или регион. Locality Name (eg, city) [Default City]: <– Город. Organization Name (eg, company) [Default Company Ltd]: <– Название организации. Organizational Unit Name (eg, section) []: <– Подразделение, например IT. Common Name (eg, your name or your server’s hostname) []: <– Полное доменное имя сервера, напр. server1.example.com. Email Address []: <– Email администратора.

Установите строгие права на файл сертификата:

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

Перезапустите PureFTPd, чтобы применить сертификат и параметры TLS:

/etc/init.d/pure-ftpd restart

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

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

Откройте диспетчер сайтов (Server Manager). Выберите нужный сервер и в выпадающем меню Тип сервера (Server Type) укажите FTPES (explicit FTP over TLS) вместо обычного FTP.

Скриншот выбора FTPES в настройках сервера FileZilla

При первом подключении вам будет предложено принять SSL‑сертификат сервера (подтверждение отпечатка). Проверьте соответствие Common Name и отпечатка, затем подтвердите, если всё верно.

Диалог принятия SSL сертификата в FileZilla

Если соединение прошло успешно, вы увидите список каталогов пользователя в правой панели FileZilla.

Успешное подключение к серверу в FileZilla

6 Безопасность и рекомендации

  • По возможности используйте TLS только (TLS = 2) для предотвращения нешифрованного входа.
  • Ограничьте набор разрешённых шифров и протоколов в зависимости от возможностей PureFTPd и OpenSSL. Старые протоколы (SSLv2/SSLv3) следует отключить.
  • Разместите сертификат и ключ в защищённой директории с правами 600.
  • Настройте брандмауэр так, чтобы открыты были только необходимые порты FTP (обычно 21 для управления и пул портов для пассивного режима). Для пассивного режима явно укажите диапазон портов в конфигурации и пробросьте их в брандмауэре.
  • Рассмотрите использование SFTP (SSH File Transfer) как альтернативу FTPS для упрощения туннелирования через SSH и единых правил доступа.

Когда TLS может не помочь

  • Если клиент не поддерживает FTPS/FTPES — соединение не сможет быть защищено TLS.
  • Если сеть перехватывает соединения и подставляет сертификаты (man‑in‑the‑middle), нужно контролировать доверенные корневые сертификаты и отпечатки.

7 Альтернативные подходы

  • SFTP (через SSH) — чаще предпочтительнее для передачи файлов между серверами, проще в настройке с точки зрения проброса портов.
  • Использование прокси или TLS-терминирующего балансировщика — актуально для централизованного управления сертификатами.
  • Использование современного FTP-сервера (vsftpd, ProFTPD) если требуется поддержка дополнительных модулей или лучшая интеграция с последними OpenSSL.

8 Чек-лист администратора

  • Проверить, что PureFTPd собран с поддержкой TLS (–with-tls).
  • Установить OpenSSL.
  • Сгенерировать PEM-файл и установить права 600.
  • Настроить TLS = 1 или 2 в /etc/pure-ftpd/pure-ftpd.conf.
  • Прописать диапазон пассивных портов и открыть их в брандмауэре.
  • Перезапустить сервис и проверить логи при старте.
  • Подключиться через FileZilla как FTPES и проверить отпечаток сертификата.

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

  • Сервер отвечает по FTP и устанавливает TLS-сессии (для TLS=1) или отклоняет нешифрованные подключения (для TLS=2).
  • В логах видно успешное TLS-шифрование при подключениях клиентов.
  • Права на файл сертификата установлены 600 и файл доступен только root.
  • Клиент (FileZilla) может подключиться, и отпечаток сертификата совпадает с ожидаемым.

10 Глоссарий — 1 строка

  • TLS: протокол транспорта для шифрования сетевых соединений; защищает пароли и данные.
  • FTPS: FTP поверх TLS/SSL (может быть implicit или explicit).
  • FTPES: explicit FTPS — явное поднятие TLS внутри FTP-сессии (FileZilla использует этот термин).
  • PEM: формат файла, который хранит сертификат и приватный ключ в одном файле в кодировке Base64.

11 Ссылки

Краткое резюме

Настройка TLS в PureFTPd на Fedora 14 включает установку OpenSSL, корректную запись TLS в конфиге, генерацию PEM‑сертификата, установку прав и перезапуск сервиса. Проверьте подключение через FileZilla с типом соединения FTPES и убедитесь в безопасности конфигурации.

Поделиться: 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 быстро