Iptables Openwrt plusieur interface

Iptables Openwrt plusieur interface - réseaux et sécurité - Linux et OS Alternatifs

Marsh Posté le 23-06-2010 à 00:18:48    

Bonsoir tous le monde :D
 
Voilà passionner de réseaux je bidouille ce que je trouve mais la j'ai une grosse colle j'ai besoin de votre aide =)
 
Donc voila j'ai une Fonera que j'ai flasher sous OpenWrt sa tourne bien je suis content :)
A coté de sa, j'ai un mac mini sous debian :lol: avec dessus un openvpn super fonctionnel aucun soucis, mais en local .. =D
 
J'ai des petits soucis avec iptables de ma fonera ...
 
Voici mes interfaces :
 

Code :
  1. root@OpenWrt:~# ifconfig
  2. ath0      Link encap:Ethernet  HWaddr 00:18:84:D0:03:91
  3.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
  4.           RX packets:3307 errors:0 dropped:3307 overruns:0 frame:0
  5.           TX packets:4006 errors:0 dropped:28 overruns:0 carrier:0
  6.           collisions:0 txqueuelen:0
  7.           RX bytes:469872 (458.8 KiB)  TX bytes:1228662 (1.1 MiB)
  8. ath1      Link encap:Ethernet  HWaddr 06:18:84:D0:03:91
  9.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
  10.           RX packets:0 errors:0 dropped:0 overruns:0 frame:0
  11.           TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
  12.           collisions:0 txqueuelen:0
  13.           RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
  14. br-lan    Link encap:Ethernet  HWaddr 00:18:84:D0:03:90
  15.           inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
  16.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
  17.           RX packets:85847 errors:0 dropped:0 overruns:0 frame:0
  18.           TX packets:96636 errors:0 dropped:0 overruns:0 carrier:0
  19.           collisions:0 txqueuelen:0
  20.           RX bytes:15981523 (15.2 MiB)  TX bytes:53575039 (51.0 MiB)
  21. eth0      Link encap:Ethernet  HWaddr 00:18:84:D0:03:90
  22.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
  23.           RX packets:179203 errors:0 dropped:0 overruns:0 frame:0
  24.           TX packets:177321 errors:0 dropped:0 overruns:0 carrier:0
  25.           collisions:0 txqueuelen:1000
  26.           RX bytes:70651781 (67.3 MiB)  TX bytes:69982657 (66.7 MiB)
  27.           Interrupt:255 Base address:0x1000
  28. eth0.1    Link encap:Ethernet  HWaddr 00:18:84:D0:03:90
  29.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
  30.           RX packets:82554 errors:0 dropped:0 overruns:0 frame:0
  31.           TX packets:94920 errors:0 dropped:0 overruns:0 carrier:0
  32.           collisions:0 txqueuelen:0
  33.           RX bytes:15514646 (14.7 MiB)  TX bytes:52912628 (50.4 MiB)
  34. eth0.2    Link encap:Ethernet  HWaddr 00:18:84:D0:03:90
  35.           inet addr:82.***.***.***  Bcast:82.***.***.***  Mask:255.255.255.0
  36.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
  37.           RX packets:96608 errors:0 dropped:0 overruns:0 frame:0
  38.           TX packets:82399 errors:0 dropped:0 overruns:0 carrier:0
  39.           collisions:0 txqueuelen:0
  40.           RX bytes:52255933 (49.8 MiB)  TX bytes:16446936 (15.6 MiB)
  41. lo        Link encap:Local Loopback
  42.           inet addr:127.0.0.1  Mask:255.0.0.0
  43.           UP LOOPBACK RUNNING  MTU:16436  Metric:1
  44.           RX packets:1 errors:0 dropped:0 overruns:0 frame:0
  45.           TX packets:1 errors:0 dropped:0 overruns:0 carrier:0
  46.           collisions:0 txqueuelen:0
  47.           RX bytes:76 (76.0 B)  TX bytes:76 (76.0 B)
  48. wifi0     Link encap:UNSPEC  HWaddr 00-18-84-D0-03-91-00-00-00-00-00-00-00-00-00-00
  49.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
  50.           RX packets:3898 errors:0 dropped:0 overruns:0 frame:176
  51.           TX packets:4192 errors:32 dropped:0 overruns:0 carrier:0
  52.           collisions:0 txqueuelen:195
  53.           RX bytes:667150 (651.5 KiB)  TX bytes:1399160 (1.3 MiB)
  54.           Interrupt:3 Memory:b0000000-b000ffff


 
