На этой странице
- Предварительное замечание
- Установка OpenSSL
- Настройка PureFTPd
- Создание сертификата SSL для TLS
- Настройка FileZilla для TLS
- Ссылки
В данной статье описывается, как настроить PureFTPd с помощью TLS сессии на сервере CentOS 7. Простой FTP является небезопасным протоколом, так как все пароли и все данные передаются в незашифрованном виде. Используя TLS, вся связь может быть зашифрована, что делает FTP гораздо более безопасным.
1 Предварительное замечание
Вы должны иметь рабочую установку PureFTPd на вашем CentOS 7 – сервер.
2 Установка OpenSSL
OpenSSL необходим для TLS, установить OpenSSL, мы просто запустим:
yum install openssl
3 Настройка PureFTPd
Открыть /etc/pure-ftpd/pure-ftpd.conf … (Смотрите гид, как установить nano в Linux)
nano /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 [...]
Затем удалите # перед следующей 2-й линией:
TLSCipherSuite HIGH CertFile /etc/ssl/private/pure-ftpd.pem
и сохраните измененный файл конфигурации.
4 Создание сертификата SSL Для TLS
Для того , чтобы использовать TLS, мы должны создать сертификат SSL. Я создаю его в /etc/ssl/private/, поэтому я в первую очередь создаю каталог с помощью команды mkdir:
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.pem
Название страны (2 буквы кода) [XX]: <- Введите Название страны (например, “RU”).
Название региона или штата (полное имя) []: . <- Введите штат или область
Имя местности ( например, город) [Default City]: <- Введите город.
Название организации (например, компании) [ по умолчанию Company Ltd]: <- Введите название организации (например, название вашей компании).
Имя организационного подразделения ( например, раздел) []: <- Введите организационное подразделение , имя (например ,”ИТ – отдел”).
Общее название (например, ваше имя или имя хоста вашего сервера) []: <- Введите полное доменное имя системы (например , “server1.example.com”).
Адрес электронной почты []: <- Введите ваш адрес электронной почты.
Изменение разрешений сертификата 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 – клиент (смотрите гид про 6 лучших FTP клиентов), который поддерживает TLS, например, FileZilla или плагин FireFTP в Firefox.
В FileZilla, откройте диспетчер сайта:
Выберите сервер , который использует PureFTPd с TLS. В типе сервера раскрывающемся меню выберите: явном виде требуют FTP через TLS вместо обычного FTP :
Теперь вы можете подключиться к серверу. Если вы сделаете это в первый раз, вы должны принять новый сертификат SSL сервера:
Если все пойдет хорошо, теперь вы должны войти в систему на сервере:
6 Ссылки
- PureFTPd: http://www.pureftpd.org/
- FileZilla: http://filezilla-project.org/
- CentOS: http://www.centos.org/