Настройка сервера · 3 min read · Dec 14, 2025
Как настроить PureFTPd и FileZilla для использования TLS-сессий на CentOS 7.2
Эта статья объясняет, как настроить PureFTPd для принятия TLS-сессий на сервере CentOS 7.2. Обычный FTP является небезопасным протоколом, так как все пароли и данные передаются в открытом виде. Используя TLS, вся коммуникация может быть зашифрована, что делает FTP гораздо более безопасным.
1 Предварительная заметка
У вас должна быть рабочая установка PureFTPd на вашем сервере CentOS 7.2, например, как показано в этом руководстве: FTP-сервер с PureFTPd, MariaDB и виртуальными пользователями (включая управление квотами и пропускной способностью) на CentOS 7.2
2 Установка OpenSSL
TLS требует OpenSSL; чтобы установить OpenSSL, мы просто выполняем:
yum -y install openssl3 Настройка PureFTPd
Откройте /etc/pure-ftpd/pure-ftpd.conf…
nano /etc/pure-ftpd/pure-ftpd.confЕсли вы хотите разрешить FTP и TLS-сессии, установите TLS в 1:
[...]
# Эта опция может принимать три значения :
# 0 : отключить уровень шифрования SSL/TLS (по умолчанию).
# 1 : принимать как традиционные, так и зашифрованные сессии.
# 2 : отклонять соединения, которые не используют механизмы безопасности SSL/TLS,
# включая анонимные сессии.
# Не _разкомментируйте_ это слепо. Убедитесь, что :
# 1) Ваш сервер был скомпилирован с поддержкой SSL/TLS (--with-tls),
# 2) Действительный сертификат установлен,
# 3) Только совместимые клиенты смогут войти.
TLS 1
[...]Если вы хотите принимать только TLS-сессии (без FTP), установите TLS в 2:
[...]
# Эта опция может принимать три значения :
# 0 : отключить уровень шифрования SSL/TLS (по умолчанию).
# 1 : принимать как традиционные, так и зашифрованные сессии.
# 2 : отклонять соединения, которые не используют механизмы безопасности SSL/TLS,
# включая анонимные сессии.
# Не _разкомментируйте_ это слепо. Убедитесь, что :
# 1) Ваш сервер был скомпилирован с поддержкой SSL/TLS (--with-tls),
# 2) Действительный сертификат установлен,
# 3) Только совместимые клиенты смогут войти.
TLS 2
[...]Чтобы вообще не разрешать TLS (только FTP), установите TLS в 0:
[...]
# Эта опция может принимать три значения :
# 0 : отключить уровень шифрования SSL/TLS (по умолчанию).
# 1 : принимать как традиционные, так и зашифрованные сессии.
# 2 : отклонять соединения, которые не используют механизмы безопасности SSL/TLS,
# включая анонимные сессии.
# Не _разкомментируйте_ это слепо. Убедитесь, что :
# 1) Ваш сервер был скомпилирован с поддержкой SSL/TLS (--with-tls),
# 2) Действительный сертификат установлен,
# 3) Только совместимые клиенты смогут войти.
TLS 0
[...]Затем уберите # перед следующими 2 строками:
TLSCipherSuite HIGH
CertFile /etc/ssl/private/pure-ftpd.pemи сохраните измененный конфигурационный файл.
4 Создание SSL-сертификата для TLS
Чтобы использовать TLS, мы должны создать SSL-сертификат. Я создаю его в /etc/ssl/private/, поэтому сначала создаю этот каталог:
mkdir -p /etc/ssl/private/После этого мы можем сгенерировать SSL-сертификат следующим образом:
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pemCountry Name (2 letter code) [XX]: <– Введите название вашей страны (например, “DE”).
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 Department”).
Common Name (eg, your name or your server’s hostname) []: <– Введите полное доменное имя системы (например, “server1.example.com”).
Email Address []: <– Введите ваш адрес электронной почты.
Измените права доступа к SSL-сертификату:
chmod 600 /etc/ssl/private/pure-ftpd.pemНаконец, перезапустите PureFTPd:
systemctl restart pure-ftpd.serviceВот и все. Теперь вы можете попробовать подключиться с помощью вашего FTP-клиента; однако вы должны настроить ваш FTP-клиент для использования TLS - смотрите следующую главу о том, как это сделать с FileZilla.
5 Настройка FileZilla для TLS
Чтобы использовать FTP с TLS, вам нужен FTP-клиент, который поддерживает TLS, например, FileZilla или плагин FireFTP для Firefox.
В FileZilla откройте Диспетчер сайтов:

Выберите сервер, который использует PureFTPd с TLS; в выпадающем меню Тип сервера выберите Требовать явный FTP через TLS вместо обычного FTP:

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

Если все пройдет хорошо, вы должны быть теперь вошли на сервер:

6 Ссылки
- PureFTPd: http://www.pureftpd.org/
- FileZilla: http://filezilla-project.org/
- CentOS: http://www.centos.org/
Get new posts in your inbox
No spam. Unsubscribe anytime.