Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

[gelöst] SSH-Tunnel - Andere IP's im entfernten Netz erreic

Alles rund um das Internet, Internet-Anwendungen (E-Mail, Surfen, Cloud usw.) und das Einrichten von Netzwerken einschl. VPN unter Linux

Moderator: Moderatoren

Antworten
schnurzelat
Member
Member
Beiträge: 169
Registriert: 30. Jun 2008, 20:17

[gelöst] SSH-Tunnel - Andere IP's im entfernten Netz erreic

Beitrag von schnurzelat »

Hallo,

ich habe einen SSH Verbindung von einem Windows Rechner (KiTTY) zu einem Linux Rechner (über eine Fritzbox). Nun möchte ich durch diesen Tunnel einen anderen Windows PC im entfernten Netzwerk per RDP erreichen.

openssh-server IP 192.168.10.5 im entfernten lokalen Netz, Windows PC 192.168.10.20 Port 3389

Geht das? Und wenn ja, wie? Alternative Programme sind nicht möglich, z. B. openvpn etc.

Gruß schnurzelat
Zuletzt geändert von schnurzelat am 6. Mär 2013, 14:45, insgesamt 1-mal geändert.
Derzeitiger Server: OpenSuse Leap 15.1 auf einem Dell T20 mit einem Xeon E3-1225 v3 und 16 GB RAM
Wichtige Anwendungen: Apache2, MySQL, Samba, Squid, SquidGuard, x11vnc
Benutzeravatar
orcape
Member
Member
Beiträge: 182
Registriert: 26. Okt 2007, 16:31
Wohnort: 12°10'08,01"E / 50°36'28,15"N
Kontaktdaten:

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von orcape »

Hi schnurzelat,
warum soll das nicht gehen. Ich denke mal einen ssh-Server auf dem Windows-PC laufen lassen,
müsste das Problem lösen.
Würde ich aus Sicherheitstechnischer Sicht, ohne einen VPN-Tunnel trotzdem nicht tun.
Gruß orcape
Benutzeravatar
framp
Moderator
Moderator
Beiträge: 4316
Registriert: 6. Jun 2004, 20:57
Wohnort: bei Stuttgart
Kontaktdaten:

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von framp »

Kannst Du die Topologie und die Richtung des Verbindungsaufbaues mal pseudomalen? Mir ist nicht klar wer wo mit wem will :???:
spoensche
Moderator
Moderator
Beiträge: 7534
Registriert: 30. Okt 2004, 23:53
Wohnort: Siegen

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von spoensche »

orcape hat geschrieben:Hi schnurzelat,
warum soll das nicht gehen. Ich denke mal einen ssh-Server auf dem Windows-PC laufen lassen,
müsste das Problem lösen.

Würde ich aus Sicherheitstechnischer Sicht, ohne einen VPN-Tunnel trotzdem nicht tun.
Gruß orcape
Ein SSH-Tunnel ist ein verschlüsselter Tunnel und wird ab und an mal als VPN verwendet. Ein VPN ist allerdings schon zu bevorzugen.

@schnurzelat:
Du kannst mit:

Code: Alles auswählen

ssh -f -L 1234:localhost:6667 dein.linuxrechner.org
einen SSH Tunnel aufbauen. Die RDP Verbindung musst du dann durch den Tunnel leiten.

Das ändert allerdings nichts an der Tatsache, das RDP alles andere als sicher ist und du dir bei aktiviertem RDP ein ordentliches anf#lliges Loch schaffst.
schnurzelat
Member
Member
Beiträge: 169
Registriert: 30. Jun 2008, 20:17

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von schnurzelat »

Bild
http://imageshack.us/photo/my-images/80 ... ge01k.png/

Danke für die Antworten!

