Verständnisproblme mit ssh und ar7.cfg

noobist

Neuer User
Mitglied seit
2 Jun 2007
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Hallo,

bin neu hier und benötige Hilfe oder einen Wink in die richtige Richtung.

Das Ziel: Aus dem Internet über ssh bzw. NX via ssh auf einen bestimmten Heim-PC zugreifen zu können.
Auf der FBF7050 läuft Firmware 14.04.31 mit einem Pseudo-Image von the-construct, welches dropbear und ether-wake enthält. Im LAN funktionieren ssh und der Dateienaustausch der ar7.cfg per tftp mit der FBF. Dynamic DNS-Account ist wahrscheinlich erfolgreich eingerichtet: zumindest kann die erstellte Subdomain angepingt werden.

Jetz zum Problem: Um über das Internet ssh auf die Fritzbox zu ermöglichen, sollte der Port 22 durch Anpassung der ar7.cfg geöffnet werden. Laut den Forenbeiträgen sollte man nach "forwardrules suchen und dort "tcp 0.0.0.0:22 0.0.0.0:22" hinzufügen. Leider verstehe ich die ar7.cfg nicht und habe auch keine passenende Beiträge dazu gefunden.

1) Wenn via ssh aus dem Internet an den einen bestimmten Heim-PC verbunden werden soll, wird dann auf der FritzBox eingewählt und automatisch auf den PC weitergeleitet? Oder braucht dieser eine eigene Unterdomäne? Oder Braucht der Heim-PC ebenfalls einen Dynamischen DNS-Eintrag? Was muss man da machen?

2) Im Heimnetz laufen mehrere Rechner und alle sind untereinander per ssh erreichbar. Wie und wo stelle ich sicher, dass nur auf den den einen bestimmten Heim-PC aus dem Internet zugegriffen werden kann? Via IP, Domäne, Mac-Adresse?

3) Bei Firmware 14.04.31 existieren 2 Stellen mit Forwardrules:
Code:
dslifaces {
         ...
         dsldpconfig {
                 ...
                 highoutput {
                         policy = "permit";
                         accesslist = 
                                      "reject ip any 242.0.0.0 255.0.0.0", 
                                      "deny ip any host 255.255.255.255", 
                                      "reject ip any 169.254.0.0 255.255.0.0", 
                                      ...
                 }
                 forwardrules = "udp 0.0.0.0:5060 0.0.0.0:5060", 
                                 ...
                 shaper = "globalshaper";
         }
 } {
         ...
                 highoutput {
                         policy = "permit";
                         accesslist = "permit udp any any", 
                                      "reject ip any any";
                 }
                 forwardrules = "udp 0.0.0.0:5060 0.0.0.0:5060", 
                                 ...
                 shaper = "globalshaper";
Wo trage ich "tcp 0.0.0.0:22 0.0.0.0:22" ein und warum?


Danke für jede Hilfe!
 
Wenn ich Dich richtig verstehe, willst Du gar nicht von außen auf die FBF zugreifen, sondern auf einen oder mehrere der PCs im Netzwerk.
Zunächst einmal gibt es nur eine öffentliche IP-Adresse. Diese hat die FBF und diese wird bei DYNDNS eingetragen. Weitere Adressen dort einzutragen, z.B. die internen IPs der Rechner im Netz, bringt nichts.
Ob der DYNDNS Update erfolgreich war, siehst Du nicht daran, daß ein Ping erfolgreich ist, sondern daran, daß die Adresse, die beim Ping angezeigt wird, mit der Adresse übereinstimmt, die von der FBF in der Status-Seite angezeigt wird.

Was Du brauchs, ist eine Port-Weiterleitung. Diese kannst Du bequem über die Web-Konfiguration einrichten. Die FBF wird die benötigten Regeln dann selbst in der ar7.cfg erstellen.
Wenn Dein PC im Netz die Adresse 192.168.178.10 hat, trägst Du ein Port 22 nach 192.168.178.10 Port 22.
Alternativ trägst Du ein Port 12310 nach 192.168.178.10 Port 22. Die 12310 ist frei wählbar.
Außerdem kannst Du Port 12311 nach 192.168.178.11 Port 22 weiterleiten für einen anderen Rechner unter der IP 192.168.178.11.
Die PCs sollten feste IP Adressen haben.
Ein Zugriff von Außen erfolgt dann über den DYNDNS-Name und Port 22 oder 12310 oder 12311.

Die ar7.cfg enthält die Konfiguration der FBF und ermöglicht einige Einstellungen, die über die Web-Konfiguration nicht gehen. Damit kann man z.B. auf ein SSH Programm auf der FBF selbst zugreifen. Mit neueren Firmware-Versionen ist dies aber zum Teil nicht mehr so einfach möglich.
 
Danke für die Antwort :)

