Установка сервера · 6 min read · Dec 23, 2025
Как установить ProFTPD с TLS на Ubuntu 18.04 LTS

ProFTPD — это бесплатный, с открытым исходным кодом и самый популярный FTP-сервер для операционных систем, подобных Unix. ProFTPD позволяет создать FTP-соединение между вашим локальным компьютером и удаленным сервером. Это универсальный FTP-сервер, который поддерживает TLS (SSL) для безопасных соединений.
Особенности
- Поддерживает IPv4 и IPv6.
- Поддерживает .ftpaccess для защиты по директориям.
- Позволяет настраивать несколько виртуальных FTP-серверов и анонимные FTP-сервисы.
- Обеспечивает поддержку теневых паролей, utmp/wtmp, шифрования SSL/TLS и RADIUS.
- Может работать как отдельный сервер или из inetd/xinetd.
В этом руководстве мы научимся устанавливать ProFTPD и защищать его с помощью TLS на сервере Ubuntu 18.04.
Требования
- Сервер с установленной Ubuntu 18.04.
- Статический IP-адрес 192.168.0.101 настроен на сервере.
- Пароль root настроен на вашем сервере.
Начало работы
Перед началом вам нужно обновить вашу систему до последней версии. Вы можете сделать это, выполнив следующую команду:
apt-get update -y
apt-get upgrade -yПосле обновления сервера перезагрузите его, чтобы применить изменения.
Установка ProFTPD
По умолчанию ProFTPD доступен в стандартном репозитории Ubuntu 18.04. Вы можете установить его, просто выполнив следующую команду:
apt-get install proftpd -yПосле установки ProFTPD запустите службу ProFTPD и включите ее автозагрузку при старте с помощью следующей команды:
systemctl start proftpd
systemctl enable proftpdВы можете проверить статус службы ProFTPD с помощью следующей команды:
systemctl status proftpdВы должны увидеть следующий вывод:
? proftpd.service - LSB: Starts ProFTPD daemon
Loaded: loaded (/etc/init.d/proftpd; generated)
Active: active (running) since Sat 2019-05-25 09:18:19 UTC; 31s ago
Docs: man:systemd-sysv-generator(8)
Tasks: 1 (limit: 1114)
CGroup: /system.slice/proftpd.service
??1927 proftpd: (accepting connections)
May 25 09:18:19 ubuntu1804 systemd[1]: Starting LSB: Starts ProFTPD daemon...
May 25 09:18:19 ubuntu1804 proftpd[1906]: * Starting ftp server proftpd
May 25 09:18:19 ubuntu1804 proftpd[1906]: ...done.
May 25 09:18:19 ubuntu1804 systemd[1]: Started LSB: Starts ProFTPD daemon.
Файлы конфигурации ProFTPD по умолчанию находятся в /etc/proftpd/proftpd.conf. Вы можете просмотреть их с помощью следующей команды:
cat /etc/proftpd/proftpd.confВы должны увидеть следующий вывод:
#
# /etc/proftpd/proftpd.conf -- Это базовый файл конфигурации ProFTPD.
# Чтобы действительно применить изменения, перезагрузите proftpd после модификаций, если
# он работает в режиме демона. Это не требуется в режиме inetd/xinetd.
#
# Включает DSO модули
Include /etc/proftpd/modules.conf
# Отключите, чтобы отключить поддержку IPv6, что раздражает на коробках только с IPv4.
UseIPv6 on
# Если включено, вы можете столкнуться с более длительной задержкой соединения в многих случаях.
IdentLookups off
ServerName "Debian"
# Установите на inetd только если вы хотите запустить proftpd через inetd/xinetd.
# Читайте README.Debian для получения дополнительной информации о правильной конфигурации.
ServerType standalone
DeferWelcome off
MultilineRFC2228 on
DefaultServer on
ShowSymlinks on
TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200
DisplayLogin welcome.msg
DisplayChdir .message true
ListOptions "-l"
DenyFilter \*.*/
# Используйте это, чтобы заключить всех пользователей в их домашних директориях
# DefaultRoot ~
# Порт 21 — стандартный FTP порт.
Port 21
MaxInstances 30
# Установите пользователя и группу, от имени которых сервер обычно работает.
User proftpd
Group nogroup
# Umask 022 — это хороший стандартный umask, чтобы предотвратить запись новых файлов и директорий
# (второй параметр) для группы и всех пользователей.
Umask 022 022
# Обычно мы хотим, чтобы файлы можно было перезаписывать.
AllowOverwrite on
TransferLog /var/log/proftpd/xferlog
SystemLog /var/log/proftpd/proftpd.log
Вы можете изменить вышеуказанные настройки в соответствии с вашими требованиями, как показано ниже:
- ServerName: Вы можете изменить его на ваше имя сервера по умолчанию.
- UseIPV6: Вы можете отключить его, изменив на off.
- DefaultRoot: Вы можете раскомментировать эту строку, чтобы ограничить пользователей их домашними папками.
- Port: Вы можете определить свой собственный порт, изменив его.
- SystemLog: Местоположение файла журнала по умолчанию. Вы можете изменить его в соответствии с вашими требованиями.
После того как вы это сделали, вы можете перейти к следующему шагу.
Защита ProFTPD с помощью TLS
ProFTPD теперь установлен. Теперь вам нужно настроить ProFTPD с TLS для безопасных FTP-соединений.
Перед началом вам нужно установить OpenSSL на ваш сервер. Вы можете установить его, просто выполнив следующую команду:
apt-get install openssl -yПосле завершения установки сгенерируйте SSL-сертификаты для ProFTPd с помощью следующей команды:
openssl req -x509 -newkey rsa:1024 -keyout /etc/ssl/private/proftpd.key -out /etc/ssl/certs/proftpd.crt -nodes -days 365Ответьте на все вопросы, как показано ниже:
Generating a 1024 bit RSA private key
.++++++
.......................++++++
writing new private key to '/etc/ssl/private/proftpd.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:IN
State or Province Name (full name) [Some-State]:GUJ
Locality Name (eg, city) []:Junagadh
Organization Name (eg, company) [Internet Widgits Pty Ltd]:IT
Organizational Unit Name (eg, section) []:IT
Common Name (e.g. server FQDN or YOUR name) []:HITESH
Email Address []:[email protected]Вышеуказанная команда создаст два файла /etc/ssl/private/proftpd.key и /etc/ssl/certs/proftpd.crt.
Далее предоставьте правильные разрешения для созданных файлов с помощью следующей команды:
chmod 600 /etc/ssl/private/proftpd.key
chmod 600 /etc/ssl/certs/proftpd.crtПосле того как вы это сделали, вы можете перейти к следующему шагу.
Настройка ProFTPD для использования SSL
Далее вам нужно настроить ProFTPD для использования SSL-сертификатов. Вы можете сделать это, отредактировав файл /etc/proftpd/proftpd.conf:
nano /etc/proftpd/proftpd.confРаспакуйте следующую строку:
Include /etc/proftpd/tls.confСохраните и закройте файл, когда закончите. Затем откройте файл /etc/proftpd/tls.conf:
nano /etc/proftpd/tls.confИзмените следующие строки:
TLSRSACertificateFile /etc/ssl/certs/proftpd.crt
TLSRSACertificateKeyFile /etc/ssl/private/proftpd.key
TLSEngine on
TLSLog /var/log/proftpd/tls.log
TLSProtocol SSLv23
TLSRequired on
TLSOptions NoCertRequest EnableDiags NoSessionReuseRequired
TLSVerifyClient offСохраните и закройте файл, когда закончите. Затем перезапустите службу ProFTPD с помощью следующей команды:
systemctl restart proftpdПосле того как вы это сделали, вы можете перейти к следующему шагу.
Создание пользователя для ProFTPD
Далее вам нужно создать пользователя ProFTPD для доступа к серверу. Вы можете сделать это с помощью следующей команды:
adduser ftp1Ответьте на все вопросы, как показано ниже:
Adding user `ftp1' ...
Adding new group `ftp1' (1006) ...
Adding new user `ftp1' (1002) with group `ftp1' ...
Creating home directory `/home/ftp1' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for ftp1
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] YПосле того как вы это сделали, вы можете перейти к следующему шагу.
Доступ к серверу ProFTPD с помощью FileZilla
ProFTPD теперь установлен и настроен, пришло время получить доступ к ProFTPD через FileZilla с клиентской системы.
Сначала вам нужно установить FileZilla на вашей клиентской системе. Вы можете установить его, просто выполнив следующую команду:
apt-get install filezilla -yПосле завершения установки вы можете открыть FileZilla из Unity dash, как показано ниже:

Теперь нажмите на Менеджер сайтов на левой боковой панели и создайте новый сайт. Вы должны увидеть следующую страницу:

Теперь введите IP-адрес вашего FTP-сервера, выберите протокол, выберите шифрование, выберите тип входа, введите имя пользователя и пароль. Затем нажмите кнопку Подключиться. Вы должны увидеть следующую страницу:

Теперь примите сертификат, отметьте “Всегда доверять сертификату в будущих сессиях” и нажмите кнопку ОК. После успешного входа вы должны увидеть следующую страницу:

Теперь вы можете безопасно передавать файлы через SSL/TLS.
Поздравляем! вы успешно установили и настроили сервер ProFTPD и защитили его с помощью шифрования SSL/TLS. Теперь вы можете легко передавать файлы с вашего локального компьютера на FTP-сервер с безопасным шифрованием. Не стесняйтесь задавать мне вопросы, если у вас есть какие-либо.
Get new posts in your inbox
No spam. Unsubscribe anytime.