Commit graph

67 commits

Author SHA1 Message Date
Jo-Philipp Wich
fe2d387a8c firewall: bail out if uci is used in firewall include files
SVN-Revision: 30694
2012-02-23 18:50:47 +00:00
Felix Fietkau
d85a504d3c iptables: make it possible to dynamically configure built-in statically linked extensions, fold -mod-conntrack and -mod-nat into the default package. saves about 8k on an ar71xx default squashfs
SVN-Revision: 30676
2012-02-22 01:47:48 +00:00
Jo-Philipp Wich
5609ad736e firewall: don't filter IPv4 ICMP types (#10928)
SVN-Revision: 30363
2012-02-07 18:35:48 +00:00
Jo-Philipp Wich
8094fa46da firewall: add support for "local" port forwards which target an internal address on the router itself
SVN-Revision: 29687
2012-01-08 15:29:24 +00:00
Jo-Philipp Wich
77dda8d67a firewall: - introduce per-section "option enabled" which defaults to "1" - useful to disable rules or zones without having to delete them - annotate default traffic rules with names - bump version
SVN-Revision: 29577
2011-12-20 01:10:15 +00:00
Jo-Philipp Wich
10f199d832 firewall: add DHCPv6 default rule (#10381)
SVN-Revision: 28874
2011-11-09 11:10:37 +00:00
Jo-Philipp Wich
50a22f4f9e firewall: relocate TCPMSS rules into mangle table, add code to selectively clear them out again
SVN-Revision: 28669
2011-10-29 18:02:45 +00:00
Jo-Philipp Wich
c7ac1b5b0c firewall: do not produce 0.0.0.0/0 if a symbolic masq_src or masq_dest is given but does not resolve to an ip
SVN-Revision: 28628
2011-10-27 18:14:55 +00:00
Jo-Philipp Wich
204bf6e5fe firewall: prevent ip6tables -t nat rules (#10265)
SVN-Revision: 28535
2011-10-23 12:25:57 +00:00
Jo-Philipp Wich
69df551be3 firewall: fix another instance of unquoted "*"
SVN-Revision: 28529
2011-10-22 21:38:10 +00:00
Jo-Philipp Wich
9a61d9e513 firewall: fix possible expansion of "*" when rules with "option src *" are processed
SVN-Revision: 28527
2011-10-22 20:11:25 +00:00
Jo-Philipp Wich
e0e73928da firewall: do not check for module availability, let iptables fail if a feature is not present (#7610)
SVN-Revision: 28525
2011-10-22 19:50:35 +00:00
Jo-Philipp Wich
995face56d firewall: make ESTABLISHED,RELATED rules match before INVALID, use conntrack instead of state match (#10038)
SVN-Revision: 28148
2011-09-01 20:37:22 +00:00
Jo-Philipp Wich
f1e7045d30 firewall: further tune ICMPv6 default rules according to RFC4890 (#9893)
SVN-Revision: 27979
2011-08-14 00:33:29 +00:00
Jo-Philipp Wich
7a206885df firewall: prevent redundant rules if multiple ports and multiple icmp types are given in a rule block for both icmp and other protocols
SVN-Revision: 27792
2011-07-26 22:21:39 +00:00
Jo-Philipp Wich
90ac92e8be firewall: fix serious bug in state var handling (#9746)
SVN-Revision: 27711
2011-07-20 15:29:10 +00:00
Jo-Philipp Wich
78fa88ca81 firewall: rework state variable handling, use uci_toggle_state() where applicable and properly handle duplicates in add and del state helpers (#9152, #9710)
SVN-Revision: 27618
2011-07-15 15:03:57 +00:00
Jo-Philipp Wich
a92ed1808c firewall: make sure that -m mac is used with --mac-source, follow up to r27508
SVN-Revision: 27519
2011-07-07 10:28:31 +00:00
Jo-Philipp Wich
dd4934a943 firewall: - solve scoping issues when multiple values are used, thanks Daniel Dickinson - ignore src_port/dest_port for proto icmp rules, ignore icmp_type for non-icmp rules - properly handle icmp when proto is given in numerical form (1, 58) - support negated icmp types
SVN-Revision: 27500
2011-07-06 22:10:46 +00:00
Jo-Philipp Wich
df14a48dc9 firewall: properly handle negated ports in nat reflection
SVN-Revision: 27334
2011-07-01 11:48:14 +00:00
Jo-Philipp Wich
68a1c8e1e3 firewall: - allow multiple ports, protocols, macs, icmp types per rule - implement "limit" and "limit_burst" options for rules - implement "extra" option to rules and redirects for passing arbritary flags to iptables - implement negations for "src_port", "dest_port", "src_dport", "src_mac", "proto" and "icmp_type" options - allow wildcard (*) "src" and "dest" options in rules to allow specifying "any" source or destination - validate symbolic icmp-type names against the selected iptables binary - properly handle forwarded ICMPv6 traffic in the default configuration
SVN-Revision: 27317
2011-06-30 01:31:23 +00:00
Jo-Philipp Wich
c014101d73 firewall: allow symbolic names of interfaces and aliases in masq_src and masq_dest
SVN-Revision: 27196
2011-06-16 21:54:59 +00:00
Jo-Philipp Wich
2a386cee99 firewall: prevent excessive uci state data aggregation (#9152)
SVN-Revision: 26740
2011-04-20 11:49:09 +00:00
Jo-Philipp Wich
af82471525 firewall: prevent duplicate values in interface state vars
SVN-Revision: 26382
2011-03-30 20:29:17 +00:00
Travis Kemen
a2cd7b2883 Keep firewall.user during sysupgrades
SVN-Revision: 26241
2011-03-20 00:57:47 +00:00
Jo-Philipp Wich
13333a6742 firewall: move include sourcing into a subshell, this makes the firewall init immune against exit in the include scripts
SVN-Revision: 25835
2011-03-02 19:20:29 +00:00
Jo-Philipp Wich
1ca64678bb firewall: fix rule generation for v4 or v6 only zones (#8955)
SVN-Revision: 25813
2011-03-01 18:04:14 +00:00
Jo-Philipp Wich
04b20727d8 firewall: fix wrong rule order if multiple protocols are used
SVN-Revision: 25179
2011-01-27 22:19:53 +00:00
Jo-Philipp Wich
a43f5b5038 firewall: insert SNAT and DNAT rules according to the order of the configuration file (#8052)
SVN-Revision: 23318
2010-10-08 12:11:55 +00:00
Jo-Philipp Wich
b0ca17ae6e firewall: mark /etc/firewall.user as conffile
SVN-Revision: 23231
2010-10-05 07:31:49 +00:00
Jo-Philipp Wich
7bf84dc4f8 firewall: also establish forward rules when setting up nat reflection, back out early if reflection is disabled
SVN-Revision: 23201
2010-10-03 18:11:59 +00:00
Jo-Philipp Wich
1cb2abca8e add maintainer information
SVN-Revision: 23159
2010-09-30 10:48:37 +00:00
Jo-Philipp Wich
6a335579b8 fireall: - support negations for src_ip, dest_ip, src_dip options in rules and redirects - add NOTRACK target to rule sections, allows to define fine grained notrack rules
SVN-Revision: 23141
2010-09-28 10:42:56 +00:00
Jo-Philipp Wich
b07620df31 firewall: protect iptables invocations with locks in interface ops, it might run concurrently due to hotplug invocations on network restart
SVN-Revision: 23090
2010-09-19 15:01:47 +00:00
Jo-Philipp Wich
f90328f26e firewall: make invalid redirects and duplicate zones non-fatal, print a notice and discard them
SVN-Revision: 23080
2010-09-16 11:47:35 +00:00
Jo-Philipp Wich
7557011cb1 firewall: run ifdown hotplug events synchronized, fixes a racecondition on "ifup iface" when ifdown and ifup events are delivered with a small dealy
SVN-Revision: 23064
2010-09-15 01:53:36 +00:00
Jo-Philipp Wich
1fe50da4bb firewall: deliver remove hotplug events for all active zones/networks when restarting the firewall
SVN-Revision: 23062
2010-09-14 23:11:12 +00:00
Jo-Philipp Wich
f3dd8278bb firewall: - simplify masquerade rule setup - remove various subshell invocations - speedup fw() by not relying on xargs and pipes - rework SNAT support - attach to dest zone, use src_dip/src_dport as snat source
SVN-Revision: 23024
2010-09-11 20:04:34 +00:00
Jo-Philipp Wich
eb79296cc1 firewall: introduce SNAT support for redirect sections
SVN-Revision: 22937
2010-09-05 19:03:17 +00:00
Jo-Philipp Wich
baf4782be6 firewall: clean up description (#7875)
SVN-Revision: 22905
2010-09-04 17:39:00 +00:00
Jo-Philipp Wich
ca5bf9e291 firewall: - handle NAT reflection in firewall hotplug, solves synchronizing issues on boot - introduce masq_src and masq_dest options to limit zone masq to specific ip ranges, supports multiple subnets and negation
SVN-Revision: 22888
2010-09-04 15:49:13 +00:00
Jo-Philipp Wich
ee4dd61b10 firewall: - fix processing of rules with an ip family option - append interface rules at the end of internal zone chains, simplifies injecting user or addon rules - support simple file logging (option log + option log_limit per zone)
SVN-Revision: 22847
2010-08-31 01:54:08 +00:00
Jo-Philipp Wich
d68e09200e firewall: add basic NAT reflection/NAT loopback support
SVN-Revision: 22441
2010-07-31 13:06:14 +00:00
Jo-Philipp Wich
e62a9791ee firewall: allow redirecting only destination port (#7197)
SVN-Revision: 22227
2010-07-16 06:03:15 +00:00
Jo-Philipp Wich
f8fa598bf4 firewall: - notrack support was broken in multiple ways, fix it - also consider a zone conntracked if any redirect references it (#7196)
SVN-Revision: 22215
2010-07-15 22:01:48 +00:00
Jo-Philipp Wich
07b571a239 firewall: Initial alias interface support. This allows to define zones covering alias interfaces and associated entries like rules and forwardings.
SVN-Revision: 21653
2010-06-01 21:58:48 +00:00
Jo-Philipp Wich
e25fbfccdf firewall: fix support for netranges in redirect and rule sections
SVN-Revision: 21640
2010-05-30 23:49:47 +00:00
Jo-Philipp Wich
40ad9defcc firewall: - fix ip6tables rules when icmp_type option is set - add "family" option to zones, forwardings, redirects and rules to selectively apply rules to iptables and/or ip6tables
SVN-Revision: 21508
2010-05-19 21:35:23 +00:00
Jo-Philipp Wich
c6fdffd932 firewall (#7355) - partially revert r21486, start firewall on init again - skip iface hotplug events if base fw is not up yet - get ifname and up state with uci_get_state() in iface setup since the values gathered by scan_interfaces() may be outdated when iface coldplugging happens (observed with pptp) - ignore up state when bringing down interfaces because ifdown reverts state vars before dispatching the iface event - bump package revision
SVN-Revision: 21502
2010-05-19 00:50:14 +00:00
Jo-Philipp Wich
de15765a37 firewall: - defer firewall start until the first interface is brought up by hotplug, fixes race conditions on slow devices - create a file lock during firewall start and wait for it in hotplug events, prevents race conditions between start and addif - start firewall actions in background from hotplug handler since the firewall itself fires further hotplug events which results in a deadlock if not forked off - get loaded state direcly from the uci binary since updated value is not recognized by config_get after uci_set_state - bump package revision to r2
SVN-Revision: 21486
2010-05-17 12:47:14 +00:00