Wenn ich Dich richtig verstehe, willst Du gar nicht von außen auf die FBF zugreifen, sondern auf einen oder mehrere der PCs im Netzwerk.
Ich will
- sowohl per ssh auf die FritzBox, um den dahinterliegenden PC per Etherwake zu starten
- als auch per ssh (eigentlich NX über ssh) auf den dahinterliegenden PC zugreifen

Letzteres geht per per Web-Konfiguration, wie ich gerade von Dir gelernt habe :cool:
Aber wie geht dann beides bei nur einer aus dem Internet sichtbaren IP?

Danke und Gruß,
noobist
 
noobist schrieb:
Aber wie geht dann beides bei nur einer aus dem Internet sichtbaren IP?
Es gibt aus dem Internet immer nur eine sichtbar IP, das ist die, die von Provider zugewiesen wird. Dies IP gehört zur Internet Seite der FBF (oder einem anderen NAT-Router). Eine IP-Adresse gehört genau genommen nicht zu einem Gerät, sondern zu einem Netzwerkanschluß. Die die meisten Geräte (Router ausgenommen) nur einen Netzwerkanschluß haben, wird dies aber häufig nicht unterschieden.
Wenn man trotzdem von außen mehrere Geräte ansprechen will, muß man diese unterscheiden können. Da die IP-Adresse dafür nicht verwendet werden kann, verwendet man hierfür verschiedene Ports auf der Außenseite (Internet). Für diese kann man verschiedenen Regeln für die Weiterleitung einrichten. Je nach Zielport wird die Verbindung dann an den entsprechenden Rechner weitergeleitet.
Nach meinen Informationen werden Port-Weiterleitungen auf die FBF selbst von neueren Firmware-Versionen verhindert, entweder nur in der Web-Konfiguration oder auch in der Firmware selbst.
Da Du sowieso schon the-contruct verwendest, ist die einfachste Lösung, dort noch den Punkt Virtuelle Netzwerkkarte einrichten mit auszuwählen.
Damit wird eine zusätzliche IP-Adresse 192.168.178.253 für die interne Netzwerk-Schnittstelle der Box eingerichtet. Die Firmware weiß aber nicht, daß diese Adresse zur Box gehört. Daher kann man eine Port-Weiterleitung auf diese Adresse einrichten und landet damit auf der Box selbst.

Deine Konfiguration könnte also so aussehen:
Port 10010 -> 192.168.178.10 Port 22
Port 10011 -> 192.168.178.11 Port 22
Port 10012 -> 192.168.178.12 Port 22
...
Port 10253 -> 192.168.178.253 Port 22

Es wird also Port 10000+x auf 192.168.178.x Port 22 weitergeleitet (22 ist der Standard-Port für SSH). Dies läßt sich alles bequem in der Web-Konfiguration einrichten. Natürlich legst Du eine Weiterleitung nur für die Adressen an, die Du auch tatsächlich verwendest. Die Ports auf der Außenseite (10000+x) sind frei wählbar.