Also ich möchte von dem Windows 7 Rechner mit PuTTY über den Linux Server (.5) zum Windows 7 RDP (.30). Dazu muss ich irgendwie den Linux Server (.5) dazu bekommen einen lokalen Port (z. B. 54321 auf die andere IP (.30) und den Port (3389) zu mappen.

Kann das gehen? Falls ja, wie?

Gruß schnurzelat
Derzeitiger Server: OpenSuse Leap 15.1 auf einem Dell T20 mit einem Xeon E3-1225 v3 und 16 GB RAM
Wichtige Anwendungen: Apache2, MySQL, Samba, Squid, SquidGuard, x11vnc
spoensche
Moderator
Moderator
Beiträge: 7534
Registriert: 30. Okt 2004, 23:53
Wohnort: Siegen

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von spoensche »

Der Linux Rechner fungiert in diesem Fall dann als Router. Du müsstest also den Verkehr aus dem SSH- Tunnel Forwarden. Du könntest es dir allerdings auch einfacher machen, wenn du auf deiner Fritzbox ein VPN einrichtest, dich mit dem Windings per VPN mit der Fritzbox verbindest und die RDP Verbindung über das VPN laufen lässt.
Benutzeravatar
framp
Moderator
Moderator
Beiträge: 4316
Registriert: 6. Jun 2004, 20:57
Wohnort: bei Stuttgart
Kontaktdaten:

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von framp »

spoensche kann ich nur voll und ganz zustimmen. Falls Du es doch per putty und ssh machen willst: hier hatte ich das mal für einen Proxy Server beschrieben für jemanden, der aus China den grossen Firewall umgehen musste um News in Deutschland lesen zu koennen (Selbst Stern & Spiegel war von dort nicht erreichbar). Allerdings wird da auf den local Port des ssh Tunnelendes umgeleitet, da auf dem auch der Proxy lief. Da musst Du nur die remote RDP IP und Port angeben und fertig ;-)

Just in case: Wenn Das Ziel nicht Dein Homebereich ist sondern der Deines Broetchengebers rate ich Dir dringend die Finger von dem Tunnel zu lassen denn Du hebelst damit seine NetzwerkSicherheit aus und spielst mit Deinem Job ;)
schnurzelat
Member
Member
Beiträge: 169
Registriert: 30. Jun 2008, 20:17

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von schnurzelat »

Danke für die Antworten.

@framp

Das funktioniert bereits. Auf dem .5 läuft ein squid mit squidguard.

@spoensche

VPN geht nicht weil nur PuTTY (auf Port 443) zur Verfügung steht.

Wie kann ich das forwarding am Linux Rechner konfigurieren? Also ich mache ganz normal einen Tunnel z. B. 54321. Wie sage ich dem Linux Rechner nun, dass er seinen Port 54321 auf 192.168.178.30:3389 forwarded?

Danke und Gruß schnurzelat
Derzeitiger Server: OpenSuse Leap 15.1 auf einem Dell T20 mit einem Xeon E3-1225 v3 und 16 GB RAM
Wichtige Anwendungen: Apache2, MySQL, Samba, Squid, SquidGuard, x11vnc
spoensche
Moderator
Moderator
Beiträge: 7534
Registriert: 30. Okt 2004, 23:53
Wohnort: Siegen

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von spoensche »

schnurzelat hat geschrieben:
@spoensche

VPN geht nicht weil nur PuTTY (auf Port 443) zur Verfügung steht.
Geht nicht gibts nicht. SSH über den Standard Port von HTTPS laufen lassen, warum???? OpenVPN kann man auch nach installieren.

Du machst es dir so nur unnötig viel zu kompliziert.
schnurzelat hat geschrieben: Wie kann ich das forwarding am Linux Rechner konfigurieren? Also ich mache ganz normal einen Tunnel z. B. 54321. Wie sage ich dem Linux Rechner nun, dass er seinen Port 54321 auf 192.168.178.30:3389 forwarded?
In dem du deinem Linux sagst es soll als Router arbeiten.

Code: Alles auswählen

echo 1 > /proc/sys/net/ip_forward
. Dann erstellst du noch ein paar IP-Tables Regeln, die das Forwarding und den restl. Verkehr reglementieren.
schnurzelat
Member
Member
Beiträge: 169
Registriert: 30. Jun 2008, 20:17

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von schnurzelat »

Ich habe folgendes gemacht:

/etc/sysconfig/SuSEfirewall2

Code: Alles auswählen

FW_MASQUERADE="yes"
FW_ROUTE="yes"
FW_FORWARD_MASQ="127.0.0.1/32,192.168.178.30,tcp,54321,3389"
zeigt keine Wirkung.

Wenn ich 'yast firewall' starte, ist 'masquerading' ausgegraut.

Habe ich was vergessen zu aktivieren?

Gruß schnurzelat
Derzeitiger Server: OpenSuse Leap 15.1 auf einem Dell T20 mit einem Xeon E3-1225 v3 und 16 GB RAM
Wichtige Anwendungen: Apache2, MySQL, Samba, Squid, SquidGuard, x11vnc
spoensche
Moderator
Moderator
Beiträge: 7534
Registriert: 30. Okt 2004, 23:53
Wohnort: Siegen

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von spoensche »

Was willst du Masquerading? Dein Linux Rechner ist kein NAT- Router. Poste mal die Ausgabe von

