LINUX.ORG.RU
ФорумAdmin

ssh из wsl не подключается к виртуальной машине (а putty подключается)

 , ,


0

2

Установил FreeBSD на VirtualBox, пробросил порт с 22 на виртуалке на 2222 на хосте.
Подключаюсь через PuTTY - всё нормально.
Подключаюсь из WSL:

$ ssh -vvv 127.0.0.1:2222
OpenSSH_8.9p1 Ubuntu-3ubuntu0.6, OpenSSL 3.0.2 15 Mar 2022
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: include /etc/ssh/ssh_config.d/*.conf matched no files
debug1: /etc/ssh/ssh_config line 21: Applying options for *
debug2: resolve_addr: could not resolve name 127.0.0.1:2222 as address: Name or service not known
debug1: resolve_canonicalize: hostname 127.0.0.1:2222 is an unrecognised address
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts' -> '/home/feelus/.ssh/known_hosts'
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts2' -> '/home/feelus/.ssh/known_hosts2'
debug2: resolving "127.0.0.1:2222" port 22
debug3: resolve_host: lookup 127.0.0.1:2222:22
ssh: Could not resolve hostname 127.0.0.1:2222: Name or service not known

Что могло пойти не так?


$ ssh
usage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B bind_interface] [-b bind_address]
           [-c cipher_spec] [-D [bind_address:]port] [-E log_file]
           [-e escape_char] [-F configfile] [-I pkcs11] [-i identity_file]
           [-J destination] [-L address] [-l login_name] [-m mac_spec]
           [-O ctl_cmd] [-o option] [-P tag] [-p port] [-R address]
           [-S ctl_path] [-W host:port] [-w local_tun[:remote_tun]]
           destination [command [argument ...]]
       ssh [-Q query_option]

А именно [-p port]

Также я не знаю как в WSL, но 127.0.0.1 сильно врятли попадёт в желаемую виртуалку, наверное надо использовать внешний IP ПК.

Flotsky ★★
()
Ответ на: комментарий от kostik87

а вот и нет
пробую подключиться через netcat
из cygwin-а к wcl - всё работает
а из wsl к cygwin-у : nc: connect to localhost (127.0.0.1) port 3333 (tcp) failed: Connection refused
из cygwin-а к cygwin-у - работает

Иначе как бы я через браузер подключался к jupyter notebook-у, запущенному в wsl?

FeelUs
() автор топика
Последнее исправление: FeelUs (всего исправлений: 1)

man ssh А так, у вас в вопросе отчасти и содержится направление на ответ, третья строка снизу.

anc ★★★★★
()

ssh -vvv 127.0.0.1:2222

это не так

targitaj ★★★★★
()
Ответ на: комментарий от BOOBLIK

Почитав здесь получилось подключить netcat:
в cygwin-е nc -l 3333 в wsl: nc "$(hostname).local" 3333

Кроме того я научился в синтаксис ssh: ssh root@127.0.0.1 -p 2222
из cygwin-а к VirtualBox подключается
а из wsl:

$ ssh  "root@$(hostname).local" -p 2222 -vvv
OpenSSH_8.9p1 Ubuntu-3ubuntu0.6, OpenSSL 3.0.2 15 Mar 2022
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: include /etc/ssh/ssh_config.d/*.conf matched no files
debug1: /etc/ssh/ssh_config line 21: Applying options for *
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts' -> '/home/feelus/.ssh/known_hosts'
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts2' -> '/home/feelus/.ssh/known_hosts2'
debug2: resolving "home-pc.local" port 2222
debug3: resolve_host: lookup home-pc.local:2222
debug3: ssh_connect_direct: entering
debug1: Connecting to home-pc.local [172.29.128.1] port 2222.
debug3: set_sock_tos: set socket 3 IP_TOS 0x10
debug1: connect to address 172.29.128.1 port 2222: Connection timed out
debug1: Connecting to home-pc.local [172.19.192.1] port 2222.
debug3: set_sock_tos: set socket 3 IP_TOS 0x10

и на этом ждёт ответа и изредка пытается снова подключиться

из cygwin-а оно подключалось так:

...
debug3: ssh_connect_direct: entering
debug1: Connecting to 127.0.0.1 [127.0.0.1] port 2222.
debug3: set_sock_tos: set socket 4 IP_TOS 0x48
debug1: Connection established.
...
FeelUs
() автор топика
Ответ на: комментарий от firkax

ненене localhost в винде и в wsl разные и винда между ними какой-то супердинамический NAT делает

новые данные:
пробросил ещё один порт из VirtualBox и тестирую через netcat:
из винды в virtualbox - подключается
из wsl в винду - подключается (через "$(hostname).local", как писали на stackoverflow)
а из wsl в virtualbox - не подключается!

FeelUs
() автор топика
Ответ на: комментарий от no-dashi-v2
PS C:\Users\FeelUs> wsl -l -v
  NAME                   STATE           VERSION
* Ubuntu                 Stopped         2
  docker-desktop         Stopped         2
  docker-desktop-data    Stopped         2
FeelUs
() автор топика
Ответ на: комментарий от firkax

там NAT, 127.0.0.1 не шарит никто ни с кем
кидали выше ссылки, ты что читать не умеешь?
https://learn.microsoft.com/en-us/windows/wsl/networking
https://stackoverflow.com/questions/64763147/access-a-localhost-running-in-windows-from-inside-wsl-2

проблема в том, что
с одной виртуалки на хост связь есть
с хоста на другую виртуалку связь есть
а с одной виртуалки на другую виртуалку - связи нет

FeelUs
() автор топика
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.