Ich möchte SSH-Tunnel zwischen 2 Clients und 1 Server erstellen. Kann ich für beide die gleichen Portnummern verwenden, aber eine davon an 127.0.0.1:N und die andere an 127.0.0.2:N binden? Sind diese Ports gleich oder kann ich sie separat verwenden?
Ich möchte SSH-Tunnel zwischen 2 Clients und 1 Server erstellen. Kann ich für beide die gleichen Portnummern verwenden, aber eine davon an 127.0.0.1:N und die andere an 127.0.0.2:N binden? Sind diese Ports gleich oder kann ich sie separat verwenden?
Antworten:
Kann ich für beide die gleichen Portnummern verwenden, aber eine davon an 127.0.0.1:N und die andere an 127.0.0.2:N binden?
Ja, Sie können dieselbe Portnummer für zwei verschiedene 127.XXX-Adressen verwenden.
Sind diese Ports gleich oder kann ich sie separat verwenden?
Sie können sie separat verwenden.
Siehe Abbildung unten.
lab@ubu10:~$ nc -l 127.0.0.1 2000 &
[1] 1035
lab@ubu10:~$ nc -l 127.0.0.2 2000 &
[2] 1036
lab@ubu10:~$ netstat -l -n
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.2:2000 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:2000 0.0.0.0:* LISTEN
In Ihrer Frage ist nicht klar, ob Sie zwischen beiden Clients über den Server oder von jedem Client zum Server tunneln .
In beiden Fällen können Sie auf der Clientseite lokal an dieselbe IP / denselben Port auf beiden Seiten binden, z.
ssh -f client@server.com -L 2000:server.com:22 -N
Dadurch wird 127.0.0.1:2000
auf jedem Client der Tunnel zugeordnet, der auf dem Server endet.
Auf der Serverseite sehen Sie einfach die öffentliche IP-Adresse jedes Clients, an den (möglicherweise) eindeutige Quell-IPs an eindeutige Quell-Ports gebunden sind.
Wenn Sie an Port + IP binden, können Sie diese separat verwenden.