openbsd, pf (désolé de vous embeter)

openbsd, pf (désolé de vous embeter) - réseaux et sécurité - Linux et OS Alternatifs

Marsh Posté le 03-06-2004 à 19:51:39    

Je  demande un petit peu d'aide, avec pf je ne comprends pas.
 
J'ai le réseau suivant
                                                           réseau du lycée
                                                                  |                
                                                                  |
serveurs (squid, dns, ldap, ...) ---------- openbsd ------------- CLIENT 1
                                                                     \--------------- CLIENT 2
 
Mon problème est le suivant :  
1/lorsque je bloque par defaut, nat "non-activé", et authorise certaines choses, les clients ne peuvent pas communiquer avec les serveurs. Sur les clients j'ai le message d'erreur  no route to host
2/lorsque le laisse tout passer les serveurs peuvent communiquer avec les serveurs (je suppose que la table de routage est donc correct)
3/lorsque je bloque par defaut, acvtive le nat, et authorise certaines choses, les clients peuvent communiquer avec les serveurs
 
 
Je ne comprend pas pourquoi j'ai no route to host, j'ai surement du oublier qq chose mais je cherche dans la doc et je ne trouve pas :(
 
et voila le firewall :
 
 

Code :
  1. #interfaces
  2. loop= "lo0"
  3. net_if= "de0"
  4. lan_if= "vr0"
  5. dmz_if= "vr1"
  6. #network
  7. lan= "192.168.1.0/24"
  8. dmz= "192.168.0.0/24"
  9. #machine
  10. proxy= "192.168.0.6"
  11. #comportement par defaut
  12. set block-policy drop
  13. #normalisation des paquets
  14. scrub in all
  15. #definition des ports
  16. tcp_dmz_net = "{ 80, 443 }"
  17. #udp_dmz_net = "{ 53 }"
  18. tcp_lan_dmz = "{ 3128, 22, 5432, 389, 923, 2049, 111 }"
  19. udp_lan_dmz = "{ 53, 111, 2049, 923 }"
  20. #adresse non routable
  21. #NO_route= "{ 127.0.0.1/8, 192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8, 255.255.255.255/32 }"
  22. NO_route= "{ 127.0.0.1/8, 172.16.0.0/12, 10.0.0.0/8 }"
  23. #-------------NAT aka TRANSLATION --------------------#
  24. #du proxy vers internet
  25. nat on $net_if from $proxy to any -> $net_if
  26. #des clients vers les serveurs/dmz
  27. #nat on $dmz_if from $lan to $dmz -> $dmz_if
  28. #des serveurs ver le lan
  29. #nat on $lan_if from $dmz to $lan -> $lan_if
  30. #-------------REGLE DE FILTRAGE-----------------#
  31. #pass all
  32. block all
  33. #Antispoof
  34. #antispoof for $loop inet
  35. #antispoof for $net_if inet
  36. #Accepte pour le loop
  37. pass in quick on $loop all
  38. pass out quick on $loop all
  39. #Bloque les scans nmap et les tentatives de prise d'empreinte de la pile tcp/ip
  40. block in log quick on $net_if inet proto tcp from any to any flags FUP/FUP
  41. block in log quick on $net_if inet proto tcp from any to any flags SF/SFRA
  42. block in log quick on $net_if inet proto tcp from any to any flags/SFRA
  43. #On bloque les adresses non routables
  44. block in log quick on $net_if from $NO_route to any
  45. block out log quick on $net_if from any to $NO_route
  46. #--------------LOCAL --------------------------#
  47. #Accepte les connections ssh sur lan_if et dmz_if
  48. pass in log quick on $lan_if inet proto tcp from $lan to $lan_if port 22 modulate state
  49. pass in log quick on $dmz_if inet proto tcp from $dmz to $dmz_if port 22 modulate state
  50. #----------- PROXY vers exterieur ----------------#
  51. #TCP tcp_dmz_net
  52. pass in quick on $dmz_if inet proto tcp from $proxy to any port $tcp_dmz_net modulate state
  53. pass out quick on $net_if inet proto tcp from $net_if to any port $tcp_dmz_net modulate state
  54. #UDP udp_dmz_net DNS
  55. pass in quick on $dmz_if inet proto udp from $proxy to any port 53 keep state
  56. pass out quick on $net_if inet proto udp from $net_if to any port 53 keep state
  57. #FTP
  58. pass in quick on $dmz_if inet proto tcp from $proxy to any port 21 modulate state
  59. pass in quick on $dmz_if inet proto tcp from $proxy to any port >1024 modulate state
  60. pass out quick on $net_if inet proto tcp from $net_if to any port 21 modulate state
  61. pass out quick on $net_if inet proto tcp from $net_if to any port >1024 modulate state
  62. #ICMP
  63. pass in quick on $dmz_if inet proto icmp from $proxy to any icmp-type 8 code 0 keep state
  64. pass out quick on $net_if inet proto icmp from $net_if to any icmp-type 8 code 0 keep state
  65. pass in quick on $dmz_if inet proto icmp from $proxy to any icmp-type 11 keep state
  66. pass out quick on $net_if inet proto icmp from $net_if to any icmp-type 11 keep state
  67. #------------ LAN VERS DMZ ---------------------#
  68. #TCP tcp_lan_dmz
  69. pass in quick on $lan_if inet proto tcp from $lan to $dmz port $tcp_lan_dmz modulate state
  70. pass out quick on $dmz_if inet proto tcp from $dmz_if to $dmz port $tcp_lan_dmz modulate state
  71. #ICMP
  72. pass in quick on $lan_if inet proto icmp from $lan to $dmz icmp-type 8 code 0 keep state
  73. pass out quick on $dmz_if inet proto icmp from $dmz_if to $dmz icmp-type 8 code 0 keep state
  74. pass in quick on $lan_if inet proto icmp from $lan to $dmz icmp-type 11 keep state
  75. pass out quick on $dmz_if inet proto icmp from $dmz_if to $dmz icmp-type 11 keep state
  76. #UDP DNS
  77. pass in quick on $lan_if inet proto udp from $lan to $proxy port $udp_lan_dmz keep state
  78. pass out quick on $dmz_if inet proto udp from $dmz_if to $proxy port $udp_lan_dmz keep state
  79. # ------------ DMZ vers LAN ------------------#
  80. #ICMP
  81. pass in quick on $dmz_if inet proto icmp from $dmz to $lan icmp-type 8 code 0 keep state
  82. pass out quick on $lan_if inet proto icmp from $lan_if to $lan icmp-type 8 code 0 keep state
  83. pass in quick on $dmz_if inet proto icmp from $dmz to $lan icmp-type 11 keep state
  84. pass out quick on $lan_if inet proto icmp from $lan_if to $lan icmp-type 11 keep state
  85. #SSH
  86. pass in quick on $dmz_if inet proto tcp from $dmz to $lan port 22 modulate state
  87. pass out quick on $lan_if inet proto tcp from $lan_if to $lan port 22 modulate state
  88. #----------------- DHCRELAY ------------------#
  89. pass in quick on $lan_if inet proto udp from 0.0.0.0 port 68 to 255.255.255.255 port 67 keep state
  90. #pass out quick on $lan_if inet proto udp from $lan_if port 67 to any port 68
  91. #pass in quick on $dmz_if inet proto udp from 192.168.0.6 to $dmz_if port 67
  92. pass out quick on $dmz_if inet proto udp from $dmz_if port 67 to 192.168.0.6 port 67 keep state


 
merci d'avance

Reply

Marsh Posté le 03-06-2004 à 19:51:39   

Reply

Marsh Posté le 03-06-2004 à 20:24:38    

Les règles LAN vers DMZ sont pas bonnes. C'est pour ça que ça ne fonctionne que si le NAT est activé.
Exemple pour le TCP:
 
pass in quick on $lan_if inet proto tcp from $lan to $dmz port $tcp_lan_dmz modulate state
pass out quick on $dmz_if inet proto tcp from $dmz_if to $dmz port $tcp_lan_dmz modulate state
 
Remplace $dmz_if par $lan et ça devrait mieux fonctionner (même chose pour les autres protocoles)

Reply

Marsh Posté le 03-06-2004 à 21:51:30    

rahhh, merci, j'essaye ca demain :)
le nat transforme l'adresse source en dmz_if (enfin son ip) ca doit être pour ca je suppose ?

Reply

Marsh Posté le 03-06-2004 à 21:55:59    

GUG a écrit :

rahhh, merci, j'essaye ca demain :)
le nat transforme l'adresse source en dmz_if (enfin son ip) ca doit être pour ca je suppose ?


 
Yep, exactement.

Reply

Marsh Posté le 04-06-2004 à 23:50:54    

ca marche merci :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed