1
0
mirror of https://github.com/fwbuilder/fwbuilder synced 2026-05-02 23:27:30 +02:00

98 Commits

Author SHA1 Message Date
Vadim Kurland
531c5a83fe PolicyCompiler_pf_writers.cpp (processNext): see #2549 "Update
generated route-to configuration for PF versions 4.7 and later",
SF bug 3348931. The "route-to" parameter moved to the end of
pass rules in PF 4.7
2011-07-05 14:00:35 -07:00
Vadim Kurland
344a22feed see #2524 'avoid " {tcp udp icmp} " in place of protocol'. NAT
compiler for PF does not need to generate protocol match "proto {tcp
udp icmp}" when service object used in the NAT rule is "any". The
reason this was done this way is lost in the mist of time; it's been
like this since very early versions of fwbuilder.
2011-06-22 11:03:07 -07:00
Vadim Kurland
33259ebf81 see #2460 added test for the nat rule with multiple objects in TDst; looks like it works 2011-06-03 19:10:40 -07:00
Vadim Kurland
6a9fdbf3af NATCompiler_pf.cpp (_expand_addr): see #2455 NAT Compiler for PF
should use "(interface)" syntax to the right of "->" in NAT rules.
This now works for all interfaces, including those that have ip
addresses in fwbuilder configuration, when interface object appears in
"Translated Source" in a nat rule. When firewall object appears in
"Translated Source", it gets replaced with a set of its interfaces
which also get translated into "-> (interface)".
2011-06-03 18:59:44 -07:00
Vadim Kurland
15bab71f49 * NATCompiler_ipt.cpp (compile): see #2456 Added support for
single object negation in "Inbound Interface" and "Outbound
Interface" columns in compiler for iptables.

* NATCompiler_pf.cpp (compile): see #2456 Added support for single
object negation in "Interface" rule element of PF NAT rules. Now
compiler can produce PF commands such as "nat on ! em0 ... " (for
PF <4.7) or "match on ! em0 ..." (for PF >= 4.7)

