Я должен убедиться, что мой поток зашифрован. Я на машине с Windows, и я установил SFTP-сервер через Cygwin .. Я использую WinSCP в качестве клиента. И я разрабатываю еще один клиент на C #. Все работает правильно, но я не уверен, что шифрование включено.

В моем sshd_config у меня нет списка шифров, как сообщается здесь (в разделе « Ciphers).

В моем /etc/sshd_config меня есть это

#Ciphers and keying
#RekeyLimit default none

Просто это.. У меня нет никакого шифра ... Это первая причина, почему я думаю, что шифрование не включено.

Другая причина в том, что в клиенте, который я разрабатываю, я вижу свойство:

CurrentServerEncryption = NULL

Похоже, у меня нет никакого шифрования.

Может кто-нибудь сказать, пожалуйста, как отредактировать мой sshd_config чтобы включить шифры, или как я могу проверить, включены ли шифры?

1 ответ1

1
  • Блок в sshd_config , на который вы ссылаетесь, закомментирован (начальный #). Таким образом, применяются значения по умолчанию. Стандартное значение для Ciphers не включает none шифр, поэтому сервер не разрешает незашифрованные соединения. Обратите внимание, что стандартная сборка OpenSSH даже не позволяет включать шифрование none шифрования. Вам придется перекомпилировать OpenSSH.
    См. Как я могу отключить шифрование на openssh?

  • WinSCP также не позволяет none шифр.
    См. Https://winscp.net/rus/docs/ui_login_ssh.
    Так что, если вы можете подключиться к WinSCP, соединение зашифровано.

  • В журнале WinSCP вы можете увидеть согласованный шифр:

    . 2014-11-06 16:41:26.328 Initialised AES-256 SDCTR client->server encryption
    . 2014-11-06 16:41:26.328 Initialised HMAC-SHA-256 client->server MAC algorithm
    . 2014-11-06 16:41:26.328 Initialised AES-256 SDCTR server->client encryption
    . 2014-11-06 16:41:26.328 Initialised HMAC-SHA-256 server->client MAC algorithm
    
  • Что касается CurrentServerEncryption: я предполагаю, что вы ссылаетесь на SSH.NET Session.ConnectionInfo.CurrentServerEncryption , верно?
    Вы читаете значение ПОСЛЕ того, как вы подключились к серверу? Также обратите внимание, что даже если соединение не зашифровано, значение должно иметь значение "none" , а не NULL . Вероятно, NULL указывает, что шифр еще не был выбран (соединение не открыто).

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