Et la mes iptables :
 

Code :
  1. ifwan=eth0:2
  2. iflan=eth0:1
  3. #############################################
  4. #RAZ des chaines
  5. iptables -F
  6. iptables -X
  7. iptables -F INPUT
  8. iptables -F OUTPUT
  9. iptables -F FORWARD
  10. iptables -t nat -F PREROUTING
  11. iptables -t nat -F POSTROUTING
  12. #Definition des politiques par defaut
  13. iptables -P INPUT DROP
  14. iptables -P OUTPUT DROP
  15. iptables -P FORWARD DROP
  16. iptables -t nat -P PREROUTING ACCEPT
  17. iptables -t nat -P POSTROUTING ACCEPT
  18. ################################
  19. #Activation du masquerade sur $ifwan
  20. iptables -t nat -A POSTROUTING -o $ifwan -j MASQUERADE
  21. #######################################
  22. #RAZ et creation des chaines utilisateur
  23. iptables -X log-and-drop
  24. iptables -N log-and-drop
  25. iptables -X PUB_IN
  26. iptables -N PUB_IN
  27. iptables -X LAN_IN
  28. iptables -N LAN_IN
  29. ########################################
  30. #Connexions entrantes sur la fonera, redirection en fonction de la provenance: LAN ou WAN
  31. iptables -A INPUT -i lo -j ACCEPT
  32. iptables -A INPUT -i $ifwan -j PUB_IN
  33. iptables -A INPUT -i $iflan -j LAN_IN
  34. iptables -A INPUT -j log-and-drop
  35. ########################################
  36. #Connexions sortantes de la fonera
  37. iptables -A OUTPUT -o lo -j ACCEPT
  38. #requetes DNS, raffiner en indiquant les DNS du FAI avec une option -d
  39. iptables -A OUTPUT -o $ifwan -p udp --dport 53 -j ACCEPT
  40. #requete DHCP, raffiner en INPUT avec l'adresse MAC de la freebox par exemple
  41. iptables -A OUTPUT -o $ifwan -p udp --dport 67 -j ACCEPT
  42. #connexion de la fonera vers le LAN accepté
  43. iptables -A OUTPUT -o $iflan -j ACCEPT
  44. #le reste va en log
  45. iptables -A OUTPUT -j log-and-drop
  46. ########################################
  47. #Connexions routées par la fonera
  48. ########################################
  49. #les retours de connexions établies sont acceptées
  50. iptables -A FORWARD -i $ifwan -o $iflan -m state --state ESTABLISHED,RELATED -j ACCEPT
  51. #les nouvelles connexions sont rejetées
  52. iptables -A FORWARD -i $ifwan -o $iflan -m state --state NEW -j log-and-drop
  53. #les connexions sortantes sont autorisées
  54. iptables -A FORWARD -i $iflan -o $ifwan -j ACCEPT
  55. #le reste est envoyé en log
  56. iptables -A FORWARD -j log-and-drop
  57. ###########################################
  58. #Connexion entrante sur WAN
  59. ###########################################
  60. #Seules les connexions établies sont autorisées
  61. iptables -A PUB_IN -m state --state ESTABLISHED,RELATED -j ACCEPT
  62. #reponse DHCP de la freebox, saisir l'adresse mac de celle-ci et décommenter la ligne
  63. #iptables -A PUB_IN -p udp --sport 67 -m mac --mac-source xx:xx:xx:xx:xx:xx  -j ACCEPT
  64. ######################################
  65. #Connexion entrante sur LAN
  66. ######################################
  67. #Tout est autorisé en provenance du LAN
  68. iptables -A LAN_IN -p udp --sport 68 --dport 67 -j ACCEPT
  69. iptables -A LAN_IN -j ACCEPT
  70. ######################################
  71. #chaine de logging
  72. ######################################
  73. #on logge les paquets
  74. iptables -A log-and-drop -j LOG
  75. iptables -A log-and-drop -j DROP
  76. ######################################
  77. #Activation de l'ip forwarding
  78. ######################################
  79. echo 1 > /proc/sys/net/ipv4/ip_forward


 
 