* Compiler.cpp (singleObjectNegation::processNext): moved rule
processor that processes single object negation in any rule
element to the base class Compiler.
2011-06-03 17:54:14 -07:00
Vadim Kurland
a544492ced see #2434 "PF compiler should use 'self' keyword where
appropriate". Compiler for PF now uses keyword 'self' in rules
where firewall object is used in Source or Destination.
2011-05-26 14:13:26 -07:00
Vadim Kurland
7ef3e583e5 see #2367 added test cases for options tag, classify and route and combinations - test object firewall111 2011-05-10 14:57:12 -07:00
Vadim Kurland
61929176e1 see #2367 no need to split iptables rules with option route because it is terminating by default; checking platform in xslt transformation to dtd21 to correctly set action 2011-05-06 18:11:52 -07:00
Vadim Kurland
1c5fbb98a5 fixed xslt script dtd20 -> dtd21 to handle pf_classify_terminating properly 2011-05-06 15:10:48 -07:00
Vadim Kurland
8773642198 see #2367 merge from development 2011-05-05 19:16:47 -07:00
Vadim Kurland
e24a73a560 see #2385 "PF action Classify uses
wrong parameter". This change fixes a bug introduced in 4.2.0
that affects rules with action Classify in PF firewalls.
2011-05-05 18:50:32 -07:00
Vadim Kurland
7232a2195b see #2385 bumped XML DTD version to 21 to make room for the transformation to fix bug #2385. That will be done in branch development 2011-05-05 12:01:18 -07:00
Vadim Kurland
c096684c20 see #2367 merged latest changes from development branch; this merged transformation for v18->v19 XML file upgrades; upgraded test files for PF 2011-05-04 16:44:08 -07:00
Vadim Kurland
faece9e40c see #2097 more test cases with negation and vlan interfaces 2011-02-17 18:39:17 -08:00
Vadim Kurland
100dca74bb * NATCompiler_pf.cpp (processNext): see #133. MErged code from the
branch, running tests. Making sure rules that have firewall
object in ODst and interface columnblank end up with rdr command
without "on interface" clause as before.
2011-02-17 11:50:14 -08:00
Vadim Kurland
8b158c0a74 * OSConfigurator_bsd_interfaces.cpp (configureInterfaces): make
sure we print "ifconfig" commands for mtu and other parameters for
all interfaces, including those with no ip addresses and bridge
ports (unnumbered interfaces used to be skipped before)
2011-02-16 16:23:54 -08:00
Vadim Kurland
8de52b3f06 fixes #2093 build failed because function QStringList::removeDuplicates() is only available in Qt 4.5 2011-02-16 15:49:02 -08:00
Vadim Kurland
a58445ed16 see #1807, #2104 arrange interface configuration commands in the
generated scritpt in such order that bridge and carp interfaces
are configured after all other interfaces are done.
2011-02-16 14:42:06 -08:00
Vadim Kurland
9ae36f6632 see #2103 added checkbox to disable interface name validation checks and autoconfiguration of vlan interface IDs 2011-02-16 13:27:38 -08:00
Vadim Kurland
bee424b3d0 fixes #2091 ethernet intrface options a used twice if the interface is a bridge port 2011-02-14 16:08:54 -08:00
Vadim Kurland
ec5bb2290d fixes #2092 parameter "stp" is now optional and is controlled by a checkbox in the interface settings dialog 2011-02-14 15:53:55 -08:00
Vadim Kurland
143594ddc7 see 2058 fixed mtu configuration commands generated for FreeBSD in shell script mode 2011-02-14 10:44:04 -08:00
Vadim Kurland
7de1edab4b see #1867 Since action Tag is non-terminating, rules with
this action should not shadow other rules.
2011-02-13 18:03:12 -08:00
Vadim Kurland
383d9e41d9 see #2069 PF: allow multiple objects in ODst of redirecting nat rule 2011-02-10 11:25:52 -08:00
Vadim Kurland
1460fef57f fixes #2042 add configlet and shell functions to manage bridge interfaces via shell script on OpenBSD and FreeBSD 2011-02-08 14:10:33 -08:00
Vadim Kurland
78bb5a5ba7 fixes #2054 add support for load anchor command 2011-02-08 11:22:39 -08:00
Vadim Kurland
bef9936ed5 making lists of interface configuration commands come out in a stable order, sorted by interface name; added test cases for vlan interfaces in shell and rc.conf formats; added vlan interfaces to cloned_interfaces line 2011-02-07 15:00:36 -08:00
Vadim Kurland
242f0724c8 output ifconfig or update_addresses_of_interface lines in a stable order, sorted by interface name 2011-02-06 14:55:56 -08:00
Vadim Kurland
ceb6fc8865 fixes #2031 FreeBSD - firewall script command to delete existing routes fails 2011-02-04 16:32:08 -08:00
Vadim Kurland
e7083f157c fixes #2026 Compiler can now generate static routing configuration
in rc.conf format for FreeBSD.
2011-02-03 16:46:46 -08:00
Vadim Kurland
8fbb48b280 fixes #2021 since rc.conf format is only supported for FreeBSD, the option in the dialog should not be available for other OS 2011-02-03 16:06:13 -08:00
Vadim Kurland
39eaf40722 see #1888, #2020, #2018 rc.conf format of the init script for PF on FreeBSD, includes inetrfaes. addresses, CARP, pfsync and pf initialization 2011-02-02 17:45:36 -08:00
Vadim Kurland
dd86fcc5e2 see #1890 "Add
support for configuring static routes on BSD". Implemented support
for simple static routing rules. ECMP and routing via interface
(routing to directly reachable subnets) are not
supported. Generated script preserves static routing entries that
existed before and attempts to recover in case of error. Needs
testing.
2011-01-31 18:29:20 -08:00
Vadim Kurland
02ce7747b6 test case for redirection rule for PF 2011-01-20 08:59:36 -08:00
Vadim Kurland
9475e71877 need to escape file name and path if it has spaces 2010-10-07 01:14:01 +00:00
Vadim Kurland
8a4fb97afe upgraded test data files for 4.1 2010-07-20 23:45:05 +00:00
Vadim Kurland
e75d3ccdb0 minor updates in test data files after they were loaded in the latest version of the gui 2010-07-15 17:09:55 +00:00
Vadim Kurland
fdb388659d * NATCompiler_pf_writers.cpp (PrintRule::processNext): fixes #1401
nat rules syntax has changed in OpenBSD 4.7. Nat and rdr rules in
4.7 should be implemented using action "match" and keywords
"nat-to" and "rdr-to"

