pfctl config para sólo permitir la connection OpenVPN

He encontrado lo que parece ser una guía adecuada aquí , pero pfctl se queja de un error de syntax y "ninguna dirección IP encontrada para en3", que es mi interfaz principal. He tenido otras reglas del pf que trabajan con éxito para transportar puertos, etc. pero no puedo figurar esto hacia fuera.

Estoy en 10.11.4 y usando Tunnelblick conectado a un server OpenVPN me instalé en un VPS.

¿Podría alguien dar instrucciones sobre la configuration correcta para pfctl en El Capitán? Necesito mantener acceso abierto a networkinges privadas como 10.0.0.0 y 168.1.0.0

¡Gracias!

  • No related posts
  • One response to “pfctl config para sólo permitir la connection OpenVPN”

      Jake el perro said:

      Los siguientes trabajos sobre Sierra.

      Añada las siguientes líneas al final de /etc/pf.conf

      anchor "org.vpnonly.pf" load anchor "org.vpnonly.pf" from "/etc/pf.anchors/org.vpnonly.pf.rules" 

      Cree este file de configuration en /etc/pf.anchors/org.vpnonly.pf.rules

       # Options set block-policy drop set fingerprints "/etc/pf.os" set ruleset-optimization basic set skip on lo0 # Interfaces vpn_intf = "{ utun0 utun1 utun2 utun3 }" # Ports allowed_vpn_ports = "{ 1:65535 }" # Table with allowed IPs table <allowed_vpn_ips> persist file "/etc/pf.anchors/vpn.list" file "/etc/pf.anchors/custom.list" # Block all outgoing packets block out all # Antispoof protection #had to disable this to avoid error #antispoof for $vpn_intf inet # Allow outgoing packets to specified IPs only pass out proto icmp from any to <allowed_vpn_ips> pass out proto {tcp udp} from any to <allowed_vpn_ips> port $allowed_vpn_ports # Allow traffic for VPN interfaces pass out on $vpn_intf all set saltear lo0 # Options set block-policy drop set fingerprints "/etc/pf.os" set ruleset-optimization basic set skip on lo0 # Interfaces vpn_intf = "{ utun0 utun1 utun2 utun3 }" # Ports allowed_vpn_ports = "{ 1:65535 }" # Table with allowed IPs table <allowed_vpn_ips> persist file "/etc/pf.anchors/vpn.list" file "/etc/pf.anchors/custom.list" # Block all outgoing packets block out all # Antispoof protection #had to disable this to avoid error #antispoof for $vpn_intf inet # Allow outgoing packets to specified IPs only pass out proto icmp from any to <allowed_vpn_ips> pass out proto {tcp udp} from any to <allowed_vpn_ips> port $allowed_vpn_ports # Allow traffic for VPN interfaces pass out on $vpn_intf all 

      Crea /etc/pf.anchors/vpn.list y /etc/pf.anchors/custom.list

      sudo touch /etc/pf.anchors/vpn.list /etc/pf.anchors/custom.list

      Agregue una list de direcciones IP permitidas (direcciones de serveres VPN) a /etc/pf.anchors/vpn.list

       41.xxx.xxx.xxx 42.xxx.xxx.xxx 

      Añadir google DNS a la costumbre /etc/pf.anchors/custom.list 8.8.8.8 8.8.4.4

      sudo pfctl -e -f /etc/pf.conf y comtesting si hay errores

      Para cargar al arrancar, edite a pfctl por defecto en /System/Library/LaunchDaemons/com.apple.pfctl.plist para establecer <key>Disabled</key> <true/>

      asegúrese de que el modo sin raíz esté deshabilitado. (terminal de arranque a la recuperación con el command + R en el carillón y ejecutar csrutil disable ejecutar estos commands, a continuación, volver al terminal de recuperación después de csrutil enable con csrutil enable

      Cree su LaunchDaemon en /Library/LaunchDaemons/com.apple.pfctl.plist

       <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>com.apple.pfctl</string> <key>ProgramArguments</key> <array> <string>pfctl</string> <string>-e</string> <string>-f</string> <string>/etc/pf.conf</string> </array> <key>RunAtLoad</key> <true/> </dict> </plist> <? xml version = "1.0" encoding = "UTF-8"?> <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>com.apple.pfctl</string> <key>ProgramArguments</key> <array> <string>pfctl</string> <string>-e</string> <string>-f</string> <string>/etc/pf.conf</string> </array> <key>RunAtLoad</key> <true/> </dict> </plist> 

      terminar con sudo chmod 644 /Library/LaunchDaemons/com.apple.pfctl.plist , reiniciar con el modo rootless habilitado y que está configurado.

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).