1 votes

Iptables ne journalise pas le trafic WAN?

Permettez-moi de commencer en indiquant mon objectif final : lorsque le trafic arrive sur une adresse IP spécifique, si le serveur est éteint, l'allumer avec Wake On Lan. J'utilise un routeur TP-Link Archer C7 v2 avec DD-WRT installé avec la version r30709.

  • WOL fonctionne
  • Le journal du trafic LAN sur le port fonctionne (via une règle iptables)
  • Pinger le serveur depuis le script pour vérifier s'il est allumé après l'analyse d'une entrée de journal personnalisée fonctionne
  • L'envoi de WOL fonctionne depuis le script
  • Le journal du trafic WAN ne fonctionne PAS (via une règle iptables)

D'après ce que j'ai vu sur DD-WRT, beaucoup de gens semblent créer des VLAN lorsqu'ils font quelque chose comme ça. Mon routeur est basé sur Atheros, et DD-WRT ne semble pas prendre en charge les VLAN pour les routeurs Atheros, bien que beaucoup de gens semblent l'avoir fait fonctionner sur ce routeur (ils ne publient pas les instructions en ligne).

Je suis actuellement en train de rechercher un moyen de configurer le port sur le routeur auquel le serveur est connecté sur son propre VLAN, mais jusqu'à présent, sans succès.

Voici mes deux règles iptables :

# cela fonctionne
iptables -I FORWARD -i br0 -p tcp --dport 32400 -m state --state NEW -j LOG --log-prefix "CONNEXION LAN PLEX "

# cela ne fonctionne pas
iptables -I FORWARD -i eth0 -p tcp --dport 32400 -m state --state NEW -j LOG --log-prefix "CONNEXION WAN PLEX "

# cela ne fonctionne pas non plus (dd-wrt.com dit que vlan2 est l'interface WAN)
iptables -I FORWARD -i vlan2 -p tcp --dport 32400 -m state --state NEW -j LOG --log-prefix "CONNEXION WAN PLEX "

Est-ce quelque chose qui peut être corrigé uniquement avec iptables ? Parce que je n'arrive pas à faire en sorte que iptables journalise les connexions WAN entrantes sur ce port vers /var/log/messages. J'ai supposé que ce n'écrivait pas dans le journal parce que cela ne se situe pas sur son propre VLAN.

Mise à jour 1

Veuillez noter que j'ai essayé d'utiliser eth0 au lieu de vlan2, mais même résultat : rien dans le journal. J'ai même supprimé -i entièrement dans les deux règles, mais jamais rien sur le trafic WAN.

root@DD-WRT:~# ip a
root@DD-WRT:~# ip ro
default via pu.bl.ic.1 dev eth0
pu.bl.ic.0/24 dev eth0  proto kernel  scope link  src pu.bl.ic.ip
127.0.0.0/8 dev lo  scope link
169.254.0.0/16 dev br0  proto kernel  scope link  src 169.254.255.1
192.168.1.0/24 dev br0  proto kernel  scope link  src 192.168.1.1

Selon le site web de DD-WRT, vlan2 est censé représenter l'interface logique pour le WAN.

Mise à jour 2

J'ai remarqué que l'adresse IP de destination est incorrecte. Cela devrait aller à 192.168.1.2 mais cela va à 192.168.0.10. Ce n'est pas du tout un LAN valide :

Oct  4 20:47:35 DD-WRT kern.warn kernel: [114429.460000] CONNEXION LAN PLEX IN=br0 OUT=eth0 MAC=XXXXXXXXXXXXXXXXXXX SRC=192.168.1.133 DST=192.168.0.10 LEN=60 TOS=0x00 PREC=0x00 TTL=63 ID=45163 DF PROTO=TCP SPT=4644

J'ai essayé cela comme seule règle selon la suggestion ci-dessous :

iptables -A FORWARD -p tcp --dport 32400 -m limit --limit 50/min -j LOG --log-prefix "VÉRIFIER LES INTERFACES"

Toujours rien dans le journal ; arrêt de la journalisation des connexions LAN également.

Mise à jour 3

root@DD-WRT:/tmp/var/log# iptables -t nat -L -n -v
Chaîne PREROUTING (politique ACCEPTER 2742 paquets, 395K octets)
 paquets octets cible     prot opt in     out     source               destination
   13   764 DNAT       tcp  --  *      *       0.0.0.0/0            pu.bl.ic.ip       tcp dpt:14619 to:192.168.1.2:32400
    0     0 DNAT       icmp --  *      *       0.0.0.0/0            pu.bl.ic.ip       to:192.168.1.1
    4   232 DNAT       tcp  --  *      *       0.0.0.0/0            pu.bl.ic.ip       tcp dpt:22709 to:192.168.1.2:32400
  220 19942 TRIGGER    0    --  *      *       0.0.0.0/0            pu.bl.ic.ip       TRIGGER type:dnat match:0 relate:0

Chaîne INPUT (politique ACCEPTER 30145 paquets, 2802K octets)
 paquets octets cible     prot opt in     out     source               destination

Chaîne OUTPUT (politique ACCEPTER 253 paquets, 21491 octets)
 paquets octets cible     prot opt in     out     source               destination

Chaîne POSTROUTING (politique ACCEPTER 260 paquets, 21863 octets)
 paquets octets cible     prot opt in     out     source               destination
 1065 67674 SNAT       0    --  *      eth0    192.168.1.0/24       0.0.0.0/0           to:pu.bl.ic.ip
   10   624 MASQUERADE  0    --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x80000000/0x80000000

1voto

setenforce 1 Points 204

Je ne peux pas ajouter de commentaire sur Superuser, donc c'est une réponse. Pouvez-vous confirmer que le service fonctionne, que vous y accédiez depuis LAN ou WAN ?

Utilisez-vous un script iptables, ou exécutez-vous simplement votre commande dans bash séparément ? Si vous n'avez pas de script iptables, comme l'a dit Cybernard, vous devez vous assurer que votre ligne LOG est avant celle de ACCEPT.

Une fois qu'un paquet est ACCEPTé ou DROPé, il quitte la chaîne et ne correspondra jamais à la règle de journalisation située plus tard dans la chaîne.

Par exemple, pour insérer votre règle LOG en première position dans la chaîne FORWARD :

iptables -I FORWARD 1 -p tcp --dport 32400 -m limit --limit 50/min -j LOG --log-prefix "CHECK INTERFACES"

0voto

Pere Noel Points 11

Veuillez noter que l'IP sur l'interface WAN sera pre nat donc le routeur pourrait être la cible même si le paquet est transféré. Voici ce que je ferais :

iptables -I INPUT -p any -i  -j LOG --log-prefix "FIREWALL-WAN"
iptables -I FORWARD -p any -i  -j LOG --log-prefix "FIREWALL-WAN"

où est l'interface avec l'IP WAN. Normalement, je bloque simplement le trafic WAN puis j'autorise ce que je veux, donc en fait je ne ferais pas ça.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X