Почему Curl в WSL2 (Fedora и обновленный Arch) возвращает сообщение «Ошибка приема: сброс соединения по одноранговому узLinux

Ответить
Anonymous
 Почему Curl в WSL2 (Fedora и обновленный Arch) возвращает сообщение «Ошибка приема: сброс соединения по одноранговому уз

Сообщение Anonymous »

Описание проблемы
Я пытаюсь установить Rust через Rustup в WSL2, но в некоторых
дистрибутивах любой запрос Curl к https://sh.rustup.rs завершается
ошибкой TLS.
Команда:

Код: Выделить всё

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
возвращает:

Код: Выделить всё

curl: (35) Recv failure: Connection reset by peer
Окружающая среда: [*]Тот же маршрутизатор и провайдер, меняется только дистрибутив Linux внутри WSL
.
[*]На другом ПК Fedora WSL2 с тем же образом работает без каких-либо
проблем
.


Поведение в Fedora WSL2 (проблемный ПК)

Код: Выделить всё

curl -4 -v https://sh.rustup.rs
вывод:

Код: Выделить всё

* Host sh.rustup.rs:443 was resolved.
* IPv6: (none)
* IPv4: 18.165.122.120, 18.165.122.110, 18.165.122.61, 18.165.122.35
*   Trying 18.165.122.120:443...
* ALPN: curl offers h2,http/1.1
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* Recv failure: Connection reset by peer
curl: (35) Recv failure: Connection reset by peer
IPv6 не настроен в WSL, поэтому curl -6 завершается с ошибкой

Код: Выделить всё

Network is unreachable
(то же самое для Fedora и Arch):

Код: Выделить всё

curl -6 -v https://sh.rustup.rs
...
Immediate connect fail ... Network is unreachable
Пытаемся ограничить версии TLS/HTTP:

Код: Выделить всё

curl -v --http1.1 --proto '=https' --tlsv1.2 https://sh.rustup.rs
по-прежнему отображается:

Код: Выделить всё

TLSv1.3 (OUT), TLS handshake
Recv failure: Connection reset by peer
Поведение в Arch WSL2 (та же проблема на ПК)
На чистом, только что установленном образе Arch выполните команду:

Код: Выделить всё

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
работает нормально --- скрипт установщика Rustup загружается нормально.
Однако после обновления Arch:

Код: Выделить всё

sudo pacman -Syu
те же команда возвращает:

Код: Выделить всё

curl: (35) Recv failure: Connection reset by peer
Итак:
  • Arch WSL2 до обновлений → работает\
  • Arch WSL2 после обновлений → тот же сбой, что и в Fedora\
  • IPv6 одинаково недоступен в обоих случаях (ожидается в WSL2)
Что я уже пробовал [*]Проверено, что хост-браузер Windows открывает https://sh.rustup.rs
нормально.
[*]Проверено, что чистый Arch WSL2 работает перед обновлениями.
[*]После обновлений Fedora и Arch ведут себя одинаково (подтверждение TLS
сброс).
[*]На другом ПК Fedora WSL2 работает без проблем.
[*]Проблема возникает только при:

Вопросы
  • Почему Fedora WSL2 и обновленный Arch WSL2 на этом конкретном компьютере
    завершаются с ошибкой Recv: сброс соединения по одноранговому узлу, в то время как чистый Arch
    работает, а другой компьютер работает нормально?
  • Может ли это быть вызвано обновлением Curl/OpenSSL и измененным TLS
    рукопожатием (TLS 1.3, криптополитиками и т. д.) при взаимодействии с сетью или конфигурацией безопасности этого
    компьютера?
  • Как можно устранить эту проблему и какова основная причина?


Подробнее здесь: https://stackoverflow.com/questions/798 ... connection
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»