Назад | Перейти на главную страницу

Только ftps с proftpd на debian

Есть ли способ заблокировать весь нормальный трафик ftp и разрешить только протокол sftp в sftp?

редактировать: извините мой плохой!

для безопасного ftp я должен использовать протокол ftpes ...

Вам не нужен proftpd для SFTP, вы можете сделать это изначально с помощью ssh.

Если по какой-то причине вы хотите использовать proftpd (т.е. вы хотите проще интегрироваться с несистемными учетными записями). Вам нужно запретить доступ к команде входа в систему для сервера, затем создать конкретный виртуальный хост с включенным механизмом sftp и разрешить команду входа в систему.

Для этого ваш файл proftpd.conf будет выглядеть примерно так.

  <Limit LOGIN>
    DenyAll
  </Limit>

  <VirtualHost 1.2.3.4>
    SFTPEngine on
    <Limit LOGIN>
      AllowAll
    </Limit>
    <all your other crap...>
  </VirtualHost>

Если вы хотите использовать FTPES с помощью proftpd, вам в основном нужно выполнить 4 шага.

1) Установите proftpd и openssl

apt-get install proftpd openssl

2) Создайте сертификат (при условии, что вы собираетесь самостоятельно подписать, убедитесь, что общее имя совпадает с именем DNS-сервера ftp, чтобы клиенты меньше жаловались)

mkdir /etc/proftpd/ssl
openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.cert.pem -keyout /etc/proftpd/ssl/proftpd.key.pem

3) Отредактируйте файл proftpd.conf, замените раздел модуля mod_tls в вашей конфигурации приведенным ниже текстом (обратите внимание на директиву TLSRequired on)

<IfModule mod_tls.c>
  TLSEngine                  on
  TLSLog                     /var/log/proftpd/tls.log
  TLSProtocol                SSLv23
  TLSOptions                 NoCertRequest
  TLSRSACertificateFile      /etc/proftpd/ssl/proftpd.cert.pem
  TLSRSACertificateKeyFile   /etc/proftpd/ssl/proftpd.key.pem
  TLSVerifyClient            off
  TLSRequired                on
</IfModule>

4) Перезапустите proftpd

/etc/init.d/proftpd restart

если вы хотите разрешить ftps только с помощью proftpd, TLSRобязательно это вариант, который вы ищете.

Что вы имеете в виду под sftp? SecureFTP (также известный как SSL ftp) или ftp через ssh (также известный как sftp)?

Для sftp - просто запустите sshd и вообще не используйте никаких ftp-демонов.