Wenn Du als Client z.B. Putty verwendest, trägst Du als Server xx.dyndns.org ein und als Port nicht 22, sondern 10253 für die Box selbst oder 10010 für den Rechner 192.16.178.10. Die Box entscheidet anhand der Portnummer und der Einstellungen bei Port-Weiterleitung, wohin die Verbindung weitergereicht werden soll.
 
Probleme mit Portforwarding und ssh

Danke für die ausführliche Erklärung. Leider bekomme ich keine Verbindung zur FritzBox: "Network Error: Network is unreachable".

Folgendes habe ich gemacht:
1) Pseudo-Image mit virtueller Netzwerkkarte und dropbear auf die Fritzbox eingespielt

2) Folgende Portfreigaben unter http://fritz.box/ - Einstellungen - Internet eingefügt
a) ssh-Zugang für die FritzBox
- Protokoll: TCP
- Von Port: 10001 , bis Port: 10001
- an IP-Adresse: 192.168.178.253
- an Port: 22
b) ssh-Zugang für den PC hinter der FritzBox
- Neue Portfreigabe
- Protokoll: TCP
- Von Port: 10002, bis Port: 10002
- an IP-Adresse: (IP des PCs eingetragen)
- an Port: 22

3) Nachgecheckt: Die IP in der Übersichtseite von http://Fritz.Box stimmt mit dem Eintrag bei DynDNS überein


Von einem Dritt-PC, welcher sich im LAN mit der FritzBox und dem anderen PC befindet, habe ich probiert über Putty (Windows) und ssh -l ... -p ... (Linux) eine ssh-Verbindung herzustellen:
a) auf die FritzBox über das Internet geht nicht:
- ssh auf (angegebene Subdomain).dyndns.org Port 10001: Network Error: Network is unreachable
- ssh auf die IP der Übersichtsseite der FritzBox Port 10001: Network Error: Network is unreachable

b) auf den PC hinter der FritzBox
- ssh auf (angegebene Subdomain).dyndns.org Port 10002: Network Error: Network is unreachable
- ssh auf die IP der Übersichtsseite der FritzBox Port 10002: Network Error: Network is unreachable


ssh an sich und die virtuelle Netzwerkkarte funktionieren:
- ssh auf 192.168.178.253 Port 22 funktioniert
- ssh auf die IP vom dahinterliegenden PC mit Port 22 funktioniert


Was mache ich falsch?

Danke und Gruß,
noobist
 
Hallo,

dein Problem ist wohl, dass du den Test von "Intern" machst: Du sprichst zwar die "externe" Adresse der Box an (die bei Dnydns registriert ist), das machst du aber mit einer "internen" LAN-Adresse. Die Box "antwortet" dir dann mit ihrer internen Adresse, und deine Freigaben greifen nicht.
Um das zu Testen, musst du "von außen" testen, also von einem PC im Internet aus.

Jörg
 
Vermutlich machst Du (fast) nichts falsch.
Bevor Du weiter nach Fehlern suchst, versuch mal das gleiche, aber mit einem Rechner, der sich außerhalb befindet.
Die Port-Weiterleitung ist dazu da, eine Verbindung aus dem Internet in das interne Netzwerk weiterzuleiten.
Wenn Du es aus dem internen Netz probierst, gibt es zwei Möglichkeiten:
- Die Box merkt, daß die Anfrage aus dem internen Netz kommt, und leitet sie nicht weiter. Die Verbindung geht also nicht. Die Fehlermeldung deutet auf diesen Fall hin.
- Die Box leitet die Verbindung weiter, es kann aber trotzdem nicht gehen. Die Fehlermeldung wäre dann eher ein Timeout. Wenn Dich die Einzelheiten hierzu interessieren, kann ich darauf auch näher eingehen.

Kurz gesagt, versuch es einmal von einem Rechner außerhalb, vermutlich wird es funktionieren.
 
ssh auf FritzBox und dahinterliegenden PC funzt!

