PF redirection port 80 vers autre serveur

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

PF redirection port 80 vers autre serveur

Ghislain FOURNIER
Bonjour,



J'ai 2 serveurs dont un sous OpenBSD qui me sers de FW mais avec une seul interface réseau.

J'ai configurer ma box pour que tous les connexions http, https, ssh, etc, passe par mon FW.

Je souhaite uniquement rediriger les connexions 80 et 443 vers mon serveur web.

Je souhaite aussi bloquer les adresses pour éviter le DOS, et autres attaques de mon serveur.

J'ai constaté aussi que mon serveur sous Ubuntu, envoyait des connexions http vers des servers de chine et autre pays.



Mon FW a l'adresse 192.168.0.2

Mon Serveur http 192.168.0.1



J'ai tout essayer, mais mes compétences ont des limites, et surtout je voudrai comprendre.



Merci d'avance






----------


##############################################################################

## Regle de filtrage et de routage packefilter by fg. ##

## Date : 20-05-2010. ##

##############################################################################

#

# [ FREEBOX ]

# | |

# [FW] [Server]

#

# Macros:

ext_if = "fxp0" # replace with actual external interface name i.e., dc0

lo = "lo0" # Carte Local Loopback



ext_net="192.168.0.2"

local_net = "192.168.0.0/24"



# Hosts

adress_public = "xx.xx.xx.xx"

localhost = "192.168.0.2"

server = "192.168.0.1"



# Services visible from the outside . remove any you're not using

tcp_services = "{ domain, ntp}"

tcp_redir = "{ http, https}"

udp_services = "{ domain, ntp }"

icmp_types = "{ echoreq, unreach, 8, 11 }"



# Non-routable IP numbers

nonroutable = "{ 127.0.0.0/8, 0.0.0.0/8,255.255.255.255/32 }"



# Tables:

table  persist {10.0.0.10/8, 172.16.0.0/16, 192.168.0.0/24}

table  persist file "/etc/spammers"

table  persist file "/etc/ssh-bruteforce"

table  persist file "/etc/ftp-bruteforce"

table  persist file "/etc/www-abuse"



# Options:

set block-policy return

set loginterface $ext_if

set skip on $lo

reassemble tcp



# Normalization:

match in all scrub (no-df max-mss 1440)



## NAT and RDR start



# Translation:



# rdr:

rdr pass on $ext_if proto tcp to port $tcp_redir -> $server port $tcp_redir



# anti spoof

antispoof quick for { $lo $ext_if }



# Filtering:

block in all

block in inet6

pass out keep state



# Blocage via Tables

block in on $ext_if from  to any

block in on $ext_if from  to any

block in on $ext_if from



pass in quick on $ext_if inet proto tcp from any to any port ssh flags S/SA keep state ( max-src-conn-rate 2/10, overload  flush global)

pass in quick on $ext_if inet proto tcp from any to $server port http flags S/SA keep state (max-src-conn-rate 20/5, overload  flush)



pass in on $ext_if inet proto tcp from any to ($ext_if) port $tcp_services flags S/SA keep state

pass out on $ext_if proto udp to any port $udp_services



pass in inet proto icmp all icmp-type $icmp_types keep state



---------------------

merci d'avance de votre aide

________________________________
French OpenBSD mailing list
[hidden email]
http://www.openbsd-france.org/communaute.php