K připojení k vpn používám openconnect
. Po zadání mého pověření dostanu toto:
POST https://domain.name/...
Got CONNECT response: HTTP/1.1 200 OK
CSTP connected. DPD 30, Keepalive 30
Connected tun0 as xxx.xxx.xxx.xxx, using SSL
Established DTLS connection
Spuštění ifconfig
ukazuje, že mám nové síťové rozhraní tun0
s určitou IP adresou.
Otázka: Jak mohu ssh
použít pouze síťové rozhraní tun0
, abych mohl přistupovat k počítačům v této soukromé síti?
pravit:
Moje konfigurace sítě (route -n
) se zdá být toto:
172.16.194.0 0.0.0.0 255.255.255.0 U 0 0 0 vmnet8
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
172.16.25.0 0.0.0.0 255.255.255.0 U 0 0 0 vmnet1
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0
0.0.0.0 192.168.0.1 0.0.0.0 UG 100 0 0 eth0
Není to ssh klient, který rozhoduje, přes které rozhraní TCP pakety by měly jít, je to jádro. Stručně řečeno, SSH požádá jádro, aby otevřelo připojení k určité IP adrese a jádro rozhodne, které Rozhraní se používá při prohlížení směrovacích tabulek.
(Následující předpokládá, že jste na GNU/Linuxu; obecný koncept je stejný pro všechny Unices, ale specifika příkazů, které se mají spustit, a způsob, jakým je výstup formátován, se mohou lišit.)
Směrovací tabulky jádra můžete zobrazit pomocí příkazů route -n a/nebo ip route show .
OpenConnect měl přidat řádek pro tun0
rozhraní; připojení k jakékoli adrese odpovídající dané lince budou směrovány přes toto rozhraní. Například spuštění route -n
na svém notebooku získám následující výstup:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.30.0.1 0.0.0.0 UG 0 0 0 eth0
10.30.0.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
To znamená, že připojení k hostitelům v síti 192.168.122.0/24 (tj. Adresy 192.168.122.0 až 192.168.122.255 podle notace CIDR ) bude směrováno přes rozhraní virbr0
; ty k 169.254.0.0/16 a 10.30.0.0/24 projdou eth0
, a cokoli jiného (řádek 0.0.0.0) bude směrováno přes eth0 k Hostitel brány 10.30.0.1.
Nevím, kdy byl představen, ale klient OpenSSH na RHEL7 má toto na své stránce:
-b bind_address
Use bind_address on the local machine as the source address of the connection. Only useful on systems with more than one address.
Ne tak dobré, jak si vybrat rozhraní, ale blízko.
Pokud používáte ke správě připojení k internetu Správce sítě (jako je výchozí správce v mnoha systémech), možná budete chtít nainstalovat openconnect
i network-manager-openconnect
.
Jakmile je plugin OpenConnect nainstalován pro Network Manager, otevřete Network Manager a klikněte na + ikona vlevo dole. Měli byste dostat rozbalovací seznam s možností [~ # ~] vpn [~ # ~] a poté možnost vybrat - OpenConnect Compatible VPN.
Pomocí rozhraní Network Manager k rozhraní s OpenConnect se vaše trasy automaticky objeví a pomohou vám připojit se k VPN. To je zvláště užitečné pro přístup k serverům přes VPN, například jak FireHost dělá věci.
Jen doplnění odpovědi. Můžeš použít -b
označte a definujte svou zdrojovou IP v době přístupu.
Formát + příklad
ssh -b interface-ip remote-ip
ssh -b 10.11.22.40 10.11.22.38