summaryrefslogtreecommitdiff
path: root/sbin/ipf/ipf.8
blob: 7e45deb66a1d224751ef904e2c61e0db077b0d03 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
.\"	$OpenBSD: ipf.8,v 1.3 1999/02/10 22:12:52 deraadt Exp $
.Dd February 6, 1999
.Dt IPF 1
.Os
.Sh NAME
.Nm ipf
.Nd alters packet filtering lists for IP packet input and output
.Sh SYNOPSIS
.Nm ipf
.Op Fl AdDEInorsUvyzZ
.Op Fl l Ar block|pass|nomatch
.Op Fl F Ar i|o|a|s|S
.Fl f Ar filename
.Op Fl f Ar filename ...
.Sh DESCRIPTION
.Pp
.Nm
opens the filenames listed (treating "\-" as stdin) and parses the
file for a set of rules which are to be added or removed from the packet
filter rule set.
.Pp
Each rule processed by
.Nm
is added to the kernel's internal lists if there are no parsing problems.
Rules are added to the end of the internal lists, matching the order in
which they appear when given to
.Nm ipf .
.Sh OPTIONS
.Bl -tag -width Ds
.It Fl A
Set the list to make changes to the active list (default).
.It Fl d
Turn debug mode on.  Causes a hexdump of filter rules to be generated as
it processes each one.
.It Fl D
Disable the filter (if enabled).  Not effective for loadable kernel versions.
.It Fl E
Enable the filter (if disabled).  Not effective for loadable kernel versions.
.It Fl F Ar i|o|a
This option specifies which filter list to flush.  The parameter should
either be "i" (input), "o" (output) or "a" (remove all filter rules).
Either a single letter or an entire word starting with the appropriate
letter maybe used.  This option maybe before, or after, any other with
the order on the command line being that used to execute options.
.It Fl F Ar s|S
To flush entries from the state table, the
.Fl -F
option is used in
conjunction with either "s" (removes state information about any non-fully
established connections) or "S" (deletes the entire state table).  Only
one of the two options may be given.  A fully established connection
will show up in
.Li ipfstat -s
output as 4/4, with deviations either way indicating it is not
fully established any more.
.It Fl f Ar filename
This option specifies which files
.Nm
should use to get input from for modifying the packet filter rule lists.
.It Fl I
Set the list to make changes to the inactive list.
.It Fl l Ar pass|block|nomatch
Use of the
.Fl l
flag toggles default logging of packets.  Valid arguments to this option are
.Ar pass ,
.Ar block
and
.Ar nomatch .
When an option is set, any packet which exits filtering and matches the
set category is logged.  This is most useful for causing all packets
which don't match any of the loaded rules to be logged.
.It Fl n
This flag (no-change) prevents
.Nm
from actually making any ioctl calls or doing anything which would
alter the currently running kernel.
.It Fl o
Force rules by default to be added/deleted to/from the output list, rather
than the (default) input list.
.It Fl r
Remove matching filter rules rather than add them to the internal lists
.It Fl s
Swap the active filter list in use to be the "other" one.
.It Fl U
(SOLARIS 2 ONLY) Block packets traveling along the data stream which aren't
recognized as IP packets.  They will be printed out on the console.
.It Fl v
Turn verbose mode on.  Displays information relating to rule processing.
.It Fl y
Manually resync the in-kernel interface list maintained by IP Filter with
the current interface status list.
.It Fl z
For each rule in the input file, reset the statistics for it to zero and
display the statistics prior to them being zeroed.
.It Fl Z
Zero global statistics held in the kernel for filtering only (this doesn't
affect fragment or state statistics).
.Sh FILES
.Bl -tag -width /usr/share/ipf -compact
.It Pa /usr/share/ipf
Location of sample configuration files
.It Pa /dev/ipauth
Name of the 
.Nm
auth socket
.It Pa /dev/ipl
Name of the 
.Nm
logging socket
.It Pa /dev/ipstate
Name of the 
.Nm
state socket
.Sh SEE ALSO
.Xr ipftest 1 ,
.Xr ipnat 8 ,
.Xr ipf 4 ,
.Xr ipl 4 ,
.Xr ipnat 4 ,
.Xr ipf 5 ,
.Xr ipfstat 8 ,
.Xr ipmon 8
.br
http://coombs.anu.edu.au/ipfilter/
.Sh DIAGNOSTICS
Needs to be run as root for the packet filtering lists to actually
be affected inside the kernel.
.Sh BUGS
If you find any, please send email to me at darrenr@pobox.com.