.TH uif 8 "Apr 19th, 2022" "Version 1.99.0" "Universal Internet Firewall" .SH NAME uif \- Universal Internet Firewall .SH SYNOPSIS 'nh .fi .ad l \fBuif\fR \kx .if (\nx>(\n(.l/2)) .nr x (\n(.l/5) 'in \n(.iu+\nxu [-c \fI\fR] [-n] [-p [-l]] [\fI-6\fR] 'in \n(.iu-\nxu \fBuif\fR \kx .if (\nx>(\n(.l/2)) .nr x (\n(.l/5) 'in \n(.iu+\nxu -d [\fI-6\fR] 'in \n(.iu-\nxu \fBuif\fR \kx .if (\nx>(\n(.l/2)) .nr x (\n(.l/5) 'in \n(.iu+\nxu [] 'in \n(.iu-\nxu .ad b 'hy .SH DESCRIPTION .PP This manual page documents the \fBuif\fR command. It is used to generate optimized .BR nft (8) or .BR iptables (8) packetfilter rules, using a simple description file specified by the user. Generated rules are provided in .BR nft (8) (with option \fI-f \fR) or .BR iptables\-save 8 style. \fBuif\fR can be used to read or write rulesets from or to LDAP servers in your network, which provides a global storing mechanism (LDAP support hasn't been tested for a long time). Note that you need to include the \fIuif.schema\fR to your slapd configuration in order to use it. .PP .BR uif.conf (5) provides an easy way to specify rules, without exact knowledge of the nft / iptables syntax. It provides groups and aliases to make your packetfilter human readable. .PP Keep in mind that \fBuif\fR uif is intended to assist you when designing firewalls, but will not tell you what to filter. .SH OPTIONS The options are as follows: .TP \fI\-6\fR Turn on IPv6 mode so as to manipulate IPv6 rules. Default configuration file is changed to /etc/uif/uif6.conf see \-c below. It should be noted that nat rules are silently ignored if \-6 is used. .TP \fI\-b \fR Specify the base DN to act on when using LDAP based firewall configuration. \fBuif\fR will look in the subtree ou=filter,ou=sysconfig, for your rulesets. .TP \fI\-c \fR This option specifies the configuration file to be read by \fBuif\fR\. See .BR uif.conf (5) for detailed information on the fileformat. It defaults to /etc/uif/uif.conf. .TP \fI\-C \fR When reading configuration data from other sources than specified with \-c you may want to convert this information into a textual configuration file. This options writes the parsed config back to the file specified by . .TP \fI\-d\fR Clears all firewall rules immediately. .TP \fI\-D \fR If a special account is needed to bind to the LDAP database, the account's DN can be specified at this point. Note: you should use this when writing an existing configuration to the LDAP. Reading the configuration may be done with an anonymous bind. .TP \fI\-p\fR Prints rules specified in the configuration to stdout. This option is mainly used for debugging the rule simplifier. .TP \fI\-l\fR If printing rules (see \-p) prepend line numbers to the print-out. .TP \fI\-r \fR Specifies the name of the ruleset to load from the LDAP database. Remember to use the \-b option to set the base. Rulesets are stored using the following dn: \fIcn=, ou=rulesets, ou=filter, ou=sysconfig, basedn\fR, where will be replaced by the ruleset specified. .TP \fI\-R \fR Specifies the name of the ruleset to write to the LDAP database. This option can be used to convert i.e. a textual configuration to an LDAP based ruleset. Like with using \-r you've to specify the LDAP base to use. Target is \fIcn=, ou=rulesets, ou=filter, ou=sysconfig, \fR, where will be replaced by the ruleset specified. .TP \fI\-s \fR This option specifies the LDAP server to be used. .TP \fI\-t\fR This option is used to validate the packetfilter configuration without applying any rules. Mainly used for debugging. .TP \fI\-T