Sauf que sa marche pas =D
 
Une image pour récapituler mes interfaces
http://www.macfreek.nl/mindmaster/images/Linksys_internals.png
 
( prendre en compte que eth0,eth0.1 et 0.2 )
 
Comme c'est un bridge qui prendre en compte la wifi + ethernet et qui divise l'ethernet en eth0.1 et 0.2 je sais pas comment expliquer a iptables enfin voila ..
 
Merci de votre aide =)


Message édité par vith le 23-06-2010 à 00:19:38
Reply

Marsh Posté le 23-06-2010 à 00:18:48   

Reply

Marsh Posté le 23-06-2010 à 09:14:49    

Hum si eth0.1 est membre de br-lan c'est ce dernier que tu dois donner à iptables.
Sinon pour faire du filtrage à l'intérieur du bridge y'a ebtables.


---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 23-06-2010 à 10:08:21    

Bah j'ai mis eth0.1 et eth0.2 dans mes iptabes mais sa change rien ...

Reply

Marsh Posté le 23-06-2010 à 13:38:48    

Remplace eth0.1 par br-lan  :heink: iptables va pas marcher sur une interface sans adresses et membre d'un bridge !


---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 23-06-2010 à 21:43:45    

Déjà essayer et le même problème ..

Reply

Marsh Posté le 23-06-2010 à 21:45:04    

Et quel problème exactement ?


---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 23-06-2010 à 22:05:10    

bah j'ai plus le net, le ports ssh est fermer des trucs comme sa ..

Reply

Marsh Posté le 23-06-2010 à 22:23:07    

La sa marche j'ai bien le net mais l'ouverture des ports ne fait pas trop effet =s

Reply

Marsh Posté le 23-06-2010 à 22:44:21    

L'ouverture de ports sur la Fonera ou forwardés ?
Le mieux c'est de repartir de règles minimales et de garnir en vérifiant le fonctionnement au fur et à mesure.
 
Ah oui aussi évite de trop utiliser les "log-and-drop" sur les Fonera de premières générations (avant la Fonera 2n), c'est pas une bête de course et le logging est gourmand, quand j'ai activé le logging d'iptables pour debugger un problème sur ma FON2100 je suis passé de 1ms à 500ms de ping entre mon poste et ma Fonera  :lol: Ce serait bête qu'un simple flood de paquets rejetés provoque un DoS, le firewall est plutot là pour éviter ce genre de problèmes d'habitudes.
 
Et si ça peut t'aider voilà mes règles pour ma Fonera, j'ai un modèle 2100 comme dit plus haut avec un seul port ethernet du coup ath0 (wifi) = LAN eth0 (ethernet) = WAN, pas besoin de bridge dans cette configuration.
 
 


#############
# Variables #
#############
 
### IPv4 ###
V4_WAN_IFACE=eth0
V4_WAN_NETWORK=0.0.0.0/0
V4_WAN_IP=192.168.0.1
 
V4_LAN_IFACE=ath0
V4_LAN_NETWORK=192.168.1.0/24
V4_LAN_IP=192.168.1.254
 
V4_FROST_IP=192.168.1.1
 
#########################
# Tables initialisation #
#########################
 
