blob: 22327c79fb5dc2c273505a5cb8b453f7fb027ed4 (
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
|
# $OpenBSD: pf.conf,v 1.8 2002/11/24 19:56:45 pb Exp $
#
# See pf.conf(5) for syntax and examples
# General order: options, scrub rules, NAT/rdr, and filter rules.
# Note that NAT is first match while packet filters are last match,
#
ext_if="ext0" # replace with actual external interface name i.e., dc0
internal_net="10.1.1.1/8"
external_addr="192.168.1.1"
# Normalize: reassemble fragments and resolve or reduce traffic ambiguities
# scrub in all
# nat: packets going out through $ext_if with source address $internal_net will get
# translated as coming from $external_addr, a state is created for such packets,
# and incoming packets will be redirected to the internal address.
# nat on $ext_if from $internal_net to any -> $external_addr
# rdr: packets coming in on $ext_if with destination $external_addr:1234 will
# be redirected to 10.1.1.1:5678. A state is created for such packets, and
# outgoing packets will be translated as coming from the external address.
# rdr on $ext_if proto tcp from any to $external_addr/32 port 1234 -> 10.1.1.1 port 5678
# filter rules
# the implicit first two rules are
# pass in all
# pass out all
# block all incoming packets but allow ssh, pass all outgoing tcp and udp
# connections and keep state
# log blocked packets
# block in log all
# pass in on $ext_if proto tcp from any to $ext_if port 22 keep state
# pass out on $ext_if proto { tcp, udp } all keep state
|