3# Dieses Skript wird nur ein einziges Mal nach einem Upgrade oder der Erstinstallation ausgefuehrt:
8# shellcheck source=opennet/packages/on-core/files/usr/lib/opennet/on-helper.sh
9.
"${IPKG_INSTROOT:-}/usr/lib/opennet/on-helper.sh"
12configure_free_zone() {
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"
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"
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"
41 apply_changes firewall
47apply_changes on-captive-portal
configure_free_network()
Erzeuge das free-Netzwerk-Interface, falls es noch nicht existiert.
add_interface_to_zone()
Fuege ein logisches Netzwerk-Interface zu einer Firewall-Zone hinzu.