Mon PC est équipé de deux interfaces réseau - wlan0 et eth0. Je veux utiliser le port WiFi comme point d'accès sur wlan0. Donc, j'utilise l'utilitaire hostapd et cela fonctionne correctement en mode de routage sur le réseau local. Les utilisateurs peuvent se connecter à ce point d'accès créé et DHCP fonctionne correctement dans les deux segments. Le PC avec hostapd ne possède pas de pare-feu et / ou de règles iptables (iptables et pare-feu désactivés). Je veux utiliser uniquement le pare-feu intégré au routeur ADSL.
Ma configuration Internet est la suivante
...... PC avec hostapd ................. connexion par câble .................. routeur ADSL
..... wlan0 .............. eth0 ..... <----------------------- -------> ........... 192.168.0.1 ...................... <---> internet 192.168.10.1 ... 192.168.0.7 .............................. ajouté le routage statique à 192.168.10.X
ifconfig sur PC:
eth0 Link encap:Ethernet HWaddr 00:12:3F:F2:31:65
inet addr:192.168.0.7 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::212:3fff:fef2:3165/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2169539 errors:0 dropped:0 overruns:0 frame:0
TX packets:1008097 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3056198487 (2.8 GiB) TX bytes:72727161 (69.3 MiB)
Interrupt:16
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:3398 errors:0 dropped:0 overruns:0 frame:0
TX packets:3398 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:495444 (483.8 KiB) TX bytes:495444 (483.8 KiB)
mon.wlan0 Link encap:UNSPEC HWaddr 00-14-A5-04-94-3C-90-F0-00-00-00-00-00-00-00-00
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:151 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:17092 (16.6 KiB) TX bytes:0 (0.0 b)
wlan0 Link encap:Ethernet HWaddr 00:14:A5:04:94:3C
inet addr:192.168.10.1 Bcast:192.168.10.255 Mask:255.255.255.0
inet6 addr: fe80::214:a5ff:fe04:943c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:1502 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:279392 (272.8 KiB)
Je suis totalement noob dans iptables. Alors, quelqu'un peut-il m'aider à configurer la configuration iptables NAT simple sur PC? Je veux que tous les utilisateurs connectés au réseau via hostapd (réseau 192.168.10.X) aient accès à Internet? Je ne veux pas filtrer le trafic, juste le NAT.
OK MERCI. Mais je ne parviens pas à me connecter à Internet à partir du segment WiFi. Le client connecté au WiFi a l'adresse 192.168.10.48 (via DHCP). Le trafic que je peux remarquer sur le port eth0 depuis cette adresse est
16:50:14.671587 ARP, Request who-has 192.168.0.48 tell 192.168.0.1, length 46
Avis - l'adresse est 192.168.0.48 et non 192.168.10.48. Donc, la mascarade semble fonctionner.
Eaven je ne peux pas cingler à 192.168.0.1 - le port du routeur ADSL. C'était possible avant.
Et qu'en est-il de l'accès Internet aux utilisateurs du WIFI? Bien sûr, je vais configurer un routeur ADSL, en transférant un pool de ports IP particulier d’Internet vers une adresse IP particulière de cet utilisateur WiFi.
MODIFIER
systemstl montre que iptables est:
iptables.service loaded active exited
Mais bien sûr, je cours:
systemctl enable iptables.service
systemctl start iptables.service
MODIFIER
Travaux! Mais je dois ajouter manuellement chaque fois que je démarre l'ordinateur (à partir du script de démarrage):
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Est-ce une situation normale?
Réponses:
Dans la forme la plus simple:
Cela permettra à tous les utilisateurs WiFi d'accéder à Internet.
Bien sûr, en supposant que votre autre configuration de routage soit déjà faite, à savoir:
Transfert activé dans le noyau
Renvoi activé dans
iptables
:Utilisez cette option
tcpdump -nn -i eth0
pour surveiller le traficeth0
en cas de problème, pour voir s’il reçoit correctement le NAT, si la réponse revient, etc.EDIT: "Je dois ajouter manuellement à chaque démarrage de l'ordinateur (à partir du script de démarrage) ..." Cela dépend de la distribution Linux que vous avez. Malheureusement, chaque distribution a son propre outil de pare-feu. En fin de compte, elle ne fait qu'appeler
iptables
les auteurs, mais pour une raison quelconque, les auteurs croient qu'il est préférable de masquer le fonctionnement d'iptables.Pour répondre à votre question, il est probable que votre pare-feu puisse être configuré pour ajouter cette règle NAT automatiquement. La méthode exacte varie toutefois entre les distributions Linux sans raison valable. Triste mais vrai.
la source
J'ai écrit un pare-feu pour toutes les occasions. Veuillez lire le fichier README et le SCRIPT avant de l’utiliser. J'ai inclus les règles nécessaires pour HOSTAP
HostAP
HostAP nécessite que les lignes ci-dessous soient toutes deux ACCEPT pour fonctionner
https://github.com/diveyez/fw.sh
la source