Outils pour utilisateurs

Outils du site


Panneau latéral

Traductions de cette page:

Avez-vous remarqué ?

Il n'y a aucune publicités ou scripts de profilage (tracker) sur ce site.

Ce n'est que grâce à votre aide que l'auteur peut financer l'hébergement et le temps consacré à cet ouvrage.

Si vous voulez l'encourager, vous pouvez faire un don ♥. (même un tout petit ;-))

À propos

Cet ouvrage est publié sous licence CC-BY-SA à l'aide de dokuwiki. Il a été écrit par un libriste curieux (et des contributeurs) qui s'est dit “si moi j'y arrive, pourquoi pas les autres?”. Merci de prévenir si vous partager ce texte ailleurs, juste pour information ;).

Si vous trouvez une erreur, souhaitez contribuer ou avez besoin d'aide, n'hésitez pas à contacter l'auteur.

Créer un livre

 N'hésitez pas à vous servir du bouton “Ajouter au livre” à droite afin de préparer une version imprimable de cette documentation.

12-examples:pfconf

/etc/pf.conf

# See pf.conf(5) and /etc/examples/pf.conf
## Configuration générale ##
http_ports = "{ www https }            # ports http(s)
mail_ports = "{ submission imaps }"    # ports mails 
tcp_pass = "{ domain }"                # ports tcp ouverts
udp_pass = "{ domain }"                # ports udp ouverts
set block-policy drop                  # bloque silencieusement
set skip on lo                         # Pas de filtre en local
set limit table-entries 400000   
set limit states 100000

## tables pour les vilains bruteforceurs
table <bruteforce> persist
table <vilain_bruteforce> persist

# antispam avec greylisting
table <nospamd> persist file "/etc/mail/nospamd"
table <spamd-white> persist
table <bgp-spamd-bypass> persist

# table blockzone
table <t_badips> persist file "/var/blockzones/badips_ipv4"
table <t_badips6> persist file "/var/blockzones/badips_ipv6"
table <t_bogons> persist file "/var/blockzones/bogons_ipv4"
table <t_bogons6> persist file "/var/blockzones/bogons_ipv6"

## Traitement des paquets ##
# Paquets partiels
match all scrub (max-mss 1440 no-df random-id reassemble tcp)
antispoof quick for egress         # Protection vol d'ip
antispoof quick for lo0            # Protection vol d'ip


# Pour relayd
anchor "relayd/*"

## Les règles pour pf ##
# on bloque tout par défaut 
# puis on continue de lire la suite
block 

# on bloque les ip blacklistées	pour de bon (quick)
# on ajoute un label pour se repérer dans les [logs :10-tips:logs]
block log quick from <bruteforce> label "brutes"
block log quick from <vilain_bruteforce>  label "vilain"

# blocage des blockzones
block log quick from { <t_bogons>, <t_bogons6> } label "bogons" 
block log quick from { <t_badips>, <t_badips6>} label "badips"

# NFS local
pass in quick on egress from 192.168.1.0/24

## Anti bruteforce
### SSH
#### Limit 15 connexions par IP source
#### Limit 15 tentatives de connexion toutes les 5 minutes
pass in on egress proto tcp to port ssh modulate state \
	(max-src-conn 15, max-src-conn-rate 15/5, overload <bruteforce> flush global)

# web, avec redirection vers relayd
pass in on egress proto tcp to port www modulate state \
    (max-src-conn 100, max-src-conn-rate 25/60, overload <bruteforce> flush global) \
    divert-to 127.0.0.1 port 8080
pass in on egress proto tcp to port https modulate state \
    (max-src-conn 100, max-src-conn-rate 25/60, overload <bruteforce> flush global) \
    divert-to 127.0.0.1 port 8443

# mails
## antispam
pass in on egress proto tcp to port $mail_ports modulate state \
	(max-src-conn-rate 10/5, overload <bruteforce> flush global) \
	divert-to 127.0.0.1 port spamd
pass in on egress proto tcp from <nospamd> to any port smtp
pass in log on egress proto tcp from <spamd-white> to any port smtp
pass in quick on egress proto tcp from <bgp-spamd-bypass> to port smtp
pass out log on egress proto tcp to any port smtp

# on autorise le ping
pass quick inet6 proto ipv6-icmp all 
pass quick inet proto icmp all 

# on ouvre les autres ports
pass in quick on egress proto tcp to port $tcp_pass modulate state
pass in quick on egress proto udp to port $udp_pass 

# tout ouvert en sortie
pass out on egress proto { tcp udp icmp icmp6 } all modulate state 

Contribu(trices|teurs) :

prx
12-examples/pfconf.txt · Dernière modification: 2019/11/29 09:18 de prx