Поднятие FTP сервера на proftpd
Добавлено: 16 июл 2018, 19:42
				
				Источники:
https://andreyex.ru/centos-7/nastrojka- ... s-ssl-tls/
ProFTPD. Докачка. Закачать большой файл на FTP при обрывах связи
При попытке закачать большой файл на FTP возникла проблема — обрывы связи у провайдера, после каждого такого обрыва файл начинал закачиваться на FTP-сервер заново. Было найдено следующее решение:
Хочется отметить, что этот способ подходит не только при обрывах связи, так же вы можете вручную оборвать загрузку и докачать файл позже.
Нам необходимо указать нашему FTP-серверу чтобы он давал возможность клиентам докачки файлов, с помощью директивы AllowStoreRestart.
Способ подходит только для FTP сервера ProFTPD
Открываем конфигурационный файл proftpd.conf, и добавляем следующую строчку
AllowStoreRestart on
Место добавления большой роли не играет, я вставил ее после директивы DefaultRoot.
Сохраняем proftpd.conf, перезапускаем ftp-сервер, и проверяем:
Запукаем аплоад файла на ftp-сервер, затем отменяем или создаем искусственно обрыв связи, после чего запускаем закачку файла снова. У меня в WinSCP (ftp-клиент) было предложена много вариантов замены файла среди которого был пункт «Resume», выбрав который файл начал благополучно докачиваться с места обрыва.
Настройка ProFTP с SSL/TLS
Настройка ProFTP с SSL/TLSProFTP широко используется в качестве FTP-сервера среди серверов Linux. ProFTP используется несколькими панелями управления, таких как Cpanel, Plesk. На этом уроке мы покажем вам, как настроить ProFTP с SSL/TLS и другие аспекты безопасности.
Мой тестовый сервер
Server: CentOS 7
ProFTP: 1.3.5
Шаг 1: Установка дополнительного хранилища
Базовое хранилище CentOS не содержит ProFTP. Включить хранилище Epel для загрузки и установки ProFTP.
# yum install epel-release
# yum install proftpd
Шаг 2: Подготовка сертификата
Пакет ProFTPD не создает дополнительного каталога конфигурации ProFTPD
# mkdir /etc/proftpd.d/
Генерация ключей и сертификата, который будет использоваться для SFTP или FTP через SSL/TLS соединение
# openssl req -new -x509 -days 3650 -nodes -out /etc/proftpd.d/proftpd.cert.pem -keyout /etc/proftpd.d/proftpd.key.pem
Шаг 3: Подготовка конфигурации
Добавьте следующую конфигурацию в файл /etc/proftpd.conf
Шаг 4: Создание пользователя, без оболочки
Всегда рекомендуется использовать пользователя не оболочки для аунтификации FTP
# useradd --shell /bin/false testnoshell
# passwd testnoshell
Шаг 5: Доступ к FTP
Теперь попытайтесь получить доступ к FTP с созданным пользователем
Примечание: Если ваш сервер находится под NAT, добавьте следующие строки в файл /etc/proftpd.conf
И откройте диапазон портов 49152-65534 для брандмауэра/маршрутизатора.
Ну, вот и все.
			https://andreyex.ru/centos-7/nastrojka- ... s-ssl-tls/