### IPv4 ###
iptables -t filter -F
iptables -t filter -X
iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT DROP
iptables -t filter -P FORWARD DROP
 
iptables -t raw -F
iptables -t raw -X
iptables -t raw -P PREROUTING ACCEPT
iptables -t raw -P OUTPUT ACCEPT
 
iptables -t nat -F
iptables -t nat -X
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
 
iptables -t mangle -F
iptables -t mangle -X
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P INPUT ACCEPT
iptables -t mangle -P OUTPUT ACCEPT
iptables -t mangle -P FORWARD ACCEPT
iptables -t mangle -P POSTROUTING ACCEPT
 
###############
# Local rules #
##############
 
### IPv4 ###
# Accept all from loopback
iptables -t filter -A OUTPUT -o lo -j ACCEPT
iptables -t filter -A INPUT -i lo -j ACCEPT
 
# Anti spoofing
iptables -t filter -A INPUT -i $V4_WAN_IFACE -s $V4_LAN_NETWORK -j DROP
 
# Default wan rules
iptables -t filter -A OUTPUT -o $V4_WAN_IFACE -s $V4_WAN_IP -d $V4_WAN_NETWORK -m state ! --state INVALID -j ACCEPT
iptables -t filter -A INPUT -i $V4_WAN_IFACE -s $V4_WAN_NETWORK -d $V4_WAN_IP -m state --state ESTABLISHED,RELATED -j ACCEPT
 
# Default lan rules
iptables -t filter -A OUTPUT -o $V4_LAN_IFACE -j ACCEPT
iptables -t filter -A INPUT -i $V4_LAN_IFACE -j ACCEPT
 
# Accept pings from wan
iptables -t filter -A INPUT -i $V4_WAN_IFACE -s $V4_WAN_NETWORK -d $V4_WAN_IP -p icmp -m icmp --icmp-type echo-request -m state --state NEW -j ACCEPT
 
# Accept traceroutes
iptables -t filter -A INPUT -i $V4_WAN_IFACE -s $V4_WAN_NETWORK -d $V4_WAN_IP -p udp -m udp --dport 33434:33523 -m state --state NEW -j REJECT --reject-with icmp-port-unreachable
 
#################
# Forward rules #
#################
 
### IPv4 ###
# Anti spoofing
iptables -t filter -A FORWARD -i $V4_WAN_IFACE -s $V4_LAN_NETWORK -j DROP
 
# Default rules
iptables -t filter -A FORWARD -i $V4_LAN_IFACE -o $V4_WAN_IFACE -s $V4_LAN_NETWORK -d $V4_WAN_NETWORK -m state ! --state INVALID -j ACCEPT
iptables -t filter -A FORWARD -i $V4_WAN_IFACE -o $V4_LAN_IFACE -s $V4_WAN_NETWORK -d $V4_LAN_NETWORK -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o $V4_WAN_IFACE -s $V4_LAN_NETWORK -d $V4_WAN_NETWORK -j MASQUERADE
 
# Frost ssh
iptables -t nat -A PREROUTING -i $V4_WAN_IFACE -s $V4_WAN_NETWORK -d $V4_WAN_IP -p tcp -m tcp --dport 22 -m state --state NEW -j DNAT --to-destination $V4_FROST_IP:22
iptables -t filter -A FORWARD -i $V4_WAN_IFACE -o $V4_LAN_IFACE -s $V4_WAN_NETWORK -d $V4_FROST_IP -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT


Et aussi j'ai fait le choix de laisser toutes les connexions sortantes du routeur libres, ça me permet d'utiliser ping, traceroute & co à partir du routeur sans avoir à écrire de règles spécifiques, et de toute façon si un attaquant arrive à installer un logiciel malveillant sur le routeur ça ne lui posera pas de PB de désactiver le firewall, y'a pas de notion d'utilisateurs dans OpenWRT y'a que deux comptes (root et daemon).
 
