контекст
Я использую подсистему Windows для Linux (WSL) на 2 разных компьютерах, и я хочу ssh от одного к другому, и наоборот. Оба компьютера находятся в одной сети, поэтому они могут общаться напрямую через свой частный IP-адрес. Это все для того, чтобы использовать их позже в шаблоне «ведущий-ведомый» для задач с параллелизацией, поэтому я буду называть одного хозяина компьютера, а другого ведомого (хотя это пока не имеет значения). Я еще не установил соединение через ключи (ну, у меня есть, но я отступил и переустановил все с тех пор)
Проблема:
Я могу войти:
- от раба к хозяину
- от подчиненного к подчиненному (через локальный хост ssh или напрямую через ssh XXX.XXX.X.XXX)
- от мастера к мастеру (ssh localhost или IP)
Я не могу войти от хозяина к рабу. Я получаю следующую ошибку:
ssh: connect to host slave1 port 22: Resource temporarily unavailable
РЕДАКТИРОВАТЬ: попробовал с третьего компьютера. третий компьютер может войти в мастер и наоборот. Slave может войти в 3-й компьютер, но 3-й компьютер не может войти в Slave. Так что, похоже, проблема исходит от подчиненного компьютера, который не может "получить" SSH. (это хорошо, напомнив, что раб может ssh в себя без проблем).
Также я заметил кое-что, что может или не может играть роль: вывод ifconfig
в ведомом устройстве дает мне загадочный раздел eth1
, работающий и работающий, даже если к компьютеру не подключен кабель Ethernet. Это не происходит для других компьютеров. В любом случае подчиненный компьютер подключен к тому же Wi-Fi, что и другие, и именно с этим IP я собираюсь подключиться к нему по ssh.
Попытки решения:
Теперь я нашел много материала, посвященного проблеме ssh в WSL, но ни одно из исправлений не помогло мне. Вот (не исчерпывающий) список того, что я пытался безрезультатно, как советовали из разных источников:
- добавление правила к брандмауэру ведомого, чтобы разрешить порт 22
- отключение служб Windows SSH на ведомом устройстве, чтобы избежать конфликтов
- удаление / переустановка
openssh-client
/openssh-server
- оскорбляя всю семью моего компьютера
установка
PasswordAuthentication yes
в файле sshd_config, установкаUsePrivilegeSepration no
добавив эту странную строку в файл sshd_config:
Host *
ProxyCommand nc %h %p %r
- находя тяжелые оскорбления
Текущая ситуация
Я просто удалил и переустановил ssh-пакеты с обоих компьютеров без каких-либо настроек. ситуация все та же, что и описанная в проблеме: у подчиненного нет проблем с подключением к ведущему или самому себе, но мастер не может подключиться к подчиненному.
Как я мог это исправить?