Code: Alles auswählen

grep -v ^#" /etc/sysconfig/firewall
schnurzelat
Member
Member
Beiträge: 169
Registriert: 30. Jun 2008, 20:17

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von schnurzelat »

grep -v "^#" /etc/sysconfig/SuSEfirewall2

Code: Alles auswählen

FW_DEV_EXT="eth0"
FW_DEV_INT=""
FW_DEV_DMZ=""
FW_ROUTE="yes"
FW_MASQUERADE="yes"
FW_MASQ_DEV=""
FW_MASQ_NETS=""
FW_NOMASQ_NETS=""
FW_PROTECT_FROM_INT="no"
FW_SERVICES_EXT_TCP="10025 137 3389 3390 3391 445 54321 5900 8001 8080 8200 8765"
FW_SERVICES_EXT_UDP="137 1900"
FW_SERVICES_EXT_IP=""
FW_SERVICES_EXT_RPC=""
FW_CONFIGURATIONS_EXT="apache2 sshd vsftpd"
FW_SERVICES_DMZ_TCP=""
FW_SERVICES_DMZ_UDP=""
FW_SERVICES_DMZ_IP=""
FW_SERVICES_DMZ_RPC=""
FW_CONFIGURATIONS_DMZ="sshd"
FW_SERVICES_INT_TCP=""
FW_SERVICES_INT_UDP=""
FW_SERVICES_INT_IP=""
FW_SERVICES_INT_RPC=""
FW_CONFIGURATIONS_INT="sshd"
FW_SERVICES_DROP_EXT=""
FW_SERVICES_DROP_DMZ=""
FW_SERVICES_DROP_INT=""
FW_SERVICES_REJECT_EXT=""
FW_SERVICES_REJECT_DMZ=""
FW_SERVICES_REJECT_INT=""
FW_SERVICES_ACCEPT_EXT=""
FW_SERVICES_ACCEPT_DMZ=""
FW_SERVICES_ACCEPT_INT=""
FW_SERVICES_ACCEPT_RELATED_EXT=""
FW_SERVICES_ACCEPT_RELATED_DMZ=""
FW_SERVICES_ACCEPT_RELATED_INT=""
FW_TRUSTED_NETS=""
FW_FORWARD=""
FW_FORWARD_REJECT=""
FW_FORWARD_DROP=""
FW_FORWARD_MASQ="127.0.0.1/32,192.168.178.40,tcp,54321,3389"
FW_REDIRECT=""
FW_LOG_DROP_CRIT="yes"
FW_LOG_DROP_ALL="no"
FW_LOG_ACCEPT_CRIT="no"
FW_LOG_ACCEPT_ALL="no"
FW_LOG_LIMIT=""
FW_LOG=""
FW_KERNEL_SECURITY=""
FW_STOP_KEEP_ROUTING_STATE=""
FW_ALLOW_PING_FW=""
FW_ALLOW_PING_DMZ=""
FW_ALLOW_PING_EXT=""
FW_ALLOW_FW_SOURCEQUENCH=""
FW_ALLOW_FW_BROADCAST_EXT="no"
FW_ALLOW_FW_BROADCAST_INT="no"
FW_ALLOW_FW_BROADCAST_DMZ="no"
FW_IGNORE_FW_BROADCAST_EXT="yes"
FW_IGNORE_FW_BROADCAST_INT="no"
FW_IGNORE_FW_BROADCAST_DMZ="no"
FW_ALLOW_CLASS_ROUTING=""
FW_CUSTOMRULES=""
FW_REJECT=""
FW_REJECT_INT=""
FW_HTB_TUNE_DEV=""
FW_IPv6=""
FW_IPv6_REJECT_OUTGOING=""
FW_IPSEC_TRUST="no"
FW_ZONES=""
FW_ZONE_DEFAULT=''
FW_USE_IPTABLES_BATCH=""
FW_LOAD_MODULES="nf_conntrack_netbios_ns"
FW_FORWARD_ALWAYS_INOUT_DEV=""
FW_FORWARD_ALLOW_BRIDGING=""
FW_WRITE_STATUS=""
FW_RUNTIME_OVERRIDE=""
FW_LO_NOTRACK=""
FW_BOOT_FULL_INIT=""
Derzeitiger Server: OpenSuse Leap 15.1 auf einem Dell T20 mit einem Xeon E3-1225 v3 und 16 GB RAM
Wichtige Anwendungen: Apache2, MySQL, Samba, Squid, SquidGuard, x11vnc
spoensche
Moderator
Moderator
Beiträge: 7534
Registriert: 30. Okt 2004, 23:53
Wohnort: Siegen

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von spoensche »