Si tu veut protéger quelque-chose protège plutôt le routeur du LAN (ce que je ne fait pas non plus mais c'ets todo) ! C'est assez simple à mettre en place en IPv4 (en gros tu ferme en entrée tout sauf ssh, le dhcp et le dns)


---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 23-06-2010 à 23:19:41    

J'ai mis en place ton script sa marche nickel =D mais dans ce cas la du script, je pourrais dire que le port 1909 doit pointé vers 192.168.1.6 de mon local ?
 
Merci
 
 
Edit : j'ai pas compris le principe de frostip ..


Message édité par vith le 23-06-2010 à 23:38:12
Reply

Marsh Posté le 23-06-2010 à 23:19:41   

Reply

Marsh Posté le 23-06-2010 à 23:38:25    

Regarde les deux dernières lignes que j'ai mis pour la redirection de ssh, $V4_FROST_IP contient l'IP de ma machine principale (192.168.1.1), suffit juste de changer le port !


---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 23-06-2010 à 23:50:59    

Donc, cela permet une connection de l'extérieur vers le ssh, ou que en local ?

Reply

Marsh Posté le 24-06-2010 à 00:06:18    

De l'extérieur vers la machine "frost".


---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 00:08:18    

Je viens de faire un teste sa marche pas .. :s

Reply

Marsh Posté le 24-06-2010 à 00:09:19    

Tu l'a adapté comment à ta conf ?


---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 00:11:02    

Voila =)
 
 

Code :
  1. #############
  2. # Variables #
  3. #############
  4. ### IPv4 ###
  5. WAN=eth0.2
  6. WAN_net=0.0.0.0/0
  7. WAN_ip=192.168.0.1
  8. LAN=br-lan
  9. LAN_net=192.168.1.0/24
  10. LAN_ip=192.168.1.254
  11. iffrostip=192.168.1.1
  12. #########################
  13. # Tables initialisation #
  14. #########################
  15. ### IPv4 ###
  16. iptables -t filter -F
  17. iptables -t filter -X
  18. iptables -t filter -P INPUT DROP
  19. iptables -t filter -P OUTPUT DROP
  20. iptables -t filter -P FORWARD DROP
  21. iptables -t raw -F
  22. iptables -t raw -X
  23. iptables -t raw -P PREROUTING ACCEPT
  24. iptables -t raw -P OUTPUT ACCEPT
  25. iptables -t nat -F
  26. iptables -t nat -X
  27. iptables -t nat -P PREROUTING ACCEPT
  28. iptables -t nat -P POSTROUTING ACCEPT
  29. iptables -t nat -P OUTPUT ACCEPT
  30. iptables -t mangle -F
  31. iptables -t mangle -X
  32. iptables -t mangle -P PREROUTING ACCEPT
  33. iptables -t mangle -P INPUT ACCEPT
  34. iptables -t mangle -P OUTPUT ACCEPT
  35. iptables -t mangle -P FORWARD ACCEPT
  36. iptables -t mangle -P POSTROUTING ACCEPT
  37. ###############
  38. # Local rules #
  39. ##############
  40. ### IPv4 ###
  41. # Accept all from loopback
  42. iptables -t filter -A OUTPUT -o lo -j ACCEPT
  43. iptables -t filter -A INPUT -i lo -j ACCEPT
  44. # Anti spoofing
  45. iptables -t filter -A INPUT -i $WAN -s $LAN_net -j DROP
  46. # Default wan rules
  47. iptables -t filter -A OUTPUT -o $WAN -s $WAN_ip -d $WAN_net -m state ! --state INVALID -j ACCEPT
  48. iptables -t filter -A INPUT -i $WAN -s $WAN_net -d $WAN_ip -m state --state ESTABLISHED,RELATED -j ACCEPT
  49. # Default lan rules
  50. iptables -t filter -A OUTPUT -o $LAN -j ACCEPT
  51. iptables -t filter -A INPUT -i $LAN -j ACCEPT
  52. # Accept pings from wan
  53. iptables -t filter -A INPUT -i $WAN -s $WAN_net -d $WAN_ip -p icmp -m icmp --icmp-type echo-request -m state --state NEW -j ACCEPT
  54. # Accept traceroutes
  55. iptables -t filter -A INPUT -i $WAN -s $WAN_net -d $WAN_ip -p udp -m udp --dport 33434:33523 -m state --state NEW -j REJECT --reject-with icmp-port-unreachable
  56. #################
  57. # Forward rules #
  58. #################
  59. ### IPv4 ###
  60. # Anti spoofing
  61. iptables -t filter -A FORWARD -i $WAN -s $LAN_net -j DROP
  62. # Default rules
  63. iptables -t filter -A FORWARD -i $LAN -o $WAN -s $LAN_net -d $WAN_net -m state ! --state INVALID -j ACCEPT
  64. iptables -t filter -A FORWARD -i $WAN -o $LAN -s $WAN_net -d $LAN_net -m state --state ESTABLISHED,RELATED -j ACCEPT
  65. iptables -t nat -A POSTROUTING -o $WAN -s $LAN_net -d $WAN_net -j MASQUERADE
  66. # Frost ssh
  67. iptables -t nat -A PREROUTING -i $WAN -s $WAN_net -d $WAN_ip -p tcp -m tcp --dport 666 -m state --state NEW -j DNAT --to-destination $FROST_ip:666
  68. iptables -t filter -A FORWARD -i $WAN -o $LAN -s $WAN_net -d $FROST_ip -p tcp -m tcp --dport 666 -m state --state NEW -j ACCEPT
  69. echo ok c'est bon

