Opennet Firmware
init/on-captive-portal
gehe zur Dokumentation dieser Datei
1 #!/bin/sh
2 #
3 # Dieses Skript wird nur ein einziges Mal nach einem Upgrade oder der Erstinstallation ausgefuehrt:
4 # http://wiki.openwrt.org/doc/uci#defaults
5 #
6 
7 
8 # shellcheck source=opennet/packages/on-core/files/usr/lib/opennet/on-helper.sh
9 . "${IPKG_INSTROOT:-}/usr/lib/opennet/on-helper.sh"
10 
11 
12 configure_free_zone() {
13  local uci_prefix
14  uci_prefix=$(find_first_uci_section "firewall" "zone" "name=$ZONE_FREE")
15  # Zone existiert? Keine Aenderungen ...
16  [ -z "$uci_prefix" ] && {
17  uci_prefix=firewall.$(uci add firewall zone)
18  uci set "$uci_prefix=zone"
19  uci set "$uci_prefix.name=$ZONE_FREE"
20  add_interface_to_zone "$ZONE_FREE" "$NETWORK_FREE"
21  # keine Zugriffe aus dem offenen Netz heraus
22  uci set "$uci_prefix.input=REJECT"
23  # ausgehende Pakete sind OK
24  uci set "$uci_prefix.output=ACCEPT"
25  # Verkehr aus dem opennet-Netz darf nicht in lokale oder tunnel-Netze
26  uci set "$uci_prefix.forward=REJECT"
27  # die Nutzer duerfen nie in lokale WANs, sondern lediglich in VPN-Tunnel hinein kommunizieren
28  add_zone_forward "$ZONE_FREE" "$ZONE_TUNNEL"
29  }
30  # erlaube DHCP und DNS
31  uci_prefix=$(find_first_uci_section "firewall" "rule" "name=on-free-services" "src=$ZONE_FREE" "target=ACCEPT")
32  [ -z "$uci_prefix" ] && {
33  uci_prefix="firewall.$(uci add "firewall" "rule")"
34  uci set "${uci_prefix}.proto=tcpudp"
35  uci set "${uci_prefix}.dest_port=53 67"
36  uci set "${uci_prefix}.src=$ZONE_FREE"
37  uci set "${uci_prefix}.target=ACCEPT"
38  uci set "${uci_prefix}.name=on-free-services"
39  uci set "${uci_prefix}.enabled=1"
40  }
41  apply_changes firewall
42 }
43 
44 
46 configure_free_zone
47 apply_changes on-captive-portal
add_interface_to_zone()
Fuege ein logisches Netzwerk-Interface zu einer Firewall-Zone hinzu.
Definition: network.sh:46
configure_free_network()
Erzeuge das free-Netzwerk-Interface, falls es noch nicht existiert.