ProFTPD. Докачка. Закачать большой файл на FTP при обрывах связи
При попытке закачать большой файл на FTP возникла проблема — обрывы связи у провайдера, после каждого такого обрыва файл начинал закачиваться на FTP-сервер заново. Было найдено следующее решение:
Хочется отметить, что этот способ подходит не только при обрывах связи, так же вы можете вручную оборвать загрузку и докачать файл позже.
Нам необходимо указать нашему FTP-серверу чтобы он давал возможность клиентам докачки файлов, с помощью директивы AllowStoreRestart.
Способ подходит только для FTP сервера ProFTPD
Открываем конфигурационный файл proftpd.conf, и добавляем следующую строчку
AllowStoreRestart on
Место добавления большой роли не играет, я вставил ее после директивы DefaultRoot.
Сохраняем proftpd.conf, перезапускаем ftp-сервер, и проверяем:
Запукаем аплоад файла на ftp-сервер, затем отменяем или создаем искусственно обрыв связи, после чего запускаем закачку файла снова. У меня в WinSCP (ftp-клиент) было предложена много вариантов замены файла среди которого был пункт «Resume», выбрав который файл начал благополучно докачиваться с места обрыва.
Настройка ProFTP с SSL/TLS
Настройка ProFTP с SSL/TLSProFTP широко используется в качестве FTP-сервера среди серверов Linux. ProFTP используется несколькими панелями управления, таких как Cpanel, Plesk. На этом уроке мы покажем вам, как настроить ProFTP с SSL/TLS и другие аспекты безопасности.
Мой тестовый сервер
Server: CentOS 7
ProFTP: 1.3.5
Шаг 1: Установка дополнительного хранилища
Базовое хранилище CentOS не содержит ProFTP. Включить хранилище Epel для загрузки и установки ProFTP.
# yum install epel-release
# yum install proftpd
Шаг 2: Подготовка сертификата
Пакет ProFTPD не создает дополнительного каталога конфигурации ProFTPD
# mkdir /etc/proftpd.d/
Генерация ключей и сертификата, который будет использоваться для SFTP или FTP через SSL/TLS соединение
# openssl req -new -x509 -days 3650 -nodes -out /etc/proftpd.d/proftpd.cert.pem -keyout /etc/proftpd.d/proftpd.key.pem
Код: Выделить всё
 Generating a 2048 bit RSA private key
 ......+++
 .........................+++
 writing new private key to '/etc/proftpd.d/proftpd.key.pem'
 -----
 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) [XX]:IN
 State or Province Name (full name) []:WB
 Locality Name (eg, city) [Default City]:Kolkata
 Organization Name (eg, company) [Default Company Ltd]:Omegalab
 Organizational Unit Name (eg, section) []:IT
 Common Name (eg, your name or your server's hostname) []:pydl.andreyex.com
 Email Address []:xyz@andreyex.com
 Добавьте следующую конфигурацию в файл /etc/proftpd.conf
Код: Выделить всё
 ServerName "ProFTP"
 ServerType standalone
 DefaultServer on
 <Global>
 DefaultRoot ~
 AllowOverwrite on
  <IfModule mod_tls.c>
    TLSEngine on
    TLSRequired off
    TLSLog /var/log/plesk/ftp_tls.log
    TLSRSACertificateFile /etc/proftpd.d/proftpd.cert.pem
    TLSRSACertificateKeyFile /etc/proftpd.d/proftpd.key.pem
    TLSVerifyClient off
    TLSRenegotiate none
    TLSOptions NoSessionReuseRequired
  </IfModule>
 </Global>
 DefaultTransferMode binary
 UseFtpUsers on
 TimesGMT off
 SetEnv TZ :/etc/localtime
 Port 21
 Umask 022
 MaxInstances 30
 ScoreboardFile /var/run/proftpd.scoreboard
 TransferLog /var/log/proftpd/xferlog
 AuthPAM on
 AuthPAMConfig proftpd
 IdentLookups off
 UseReverseDNS off
 AuthGroupFile /etc/group
 RequireValidShell off
 Include /etc/proftpd.d/*.conf
Всегда рекомендуется использовать пользователя не оболочки для аунтификации FTP
# useradd --shell /bin/false testnoshell
# passwd testnoshell
Шаг 5: Доступ к FTP
Теперь попытайтесь получить доступ к FTP с созданным пользователем
Примечание: Если ваш сервер находится под NAT, добавьте следующие строки в файл /etc/proftpd.conf
Код: Выделить всё
PassivePorts 49152 65534Ну, вот и все.