Reply

Marsh Posté le 24-06-2010 à 00:16:43    

Normalement ça va, à part la variable "iffrostip" qui n'a pas le même nom dans les règles "-d $FROST_ip" mais je suppose que tu a corrigé sinon iptables aurait gueulé.
 
Tu utilise quoi pour tester l'ouverture du port ?
 
EDIT: je voit un autre problème, chez moi la freebox est en mode routeur donc ma fonera obtiens de la freebox une adresse locale (192.168.0.1), d'après ton ifconfig ta fonera obtiens directement l'ip publique via dhcp (82.***.***.***) faut donc adapter la variable WAN_ip en conséquence, pareil pour LAN_ip chez moi j'ai mis 192.168.1.254 mais d'après ton ifconfig toujours tu as choisi 192.168.1.1 !
 
EDIT2: Et du coup si ta Fonera c'est 192.168.1.1 ton PC ne peut avoir lui aussi cette adresse, hors dans ton script "iffrostip=192.168.1.1" alors que dans un post tu parle de 192.168.1.6


Message édité par High Plains Drifter le 24-06-2010 à 00:26:35

---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 00:18:16    

Ouep c'est fait : )
 
Bah un amis externe qui essaye de ce connecter :s

Reply

Marsh Posté le 24-06-2010 à 00:23:01    

J'ai édité mon post  :hello:


---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 00:26:57    

Pas bête j'ai fais un copier coller sans lire betement ...
 
 
Mais après le teste toujours pareil ..
 
Edit : mais alors la j'ai pas compris le principe de frost ip ?


Message édité par vith le 24-06-2010 à 00:28:14
Reply

Marsh Posté le 24-06-2010 à 00:40:04    