* PolicyCompiler_pf_writers.cpp (PrintRule::_printAction):
fixes #1414: use "match" action for tagging. Policy rules
with action Tag should use pf action "match" instead of "pass"
if version is 4.6 or later.
2010-04-23 04:10:59 +00:00
Vadim Kurland
b5a794d1f1 * platforms.cpp (isDefaultPolicyRuleOptions): fixed #1365 "missing
some flags for the "non-default" rule options for PF"

* FWObjectPropertiesFactory.cpp (FWObjectPropertiesFactory::getPolicyRuleOptions):
fixed #1364 "add synproxy and other missing pf rule options to the
rule options tooltip"
2010-03-27 17:25:05 +00:00
Vadim Kurland
816dac9402 fixed #1297 "change in scrub rules in PF 4.6". PF 4.6 stopped
support for several reassemble options except for "reassemble tcp"
and changed format for the "scrub" rules.
2010-03-05 02:05:28 +00:00
Vadim Kurland
81ee822cd3 * OSConfigurator_bsd.cpp (OSConfigurator_bsd::configureInterfaces):
New feature: incremental VLAN interface management for OpenBSD and
FreeBSD. When user adds or removes VLAN subinterface in fwbuilder
GUI, geenrated script executes appropriate ifconfig commands to
add or remove corresponding vlan pseudo-interface on the firewall
machine.
2010-02-14 03:23:25 +00:00
Vadim Kurland
a0314a7d97 * src/pflib/PolicyCompiler_pf_writers.cpp (PrintRule::processNext):
fixes #1210 "syntax error in PF rule - "modulate state" is
required".  Per bug reported in the mailing list (and according to
the pf.conf manual), pf.conf requires "keep state", "modulate
state" or "synproxy"if any of the stateful tracking options are
used in the rule. These include "max", "no-sync", "pflow",
"sloppy", "source-track" and others.
2010-02-07 05:24:21 +00:00
Vadim Kurland
0ee88506b5 * ../src/iptlib/NATCompiler_ipt.cpp (VerifyRules2::processNext):
fixes #1109: "rules that do not pass verifyRules() checks may
cause compiler crash in test mode or gui crash in single rule
compile mode"
2010-01-20 02:55:38 +00:00
Vadim Kurland
2e27954947 * PolicyCompiler_ipt.cpp (PolicyCompiler_ipt::compile): Using rule
processor Compiler::checkForObjectsWithErrors to find objects with
errors and generate proper calls to abort(). This exposes errors
that happened when Preprocessor failed to resolve compile-time
AddressTable and DNSName objects. If compiler runs in test mode,
preprocessor did not abort but used dummy substitution addresses
and continued. Call to checkForObjectsWithErrors generates proper
error messages tied to rules. Using this rule processor in all
compilers. Fixes #1087
2010-01-16 00:26:01 +00:00
Vadim Kurland
8c84808bda 2010-01-15 vadim <vadim@vk.crocodile.org>
* CompilerDriver_ipt_run.cpp (CompilerDriver_ipt::run): Refs #869
making sure non-english comments appear correctly in the single
rule compile output and generated configuration files and scripts.
2010-01-15 20:31:33 +00:00
Vadim Kurland
836430513e * PolicyCompiler_pf_writers.cpp (PrintRule::processNext): Added
support for pf state tracking options "no-sync" and "pflow". Set
version to "4.5" or "4.6" in the firewall object to be able to use
these new options.
2010-01-14 20:07:04 +00:00
Vadim Kurland
c8f06769e1 see #1049 2010-01-06 23:56:08 +00:00
Vadim Kurland
2398f59273 fixes #1005 "Wrong optimization flag for PF" 2009-12-28 00:54:22 +00:00
Vadim Kurland
005507969c fixes #712 (ipt_mangle_only_rulesets option converted) fixes #713 2009-11-26 02:37:38 +00:00
Vadim Kurland
60c01cdd1a example for ftp-proxy rules for PF; allow objects of different types to have the same name so that we can create policy and nat rulesets with name "ftp-proxy/*" 2009-11-16 19:28:25 +00:00