Warum hast du Port 5900 (VNC) und andere Ports offen, wenn auf der Linux Büchse nur ein Webserver (Port 80 o. 8080), SSH (Port 22) läuft?
Du weisst das high Ports i.d.R von Ungeziefer jeglicher Art verwendet werden?

Am einfachsten wäre es, wenn du dir eine eigene IP-Tables Regel für RDP schreibst und per FW_CUSTOMRULES lädts.
Benutzeravatar
framp
Moderator
Moderator
Beiträge: 4316
Registriert: 6. Jun 2004, 20:57
Wohnort: bei Stuttgart
Kontaktdaten:

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von framp »

Mir ist nicht klar warum Du Port 3389 freigeben willst. Du benutzt doch ssh (Port 22) zum tunneln. Dann musst Du also nur Port 22 freigeben.

Folgende Tipps von mir:

1)

Code: Alles auswählen

FW_LOG_DROP_ALL="no"
Setze das mal auf true. Dann siehst Du im Log wenn eine FW Rule einen Request abweist. Das hilft beim Fehlersuchen. ABER nicht vergessen wieder auszuschalten wenn Du drch bist.
2) Nur die Ports aufmachen die Du brauchst (Also Port 22)
3) Mit nmap und/oder shieldsup von aussen testen welche Ports offen sind.
4) Erst einmal ssh Zugriff zum Fliegen bringen - also einfaches Login per ssh (Basis fuer den Tunnel). Danach das Konfigurieren des Tunnels fuer 3389 angehen. Dann hast Du aber nix mehr mit der FW zu tun.
schnurzelat
Member
Member
Beiträge: 169
Registriert: 30. Jun 2008, 20:17

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von schnurzelat »

@all

Der Server (.5) steht hinter einer Firewall (siehe Bild oben). Aus dem Internet ist nur der Port 443 erreichbar, sonst nichts. ssh, squid, apache, vnc etc. funktionieren bereits durch den ssh-tunnel.

Ich möchte aber zusätzlich ein forwarding einrichten. Anfragen an den Server (Port 54321) sollen im LAN (wo auch der Server steht) auf einen anderen Rechner (.40, Port 3389) ge-forwarded werden.

Der Eintrag in der Firewall funktioniert nicht.

Code: Alles auswählen

FW_MASQUERADE="yes"
FW_ROUTE="yes"
FW_FORWARD_MASQ="127.0.0.1/32,192.168.178.40,tcp,54321,3389"
Die Eingabe von iptables Befehlen auch nicht.

Code: Alles auswählen

iptables -t nat -A PREROUTING --dst 127.0.0.1 -p tcp --dport 54321 -j DNAT --to-destination 192.168.178.40:3389
iptables -t nat -A POSTROUTING --dst 192.168.178.40 -p tcp --dport 3389 -j SNAT --to-source 127.0.0.1
iptables -t nat -A OUTPUT --dst 127.0.0.1 -p tcp --dport 54321 -j DNAT --to-destination 192.168.178.40:3389
Dies auch nicht.

Code: Alles auswählen

iptables -t nat -A PREROUTING -i eth0  -p tcp --dport 54321 -m conntrack --ctstate NEW -j DNAT --to 192.168.178.40:3389
iptables -t nat -A PREROUTING -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A POSTROUTING -t nat -j MASQUERADE
Was mache ich falsch?

Unter messages steht: sshd[6977]: error: connect_to localhost port 54321: failed.

Gruß schnurzelat
Derzeitiger Server: OpenSuse Leap 15.1 auf einem Dell T20 mit einem Xeon E3-1225 v3 und 16 GB RAM
Wichtige Anwendungen: Apache2, MySQL, Samba, Squid, SquidGuard, x11vnc
schnurzelat
Member
Member
Beiträge: 169
Registriert: 30. Jun 2008, 20:17

Re: SSH-Tunnel - Andere IP's im entfernten Netz erreichen

Beitrag von schnurzelat »

Gelöst!

Es war soooooooooooo einfach! Bei sshd 'GatewayPorts yes' eintragen. Restart. Bei putty Source 3392 Destination 192.168.178.40:3389

Fertig.

Gruß schnurzelat
Derzeitiger Server: OpenSuse Leap 15.1 auf einem Dell T20 mit einem Xeon E3-1225 v3 und 16 GB RAM
Wichtige Anwendungen: Apache2, MySQL, Samba, Squid, SquidGuard, x11vnc
Antworten