FROST est le nom (tiré d'une nouvelle de J. Steven York) d'une de mes machine , j'ai donc définit une variable V4_FROST_IP qui contiens l'IP de cette machine 192.168.1.1. Comme ça quand j'ai besoin de specifier l'adresse de cette machine à iptables j'utilise la variable $V4_FROST_IP qui sera pour moi plus "parlante" et si demain je change l'adresse de cette machine je n'aurait à répercuter la modification qu'a un seul endroit au lieu de faure un rechercher/remplacer dans ton le script.
 
Toi la variable portera le nom que tu veux et l'IP de la machine sera plutôt le 192.168.1.6 dont tu parle plus haut que le 192.168.1.1 qui est déjà l'adresse associée à br-lan sur ta fonera.


Message édité par High Plains Drifter le 24-06-2010 à 00:42:54

---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 00:42:24    

Mmmm d'accord je comprend mieux =D
 
Mais la si je veux donner un accès depuis l'extérieur vers mon 192.168.1.6 j'utilise sa :
 
iptables -t nat -A PREROUTING -i $WAN -s $WAN_net -d $WAN_ip -p tcp -m tcp --dport 666 -m state --state NEW -j DNAT --to-destination $FROST_ip:666
iptables -t filter -A FORWARD -i $WAN -o $LAN -s $WAN_net -d $FROST_ip -p tcp -m tcp --dport 666 -m state --state NEW -j ACCEPT
 
Mais si je veux permettre une connexion vers la fonera je met l'ip de la fonera ou j'enlève ?
 
Merci

Reply

Marsh Posté le 24-06-2010 à 00:47:27    

Si tu veut permettre la connexion à partir du net sur fonera tu travaille juste sur la chaîne INPUT comme dans mon script pour "accepter" les traceroutes, là c'est rediriger les connexions entrantes vers le port 666 sur une autre machine dans le réseau local.
 

Citation :

# Accept traceroutes
iptables -t filter -A INPUT -i $WAN -s $WAN_net -d $WAN_ip -p udp -m udp --dport 33434:33523 -m state --state NEW -j REJECT --reject-with icmp-port-unreachable


 
Par contre un port ne peut pas être routé et ouvert (pour le WAN) à même temps, inconvénient du NAT.


Message édité par High Plains Drifter le 24-06-2010 à 00:48:46

---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 00:49:30    

Port ouvert = il est ouvert et sa peux passer sur n'importe quelle pc
port routé = il peut allez que sur une machine local ?
 
Edit :
 
# Accept SSH
iptables -t filter -A INPUT -i $WAN -s $WAN_net -d $WAN_ip -p udp -m udp --dport 666 -m state --state NEW -j ACCEPT --to-destination $LAN_ip:22
 
 
Obliger de dire la destination ?


Message édité par vith le 24-06-2010 à 00:54:49
Reply

Marsh Posté le 24-06-2010 à 00:54:46    

Pour ouvert = on peut contacter la fonera sur ce port  
Port routé = Les connexions entrantes sur ce port serons redirigés vers une autre machine.
 
 
On voit de suite le conflit, tu n'a qu'une adresse publique donc si tu fait tourner ssh sur ta fonera et sur plusieurs machines de ton lan comment savoir laquelle tu veux contacter via ton_ip_publique:22 ?
Solution utiliser des ports différent :
22 : ouvert sur la fonera
222: redirigé vers machine A:22
2222: redirigé vers machine B:22
...


Message édité par High Plains Drifter le 24-06-2010 à 00:55:49

---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 00:55:51    

D'accord la je comprend mieux donc pas besoin de dire que dans input c'est pour la fonera =D
 
Editer en haut ^^

Reply

Marsh Posté le 24-06-2010 à 00:57:47    

Perso je spécifie un max de paramètres à IPtables même si'ils sont inutiles car c'ets comme-ça qu'on m'a appris (pour se prémunir du changement de comportement par défaut), mais en pratique oui c'est quasiment inutile !


Message édité par High Plains Drifter le 24-06-2010 à 00:59:03

---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 00:59:41    

iptables -t filter -A INPUT -i $WAN -s $WAN_net -d $WAN_ip -p udp -m udp --dport 666 -m state --state NEW -j ACCEPT  
 
 
Ne fonctionne pas et quand je lui dit la déstination il gueule =/

Reply

Marsh Posté le 24-06-2010 à 01:01:48    

Pas de destination sur la chaîne INPUT (dont la destination est par conséquent la machine locale), ce n'est qu'en combinaison avec -j DNAT pour destination-NAT ça sert à specifier vers quelle machine rediriger les paquets,


---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 01:03:27    

Oui j'avais compris après ma bêtise =D
 
Mais juste en -j ACCEPT sa marche pas :s

Reply

Marsh Posté le 24-06-2010 à 01:04:25    

Pourtant la commande est bonne, t'a quel service en UDP sur le port 666 de ta Fonera ?


---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 01:05:46    

en 666 j'ai la SSH du debian ( qui fonctionne merci =) )
 
mais pour un ssh sur la fonera en 22 sa ne marche pas :(

Reply

Marsh Posté le 24-06-2010 à 01:07:36    

Normal SSH c'est du tcp ;)
iptables -A INPUT -i $WAN -p tcp --dport 22 -j ACCEPT #  (version minimale sans options les quasi-inutiles que je spécifie quand-même :pt1cable: )


Message édité par High Plains Drifter le 24-06-2010 à 01:10:06

---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 01:10:26    

Oula 666 c'est celle de la fonera, et 22 celle de la debian ...
 
Je suis fatiguer moi =D

Reply

Marsh Posté le 24-06-2010 à 01:11:45    

Bon  :D  
 
iptables -A INPUT -i $WAN -p tcp --dport 666 -j ACCEPT


---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 01:15:05    

Sa marche sa gère !!!!
 
Merci a toi =D
 
Mais si j'ai un serveur VPN sur mon debian, j'ai juste a ouvrir le port du VPN ou je dois aussi créer une carte tun sous la fonera?

Reply

Marsh Posté le 24-06-2010 à 01:20:29    

Pour un client vpn ça passe bien avec la règle "ESTABLISHED,RELATED" sur FORWARD, pour un serveur dois falloir router les ports concernés vers ta debian c'est tout !
Je crois que le VPN c'est le port 443 en TCP, mais y'a un mode UDP aussi non ?
 


---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 01:22:44    

Bah moi j'ai openvpn donc je choisi mon port et protocole =)
 
ESTABLISHED,RELATED sa veut dire quoi ? que tout sors ?
 
Il est tard je vais dodo :)
 
Bonne nuit a tous !
 
Et Merci énormément High Plains Drifter ! 10 jours de galère résolu en 1 nuit xD

Reply

Marsh Posté le 24-06-2010 à 01:31:56    

# Je laisse tout sortir sauf les connexions "invalides"
iptables -t filter -A FORWARD -i $V4_LAN_IFACE -o $V4_WAN_IFACE -s $V4_LAN_NETWORK -d $V4_WAN_NETWORK -m state ! --state INVALID -j ACCEPT
# Je ne laisse entrer par défaut que les connexions se référents à une connexion sortante  
iptables -t filter -A FORWARD -i $V4_WAN_IFACE -o $V4_LAN_IFACE -s $V4_WAN_NETWORK -d $V4_LAN_NETWORK -m state --state ESTABLISHED,RELATED -j ACCEPT
# Je remplace l'IP locale de mes machine par mon IP publique
iptables -t nat -A POSTROUTING -o $V4_WAN_IFACE -s $V4_LAN_NETWORK -d $V4_WAN_NETWORK -j MASQUERADE  
 
Ici on travaille sur la chaîne  FORWARD ça ne concerne donc que les machines de notre lan et pas la Fonera elle-même (qui a les mêmes règles chez moi).
 
Ces règles suffisent pour 99% des connexions dans le sens client -> serveur, dont l'utilisation d'un client OpenVPN.


Message édité par High Plains Drifter le 24-06-2010 à 01:39:03

---------------
| < Ceci n'est pas une pipe.
Reply

Marsh Posté le 24-06-2010 à 22:43:13    

T'appels quoi par connexion invalides ?
 
Et j'ai pas compris quand tu dis : je remplace l'ip local de mes machines par mon ip public ?!

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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