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
12configure_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
46configure_free_zone
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.
Definition: network.sh:47