Jetzt klappts aus dem internen Netz via DynDNS-Subdomain :D

NX zickt noch rum, aber ssh bringt mir eine Menge Möglichkeiten.
Sehr cool das Ganze!

Danke für Deine Hilfe RalfFriedl!
 
Von extern kein Zugriff auf DynDNS-Subdomain

Sieht mittlerweile besser aus: vom internen Netz kann auf die FritzBox über ssh per Subdomain.dyndns.org Port 10001 angemeldet werden.
Leider klappt das nicht von einem fremden DSL-Anschluss.

Auf der FBF gibt es bei den Zugangsdaten die Option "Internetverbindung dauerhaft halten"
1) muss das für DynDNS aktiviert sein?
Grund der Frage: PINGe auf die Subdomain.dyndns.org
- aus meinem LAN funkitoniert das.
- von einem anderen DSL-Anschluss funktioniert das nicht

2) Ne Idee wieviel Traffic die Aktivierung der dauerhaften Verbindung verursacht? Ist das sowas wie ein ping der FBF alle paar Stunden?
Habe einen Volumentarif für DSL und möchte eine gewisse Grenze nicht überschreiten.


RalfFriedl schrieb:
Welche Adresse hat denn Deine DynDNS-Subdomain?
Die Externe oder die Interne?
IP bei DynDNS.org und in der FBF-Übersicht sieht so aus: 84.xxx.xxx.xxx
Da kein Klasse-C-Netz, wird das wohl eine externe sein (Vorsicht: Anfänger stellt stellt Vermutungen an:idea: ).
 
Die FBF muß die Internet-Verbindung offen halten, sonst kannst Du nicht von außen drauf. Wenn die FBF offline wäre, wie wolltest Du sie dann erreichen? Woher sollte die FBF wissen, wann Du darauf zugreifen willst?
Die Option "Internetverbindung dauerhaft halten" ist also technisch keine Voraussetzung für DYNDNS, aber praktisch nützt Dir DYNDNS nichts, wenn Du diese Option nicht aktivierst.
Die FBF generiert vermutlich so gut wie keinen Traffic über diese Option. Sie hält nur die Verbindung offen. Wahrscheinlich macht sie nicht einmal ein Ping. Ein Ping ist nur ein Trick, um ein anderes Gerät dazu zu bewegen, die Verbindung offen zu halten, indem man Aktivität auf der Leitung verursacht.
Die FBF hat auch einen Volumenzähler, den kannst Du einrichten und mal beobachten.
Wenn Du bei 1&1 bist, kannst Du auch im Control-Center von 1&1 Dein Volumen beobachten.
Du hast doch hoffentlich keinen Zeit-Tarif, das wäre für diese Anwendung schlecht.
Die Adresse 84.xxx.xxx.xxx ist auf jeden Fall eine externe, hoffentlich auch Deine eigene. Aber wenn Deine FBF die Verbindung trennt, bevor Du eine Verbindung aufbauen willst, kann es nicht gehen.
 
Hi,

noobist schrieb:
Grund der Frage: PINGe auf die Subdomain.dyndns.org
- aus meinem LAN funkitoniert das.
- von einem anderen DSL-Anschluss funktioniert das nicht
Nur nochmal nachgefragt: Ist den das "IP-Ergebins" des Pings identisch? also sagen beide (intern und anderer DSL-Anschluss) bei
Code:
C:\>ping Subdomain.dyndns.org

Ping Subdomain.dyndns.org [84.xxx.yyy.zzz] mit 32 Bytes Daten:
das "gleiche" 84.xxx.yyy.zzz?
Stimmt das 84.xxx.yyy.zzz mit dem überein, was bei der Box auf der Statusseite als Internet IP-Adresse steht?

Jörg
 
Kostenlos!

Statistik des Forums

Themen
248,223
Beiträge
2,284,750
Mitglieder
377,488
Neuestes Mitglied
Hagge