Partie 2: Configuration Avancée et Access Point WiFi
1. Contexte de la Partie 2
1.1 Rappel Architecture Partie 1
À l’issue de la Partie 1, nous disposions d’une infrastructure pfSense fonctionnelle avec: - pfSense 2.8.1 installé et opérationnel - Drivers Realtek optimisés (realtek-re-kmod) - Packages de sécurité installés (pfBlockerNG, Suricata, WireGuard, ACME, ntopng) - Accès temporaire via interface WAN pour configuration initiale
1.2 Objectifs Partie 2
Cette seconde phase vise à: 1. Déployer un access point WiFi professionnel (Afoundry EW1200) 2. Migrer vers l’architecture réseau finale avec segmentation LAN 3. Configurer pfBlockerNG pour le blocage de publicités et malwares 4. Optimiser les performances WiFi dual-band 5. Sécuriser l’infrastructure complète
2. Matériel Ajouté
2.1 Access Point Afoundry EW1200
Spécifications: - Modèle: Afoundry EW1200 - WiFi: Dual-band AC1200 (300 Mbps @ 2.4GHz + 867 Mbps @ 5GHz) - Support VLAN: 802.1Q natif (jusqu’à 8 SSID) - Alimentation: PoE 802.3af/at ou adaptateur secteur - Interfaces: 1x Gigabit Ethernet RJ45 - Mode: True Access Point (pas de routeur/NAT)
Coût d’acquisition: 300 dirhams marocains (~27€)
2.2 Avantages par Rapport à un Routeur Converti
Contrairement aux routeurs ADSL reconvertis (TD-W8960N), l’EW1200 offre: - Support VLAN natif pour segmentation réseau future - WiFi 5 GHz (802.11ac) pour meilleures performances - Mode Access Point dédié sans configuration NAT/DHCP à désactiver - Multiple SSID pour réseaux WiFi séparés (LAN/IoT/Guest) - Performances stables en environnement professionnel
3. Installation de l’Access Point
3.1 Phase de Configuration Initiale
Nous avons procédé à une configuration isolée de l’EW1200 avant intégration à pfSense.
Étape 1: Connexion directe laptop → EW1200
Nous avons configuré temporairement le laptop avec une IP statique dans le subnet par défaut de l’AP: IP Laptop: Subnet par défaut de l’AP Masque: /24 Passerelle: IP par défaut de l’AP
text
Accès interface web: IP par défaut du constructeur
Étape 2: Configuration réseau de l’AP
Nous avons reconfiguré l’adresse IP de l’EW1200 pour l’intégrer au réseau LAN de pfSense: IP Address Mode: Static IP IP Address: [IP fixe dans subnet LAN pfSense] Subnet Mask: /24 Default Gateway: [IP LAN pfSense] Primary DNS: [IP LAN pfSense]
text
Après sauvegarde, l’AP redémarre et devient accessible sur sa nouvelle adresse.
Étape 3: Configuration WiFi dual-band
Bande 2.4 GHz (portée maximale): Enable Wireless: ✓ SSID: Homelab_2G Channel: Auto (canaux recommandés: 1, 6, 11) Channel Width: 20 MHz (meilleure portée) Transmit Power: High Security Mode: WPA2-PSK Encryption: AES Password: [Mot de passe sécurisé min 12 caractères]
text
Bande 5 GHz (performances maximales): Enable Wireless: ✓ SSID: Homelab_5G Channel: Auto (canaux recommandés: 36, 40, 44, 48) Channel Width: 40 MHz ou 80 MHz Transmit Power: High Security Mode: WPA2-PSK Encryption: AES Password: [Même mot de passe que 2.4 GHz]
text
Étape 4: Mode Access Point
Nous avons vérifié que l’EW1200 est configuré en mode Access Point pur: Operation Mode: Access Point (AP Mode) DHCP Server: Disabled NAT: Disabled Firewall: Disabled
text
3.2 Intégration à l’Infrastructure pfSense
Câblage physique: pfSense [Interface LAN] ─── Câble Ethernet ─── [Port LAN] EW1200
text
Important: Utilisation exclusive du port LAN de l’access point, pas de port WAN/DSL.
Vérification interface pfSense:
Nous avons contrôlé l’état de l’interface LAN via Status > Interfaces: Interface: LAN (re0) Status: active (UP) IPv4 Address: [IP LAN pfSense]/24 Link: 1000baseT full-duplex
text
4. Tests et Validation
4.1 Connectivité WiFi
Test 1: Connexion clients
Nous avons connecté plusieurs appareils aux réseaux WiFi: - Laptop → Homelab_5G - Smartphone → Homelab_2G - Tablette → Homelab_5G
Tous les clients ont obtenu automatiquement une adresse IP via le serveur DHCP de pfSense.
Test 2: Vérification adressage
Commande de vérification sur les clients: Windows ipconfig
Linux/Mac ifconfig ip addr show
text
Résultats attendus: IPv4 Address: [Plage DHCP LAN pfSense] Subnet Mask: 255.255.255.0 Default Gateway: [IP LAN pfSense] DNS Servers: [IP LAN pfSense]
text
Test 3: Latence et performance
Tests de connectivité depuis les clients WiFi: Ping pfSense (latence < 5ms attendue) ping [IP LAN pfSense]
Ping access point (latence < 2ms attendue) ping [IP EW1200]
Ping Internet ping 8.8.8.8
Résolution DNS ping google.com
text
4.2 Vérifications pfSense
DHCP Leases actifs:
Via Status > DHCP Leases, nous avons vérifié la présence de tous les clients WiFi avec leurs adresses MAC, hostnames et durée de bail.
États de connexions:
Via Diagnostics > States, nous avons confirmé les connexions actives des clients WiFi (filtrage par subnet LAN).
Statistiques interface LAN:
Commande console pour vérifier l’interface: ifconfig re0
text
Vérifications effectuées: - Status: active - Vitesse: 1000baseT full-duplex - Erreurs (Ierrs/Oerrs): 0 - Interruptions MSI-X: fonctionnelles
5. Configuration pfBlockerNG (AdBlock Intégré)
5.1 Introduction au Blocage DNS
pfBlockerNG est la solution native de pfSense pour bloquer publicités, trackers et malwares. Il fonctionne via DNSBL (DNS Blocklist), en interceptant les requêtes DNS vers des domaines malveillants avant qu’elles n’atteignent Internet.
Avantages vs solutions externes: - Pas besoin de Pi-hole ou serveur AdBlock séparé - Intégration native avec DNS Resolver (Unbound) - Blocage au niveau réseau (tous les clients protégés automatiquement) - Pas de modification nécessaire sur les clients - Support HTTPS (pas de man-in-the-middle)
5.2 Configuration Initiale DNSBL
Navigation: Firewall > pfBlockerNG > DNSBL
Activation DNSBL: ☑ Enable DNSBL DNSBL Mode: Unbound mode (recommandé) DNSBL VIP: [IP virtuelle créée automatiquement]
text
Mode Unbound: Intégration avec le DNS Resolver de pfSense pour inspection transparente des requêtes.
Paramètres avancés: DNSBL Blocking Mode: Unbound Python Mode Enable Logging: ✓ (pour analyse trafic bloqué) SafeSearch: ✓ (force SafeSearch sur moteurs de recherche) Python: ✓ Enable (requis pour certaines fonctionnalités)
text
Sauvegarde de la configuration.
5.3 Activation des Listes de Blocage
Navigation: Firewall > pfBlockerNG > Feeds
pfBlockerNG propose des listes pré-configurées de domaines et IPs malveillants.
Catégories activées:
1. Ads (Publicités): - Steven Black - EasyList - Energized Basic
2. Malicious (Malwares et menaces): - URLhaus Malware - Phishing Army - Threat Intel
3. Tracking (Trackers et analytics): - EasyPrivacy - Disconnect Tracking
4. Social (Réseaux sociaux - optionnel): - Facebook - Twitter/X - TikTok (selon besoins utilisateur)
Configuration pour chaque feed: State: ON Action: Unbound Update Frequency: Once a day (via CRON)
text
5.4 Création de Listes Personnalisées
Navigation: Firewall > pfBlockerNG > DNSBL > DNSBL Groups
Nous avons créé un groupe personnalisé pour ajouter des domaines spécifiques:
Groupe: Custom_Blocklist DNS Group Name: Custom_Blocklist Description: Domaines personnalisés à bloquer DNSBL: ON Custom Domain List: [Domaines manuels à bloquer]
text
Exemple domaines personnalisés: doubleclick.net googleadservices.com facebook.com (si blocage réseau social souhaité)
text
5.5 Mise à Jour et Activation
Navigation: Firewall > pfBlockerNG > Update
Lancement de la première synchronisation des listes: Clic sur “Run” → Reload ALL
text
Cette opération télécharge toutes les listes activées et les charge dans Unbound. Durée: 2-5 minutes selon nombre de listes.
Vérification logs:
Les logs confirment le téléchargement et le parsing de chaque liste avec nombre de domaines bloqués.
5.6 Configuration Automatique (CRON)
Navigation: Firewall > pfBlockerNG > General > CRON Settings
Configuration des mises à jour automatiques: Update Frequency: Once a day Update Hour: 03:00 (heure creuse) Force Update on Reload: ✓
text
pfBlockerNG mettra à jour les listes quotidiennement sans intervention manuelle.
6. Optimisations WiFi
6.1 Positionnement Physique de l’AP
Placement optimal: - Hauteur: 2-2.5 mètres du sol (fixation murale ou plafond) - Centralisation: Au centre de la zone de couverture souhaitée - Éviter: Murs béton armé, micro-ondes, babyphones, boîtiers métalliques
Orientation antennes (si externes): - Verticales pour propagation horizontale omnidirectionnelle
6.2 Optimisations 5 GHz
Paramètres avancés EW1200: Channel Width: 80 MHz (meilleur débit vs 40 MHz) Beamforming: Enable (focus signal vers clients) LDPC: Enable (correction erreurs avancée) Short GI: Enable (intervalle garde réduit, +10% débit) Legacy Rates: Disable (force 802.11ac minimum)
text
6.3 Optimisations 2.4 GHz
Paramètres portée maximale: Channel Width: 20 MHz (meilleure portée que 40 MHz) Transmit Power: 100% (puissance maximale) Channel: Fixe sur 1, 6 ou 11 (évite overlapping) Legacy Support: 802.11n minimum (pas de b/g)
text
6.4 Sécurité WiFi Renforcée
Paramètres de chiffrement: WPA Version: WPA2-PSK uniquement (pas de WPA/WPA2 mixed) Encryption: AES exclusivement (jamais TKIP) Group Key Rekey: 3600 secondes PMF (Protected Management Frames): Enable si disponible WPS: Disable (faille de sécurité connue)
text
6.5 Fonctionnalités Avancées
Fast Roaming (si plusieurs APs futurs): 802.11r (Fast Transition): Enable 802.11k (Radio Resource Management): Enable 802.11v (BSS Transition Management): Enable
text
Client Isolation: AP Isolation: Disable (permet communication inter-clients)
text
Activation uniquement pour réseaux Guest/IoT dans architecture VLAN future.
7. Surveillance et Maintenance
7.1 Monitoring pfBlockerNG
Navigation: Firewall > pfBlockerNG > Reports
Statistiques disponibles: - Top domaines bloqués (publicités les plus fréquentes) - Clients générant le plus de requêtes bloquées - Tendances temporelles (heures de pic) - Pourcentage de requêtes bloquées vs totales
Alertes recommandées:
Configuration d’alertes email si nombre de domaines bloqués anormal (potentiel malware).
7.2 Monitoring WiFi via ntopng
Navigation: Diagnostics > ntopng
Métriques surveillées: - Bande passante utilisée par client WiFi - Top talkers (clients consommant le plus) - Protocoles utilisés (HTTP, HTTPS, DNS, etc.) - Alertes débit anormal
7.3 Logs Système
Logs critiques à surveiller:
System > Logs > System: - Redémarrages inattendus - Erreurs kernel
System > Logs > Firewall: - Tentatives de connexion bloquées - Scans de ports
Services > DNS Resolver > Logs: - Requêtes DNS bloquées par pfBlockerNG - Erreurs résolution DNS
7.4 Commandes de Diagnostic
Via Diagnostics > Command Prompt:
État pfBlockerNG pfctl -t pfB_PRI1_v4 -T show
Statistiques DNS bloqué pfctl -s rules | grep DNSBL
Clients DHCP WiFi cat /var/dhcpd/var/db/dhcpd.leases | grep lease
Performance WiFi (via AP - connexion SSH si disponible) iwinfo wlan0 info
text
8. Sauvegardes et Documentation
8.1 Sauvegarde Configuration pfSense
Automatisation recommandée:
Navigation: Diagnostics > Backup & Restore
Configuration sauvegarde automatique: ☑ Enable Automatic Configuration Backups Backup Count: 30 (30 dernières configurations)
text
Sauvegarde manuelle: - Effectuée après chaque modification majeure - Format: XML - Stockage: Cloud backup externe + local
8.2 Sauvegarde Configuration EW1200
Via interface web AP:
Exportation de la configuration complète au format propriétaire. Stockage identique aux backups pfSense.
8.3 Documentation Réseau
Fichiers maintenus: - network_diagram.md: Schéma architecture complète - ip_allocation.md: Tableau allocation IPs statiques - wifi_config.md: Paramètres WiFi (SSID, channels, sécurité) - changelog.md: Historique modifications configuration
9. Architecture Réseau Finale
9.1 Schéma Complet
Internet (FAI) ↓ ┌─────────────┐ │ Box ISP │ └──────┬──────┘ │ ┌──────▼────────────────┐ │ Zotac ZBOX CI337 │ │ pfSense 2.8.1 │ │ │ │ WAN (re1): DHCP ISP │ │ LAN (re0): [Subnet] │ │ │ │ Services: │ │ - Firewall │ │ - DHCP Server │ │ - DNS Resolver │ │ - pfBlockerNG DNSBL │ │ - Suricata IDS │ └──────┬────────────────┘ │ ┌──────▼────────────────┐ │ Afoundry EW1200 │ │ Access Point │ │ │ │ 2.4GHz: Homelab_2G │ │ 5GHz: Homelab_5G │ └───────────────────────┘ │ WiFi ↓ ┌─────────────────────────────┐ │ Clients Réseau │ │ - Laptops │ │ - Smartphones │ │ - Tablettes │ │ - IoT (protégés pfBlockerNG)│ └─────────────────────────────┘
text
9.2 Flux de Trafic
Navigation Web depuis client WiFi: Client WiFi → DNS Request → pfSense (Unbound)
pfSense → pfBlockerNG DNSBL Check
Si domaine bloqué: Retour IP VIP (page bloc)
Si domaine légitime: Forward au DNS upstream
Résolution DNS → Retour IP au client
Client → HTTP/HTTPS Request → pfSense Firewall
pfSense → Suricata IPS Inspection
Trafic autorisé → Forward vers WAN → Internet
text
10. Performances et Statistiques
10.1 Métriques Obtenues
Latence WiFi (ping vers pfSense): - 2.4 GHz: 2-5 ms - 5 GHz: 1-3 ms
Débit WiFi (tests iperf3): - 2.4 GHz: 80-120 Mbps réels - 5 GHz: 300-500 Mbps réels (selon distance et obstacles)
Blocage publicitaire: - Requêtes DNS bloquées: 20-40% du trafic total - Domaines uniques bloqués: 500k-1M+ selon listes activées
Charge CPU pfSense (avec Suricata + pfBlockerNG): - Idle: 10-20% - Navigation web standard: 25-35% - Téléchargement saturé: 40-60%
10.2 Consommation Électrique
Mesures obtenues: - pfSense Zotac CI337: 15-25W - EW1200 (via adaptateur): 10-12W - Total infrastructure: ~35-40W (24/7)
Coût électrique annuel (à 0.15€/kWh): 40W × 24h × 365j / 1000 × 0.15€ = ~52€/an
text
11. Troubleshooting Courants
11.1 Problème: Pas d’accès Internet depuis WiFi
Vérifications: 1. Clients obtiennent IP DHCP correcte ? 2. Passerelle configurée = IP pfSense ? 3. DNS configuré = IP pfSense ? 4. Règle firewall LAN → Any existe ? 5. Interface WAN pfSense fonctionnelle ?
Solution typique: - Vérifier Firewall > Rules > LAN : Règle “Default allow LAN to any” active
11.2 Problème: Sites légitimes bloqués par pfBlockerNG
Diagnostic:
Consulter Firewall > pfBlockerNG > Reports pour identifier domaine bloqué.
Solutions: 1. Ajouter domaine à whitelist: DNSBL > DNSBL Whitelist 2. Désactiver temporairement feed trop agressif 3. Créer exception par client (alias IP)
11.3 Problème: WiFi 5 GHz invisible
Causes fréquentes: - Channel DFS occupé (36-48 safe, 52+ peuvent être bloqués) - Région mal configurée (certains channels interdits) - Device client incompatible 802.11ac
Solutions: - Fixer channel 5 GHz sur 36 ou 40 - Vérifier région = Morocco ou Europe - Tester avec autre client compatible 5 GHz
11.4 Problème: Déconnexions WiFi fréquentes
Optimisations: 1. Réduire Transmit Power si trop forte (paradoxalement) 2. Fixer channels (éviter Auto) 3. Désactiver Power Saving sur clients 4. Firmware update EW1200 si disponible 5. Vérifier interférences (app WiFi Analyzer)
12. Sécurité Renforcée
12.1 Règles Firewall Strictes
Philosophie: Deny by default, allow explicitement.
Règle anti-lockout automatique: - pfSense crée automatiquement règle permettant accès WebGUI depuis LAN
Règles personnalisées créées: LAN → pfSense (port 443/80): Allow (WebGUI)
LAN → pfSense (port 53): Allow (DNS)
LAN → Any (Internet): Allow
LAN → WAN address: Block (évite accès direct box)
text
12.2 Prévention Intrusions (Suricata)
Configuration minimale active: - Interface WAN: Mode IPS inline (bloque attaques) - Règles ET Open: Activées (signatures courantes) - Logging: Enable pour analyse post-incident
Categories activées: - emerging-attack_response - emerging-dos - emerging-exploit - emerging-malware - emerging-scan
12.3 Mises à Jour Automatiques
pfSense: - Vérification hebdomadaire disponibilité updates - Mise à jour manuelle après lecture changelog
pfBlockerNG: - Listes DNSBL: Update automatique quotidien (03h) - Listes IP: Update automatique quotidien (03h)
Suricata: - Règles ET Open: Update automatique quotidien
13. Évolutions Futures Préparées
13.1 Support VLANs Intégré
L’EW1200 supporte nativement les VLANs 802.1Q, permettant la segmentation future: - VLAN 10: LAN principal (existant) - VLAN 30: IoT (objets connectés isolés) - VLAN 99: Guest (invités sans accès LAN)
Configuration future: Multiple SSID sur EW1200 avec VLAN tagging vers switch managed.
13.2 Haute Disponibilité (HA)
Préparation CARP (Common Address Redundancy Protocol): - Possibilité future d’ajouter second pfSense en HA - IP virtuelle partagée entre les deux - Failover automatique si panne primaire
13.3 VPN Site-to-Site
WireGuard déjà installé: - Configuration future pour connecter sites distants - Ou accès nomade sécurisé (road warrior)
Conclusion Partie 2
Nous avons réussi à déployer une infrastructure WiFi professionnelle avec access point dual-band performant, intégré à pfSense. Le système de blocage de publicités et malwares via pfBlockerNG est opérationnel, protégeant automatiquement tous les clients du réseau sans configuration individuelle.
L’architecture actuelle offre: - Sécurité renforcée: Firewall pfSense + IDS Suricata + AdBlock pfBlockerNG - Performances optimales: WiFi AC dual-band 1200 Mbps théorique - Évolutivité: Support VLAN natif pour segmentation future - Stabilité: Drivers optimisés, matériel professionnel - Monitoring complet: ntopng + logs centralisés
Investissement total cumulé: 85€ (pfSense) + 27€ (EW1200) = 112€ Temps configuration Partie 2: ~2-3 heures Statut: ✅ Production-ready avec protection avancée
Document rédigé dans le cadre d’un projet homelab de segmentation réseau et sécurisation d’infrastructure avec blocage publicitaire intégré.