Zugriffsberechtigungen am Captive Portal


  • Hallo,

    ich hab da mal so n kleines Problem mit meiner pfSense…

    Ich betreibe ein Captive Portal an dem Ding und möchte es realisieren, dass bestimmte Ports von Programmen Zugriff bekommen (ICQ, Teamviewer, VPN...). Zugriff auf Internet Port 80 funktioniert einwandfrei (ich denke mal, weil der Proxy transparent ist). Leider bekomme ich das nicht ganz so hin mit den anderen Ports. Ich bekomme es nur hin ein ganzes Netz oder eine bestimmte IP komplett frei zu schalten (Habe ich zum Beispiel für meine PS3 und mein LAN-Netz). Da habe ich unter Firewall -> NAT -> Outbound auf manuell gestellt und folgendes drin:

    WAN  10.0.0.0/20 * * * * * NO Auto created rule for LAN 
    WAN  172.21.2.3/32 * * * * * YES Playstation 3

    Nun möchte ich zum Beispiel für das Captive Portal Netz (172.21.0.0/22) ICQ und Teamviewer freischalten. Wie realisiere ich das.

    Und noch ein kleines Problem. Ich hätte gerne, dass der Proxy nur im Captive Portal transparent läuft (wegen Filterregeln usw.) aber im LAN Netz sollte er einfach nur so laufen, da im LAN Netz ein anderer Proxy-Filter läuft der den pfSense als Upstream nutzt. Im LAN-Netz habe ich nur auf einem Rechner den pfSense als Gateway und da muss ich bei größeren Downloads immer die Proxy Transparenz ausschalten, da sonst die Downloads nicht vollständig sind. Und außerdem funktionieren Downloads bei MSDN nicht wenn der Proxy transparent ist.

    Gruß
    Ch3p4cK


  • OK. Ich glaube ich hatte da gestern nen kleinen Denkfehler. Als ich heute morgen aufgewacht bin wusste ich wie es funktionieren könnte. Für jeden den es interessiert:

    Unter Firewall -> NAT -> Outbound habe ich nun beide Netze komplett freigeschaltet:

    WAN      10.0.0.0/20 *    *    *    *    *    YES  Rule for LAN   
    WAN      172.21.0.0/22 *    *    *    *    *    YES  Rule for Captive Portal

    Dann hab ich mir unter Firewall -> Aliases einen Alias (cp_allowed) erstellt in dem dann immer alle Ports eingetragen werden können.
    Dann habe unter Firewall -> Rules als unterste Regel erst mal sämtlichen Traffic aus dem CaptivePortal-Netz in andere Netze geblockt:
    X  * CaptivePortal net * * * *

    Darüber habe ich dann einen Zugriff erstellt, dass der Router noch erreicht werden kann (sonst geht nix):

    TCP/UDP CaptivePortal net * 172.21.0.1 * *

    Darüber habe ich dann noch einmal einen Block erstellt auf die Ports für SSH und HTTPS auf den Router selbst (cp_blocked ist ebenfalls ein alias):
    X  TCP/UDP  CaptivePortal net  *  172.21.0.1  cp_blocked  *

    Darüber habe ich dann die Regel erstellt, wo der Alias cp_allowed zum Einsatz kommt.

    TCP/UDP CaptivePortal net * * cp_allowed * 
      GRE CaptivePortal net * * * *

    GRE wird nur benötigt wenn man VPN-Verbindungen zulassen will.

    Im Großen und Ganzen sieht das vollständig so aus:

        Proto		Source				Port  	Destination  	Port  	Gateway 
    
    >  TCP/UDP 	CaptivePortal net 	* 		* 				cp_allowed 	*  	
    >  GRE 		 CaptivePortal net 	* 		* 				* 				*  	
    X  TCP/UDP 	CaptivePortal net 	* 		172.21.0.1 	cp_blocked 	*
    >  TCP/UDP 	CaptivePortal net 	* 		172.21.0.1	 * 				*
    X  * 			CaptivePortal net 	* 		* 				* 				*
    

    Gruß
    Ch3p4cK