forwardrules nur für bestimmte externe IP

Cradle

Neuer User
Mitglied seit
12 Jan 2008
Beiträge
4
Punkte für Reaktionen
0
Punkte
0
Hallo,
nach langen, erfolglosen Versuchen und natürlich der Suche hier im Forum, habe ich leider bis jetzt noch keine Lösung für folgendes Problem mit meiner FRITZ!Box Fon WLAN 7170 (UI) gefunden: Ich möchte die Firewall so konfigurieren, dass ein Zugriff auf bestimmte Server/Ports im internen Netz nur von bestimmten (statischen) IP-Adressen aus dem externen Netz möglich ist.

Zum Beispiel:
  • Der interne Server hat die IP 192.168.1.5.
  • Die FritzBox hat die (interne) IP 192.168.1.10, externe IP ist dynamisch.
  • Auf dem internen Server läuft ein Dienst, z.B. smtp (Port 25).
  • Ein externer Rechner (irgendwo im Internet) hat die statische IP 201.23.45.67.
Nun soll der interne Server zwar von außen erreichbar sein (forwardrules), aber eben ausschließlich von der IP 201.23.45.67 aus.
In der ar7.cfg kann man mit der "forwardrule" leider die Absender-IP nicht einschränken:

Code:
tcp 0.0.0.0:25 192.168.1.5:25 0 # smtp
Hat jemand eine Idee?

PS: ich weiß, Absender-IPs lassen sich faken :rolleyes:

Danke im Voraus.
Cradle
 
Ich denke, du solltest vielleich mal hier schauen, da geht es um die interne Firewall und dein Anliegen sollte damit möglich sein. Wobei ich nicht weiß, ob du das Portforwarding dann noch zusätzlich brauchst, das sollte aber kein Problem sein ;-)

Jörg
 
Danke für deine Antwort...
ich kenne bereits diese Seite und kam leider trotzdem nicht zum Erfolg :heul:
Möglicherweise, weil die Beispiele im Bereich dslifaces eingetragen wurden, meine FB aber nicht als reiner Router arbeitet, sondern (wie wahrscheinlich viele anderen Boxen auch) als DSL-Modem ("dsldpconfig").

Über die "forwardrule" ist wohl keine Einschränkung möglich. Darüber funktionier es zwar, Server/Dienste im internen Netz zu erreichen, aber eben von allen IPs aus. Auch andere Einträge führten bisher nicht zum Erfolg; z.B. unter "lowinput":

Code:
ar7cfg {
   ...
   dslifaces {
     ...
     dsldpconfig {
       ...
       lowinput {
         policy = "permit";
         accesslist = [...]
           "permit tcp host 201.23.45.67 host 192.168.1.5 eq 25",
           ...
         }
       }
     }
   }
}

Und immer, wenn das Portforwarding (zusätzlich) aktiviert ist, kann ich den internen Server erreichen; nur eben von ALLEN IPs aus :-(
 
Auch, wenn Du einen allgemeinen (0.0.0.0) Eintrag mit "deny" zusätzlich erstellst? Hier evtl. ein wenig mit der Reihenfolge der Regeln (erst den allgemeinen deny, dann das spezielle allow oder eben andersherum) ecperimentieren.


Gruß,
Wichard

P.S.: Ich wusste doch, dass ich das Problem so auch mal hatte... ;)
http://www.ip-phone-forum.de/showthread.php?t=84279
 
Alles ausprobiert... erfolglos:

Code:
...
dsldpconfig {
  ...
  lowinput {
    policy = "permit";
    accesslist =
      ...
      "reject tcp any any eq 22",
      "permit tcp host 201.23.45.67 any eq 25",
      ...
  }
  ...
  forwardrules = ...
    "tcp 0.0.0.0:25 192.168.1.5:25 0 # smtp",
}

In der Reihenfolge:
Code:
"reject tcp any any eq 22",
"permit tcp host 201.23.45.67 any eq 25",

...und umgekehrt:
Code:
"permit tcp host 201.23.45.67 any eq 25",
"reject tcp any any eq 22",

Zwischen deinem Problem und dem meinem sehe ich zwei Unterschiede:

1. du nutzt die FB als Router, ich als DSL-Modem.
2. du schaltest einen Dienst auf der FB nach außen frei, ich versuche einen Dienst im internen Netz frei zu geben.

Das einzige, was funktioniert, ist die "forwardrule": immer wenn die Zeile existiert, dann kommt man von außen auf Port 25 des internen Servers (ist ja auch kein Wunder...):

Code:
"tcp 0.0.0.0:25 192.168.1.5:25 0 # smtp",
...aber von jeder externen IP aus :-(

Michael
 
... wahrscheinlich blöde Frage, aber: hast du mal die Einträge in den anderen Stellen versucht?
Oder: Woher weißt du denn, dass du das bei "dsldpconfig" eintragen musst? Auf der Seite stand da noch

Es gibt jeweils eine Sektion accesslist in den Kategorien pppoefw, dslifaces und dsldpconfig.

* pppoefw - Router läuft im PPPOE Mode (nur als Modem)
* dslifaces - Router läuft im Router-Mode (NAT-Funktionalität)
* dsldpconfig - Kann ich leider nicht sagen. Wer weiß mehr?

Jörg
 
Durchaus berechtigt, die Frage... manchmal verrennt man sich ja in solchen blöden Stellen :-)

Wenn ich über die Web-/Admin-Oberfläche Ports/Server im internen Netz frei gebe (also: "Erweiterte Einstellungen -> Internet -> Portfreigabe"), kann ich die Änderungen ja im File ar7.cfg sehen. Zum Beispiel die Portfreigabe des HTTP-Servers auf der internen IP 192.168.1.12:

Code:
ar7cfg {
  ...
  dslifaces {
    ...
    dsldpconfig {
      ...
      lowinput {
        ...
          accesslist = " ... ";
      }
      ...
      forwardrules =
        ...
        "tcp 0.0.0.0:8080 192.168.1.12:80 0 # HTTP-Server",
        ...
      }
    }
  }
}

Somit habe ich meine Änderungen in der "accesslist" im Abschnitt "lowinput" gemacht. Außerdem: editiere ich die forwardrules manuell in der Datei, werden diese Änderungen ja auch aktiv.
 
... ist ein Argument ;-) (obwohl: Der Versuch kann ja nicht schaden).

Zwei Sachen hätt ich noch:

- Sind deine Ports oben "Verschreiber" (SMTP [25] erlauben und SSH[22] verbieten)??
- Auch wenn es bei Wichard anders geklappt hat; Versuch doch noch den Hinweis:
"Die Accessliste muss in den virtuellen Interface-Definitionen sowohl im lowinput als auch im highoutput Bereich eingetragen bzw. verändert werden."

Jörg
 
Kostenlos!

Neueste Beiträge

Statistik des Forums

Themen
248,872
Beiträge
2,303,452
Mitglieder
378,532
Neuestes Mitglied
Nik320