3

Во-первых, я не уверен, что задам этот вопрос в StackOverflow, потому что он предназначен для программирования, поэтому я думаю, что SuperUser - более подходящее место.

Мой хостинг-провайдер сказал, что функция FTP не безопасна (не FTPS и не SFTP) для пакета хостинга, который я купил (я использую виртуальный хостинг).

(Я не очень верю в CS, потому что предыдущий ответ на мой предыдущий вопрос (о laravel в виртуальном хостинге) был получен неверно, она сказала, что это невозможно, но после просмотра некоторых видео я могу заставить его работать.)

Во-первых, я думаю, что это правильно, потому что URL для подключения к FTP выглядит примерно так: ftp://ftp.[mywebname].com

Но когда я попытался подключиться через FTP-клиент FileZilla, вывод из консоли

Status: Resolving address of ftp.xxxxxxx.com
Status: Connecting to xxx.xxx.xxx.xxx:21...
Status: Connection established, waiting for welcome message...
Status: Initializing TLS...
Status: Verifying certificate...
Status: TLS connection established.
Status: Connected
Status: Retrieving directory listing...
Status: Directory listing of "/" successful

А вот подробности сертификата (значок также говорит, что он зашифрован) Вот скриншот:

Скриншот

Кроме того, я попытался подключиться через FTP-клиент Cyberduck, он сказал, что соединение небезопасно и предлагает мне безопасный способ, даже сертификат, который он сказал «не доверяют». Эта опция также показывает, когда я впервые подключился через FileZilla.

2 ответа2

3

Рискну сказать, что сервер, с которым вы работаете, настроен так, как описано в этой статье в вики FileZilla.

https://wiki.filezilla-project.org/FTP_over_TLS

Это позволит FTP через tls, если пользователь выбирает на стороне клиента.

Вы пытались настроить ваш FTP-клиент, в вашем случае "Cyber Duck", для использования TLS? На этой вики-странице объясняется, как настроить несколько разных клиентов.

Кроме того, в интересах краткости, вы можете поискать поддержку вашего хостинга по: ftp over tls

2

... через FTP-клиент Cyberduck, он сказал, что соединение не является безопасным

Сервер (настоящее имя и сертификаты скрыты, но показано, что показывает, что произошло с настоящим сервером) использует самозаверяющий сертификат, который также не соответствует имени хоста:

$ openssl s_client -starttls ftp -connect ftp.example.com:21
...
Certificate chain
 0 s:/CN=server10.example.org/emailAddress=ssl@server10.example.org
   i:/CN=server10.example.org/emailAddress=ssl@server10.example.org

Этот тип сертификата может использоваться для защиты соединения, но только если клиент знает, какой сертификат ожидать другим способом, например, если поставщик лично сообщил клиенту отпечаток сертификата сервера, а затем клиент проверяет отпечаток пальца при подключении.

Во всех других случаях использование таких сертификатов небезопасно, поскольку любой может создать такой сертификат и провести атаку «человек посередине».

Status: Initializing TLS...
Status: Verifying certificate...
Status: TLS connection established

Похоже, что «Подтверждение сертификата ...» на самом деле не выполнено, или результат отклонен, или что вы доверяли этому сертификату раньше.

Кроме того, FTPS небезопасен, если только вы не навязываете использование FTPS. Если вы просто доверяете своему FTP-клиенту использовать шифрование (т. Е. TLS), когда оно доступно, и продолжать работу без шифрования в противном случае, все, что нужно сделать посреднику, - это отклонить команду AUTH TLS которая используется для создания туннеля TLS. Если вместо этого вы применяете FTPS и если вы проверяете сертификат, тогда FTPS можно использовать безопасным способом.

Для получения дополнительной информации я бы порекомендовал лучше спросить на security.stackexchange.com.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .