Guide de Configuration

Sécurisation Réseau MikroTik L009 - Protection Contenu Non Autorisé
Réseau LAN : Ex: 20.166.199.0/24 | Gateway : 20.166.199.1
Date : 28 Juillet 2025 | Version : 1.0

1. Vue d'ensemble et Objectifs

🌐 Informations Réseau

ParamètreValeur
Réseau LAN20.166.199.0/24
Gateway/Routeur20.166.199.1
Pool DHCP20.166.199.10-20.166.199.200
Réseau VPN10.13.13.0/24
MatérielMikroTik L009

🎯 Objectifs de Sécurité

  • Protection des mineurs : Bloquer tout contenu inapproprié pour les moins de 20 ans
  • Filtrage DNS : Utilisation de serveurs DNS sécurisés avec DoH
  • Contrôle d'accès : Règles de firewall granulaires
  • Anti-espionnage : Protection contre la surveillance du FAI
  • VPN sécurisé : Accès distant chiffré via WireGuard
💡 Note importante : Ce guide propose une approche multicouche pour une sécurité optimale. Chaque section peut être appliquée indépendamment selon vos besoins.

2. Configuration DNS Sécurisé

1DNS over HTTPS (DoH) avec Cloudflare

/ip dns set servers="" set use-doh-server=https://cloudflare-dns.com/dns-query set verify-doh-cert=yes set allow-remote-requests=yes

2DNS FamilyShield (OpenDNS)

# Alternative avec filtrage automatique du contenu adulte /ip dns set servers=208.67.222.123,208.67.220.123 set allow-remote-requests=yes

3Redirection DNS forcée

# Forcer tous les clients à utiliser le DNS sécurisé /ip firewall nat add action=redirect chain=dstnat comment="Redirect DNS to secure server" \ dst-port=53 protocol=udp src-address=20.166.199.0/24 \ to-addresses=1.1.1.1 to-ports=53 add action=redirect chain=dstnat dst-port=53 protocol=tcp \ src-address=20.166.199.0/24 to-addresses=1.1.1.1 to-ports=53
✅ Résultat attendu : Tous les clients utiliseront automatiquement les DNS sécurisés, même s'ils tentent de configurer d'autres serveurs DNS.

3. Filtrage par Listes d'Adresses

1Création des listes de sites bloqués

/ip firewall address-list add address=*.pornhub.com list=blocked-sites comment="Adult content" add address=*.xvideos.com list=blocked-sites add address=*.redtube.com list=blocked-sites add address=*.xhamster.com list=blocked-sites add address=*.tube8.com list=blocked-sites add address=*.youporn.com list=blocked-sites add address=*.spankbang.com list=blocked-sites add address=*.chaturbate.com list=blocked-sites

2Blocage des sites répertoriés

/ip firewall filter add action=drop chain=forward dst-address-list=blocked-sites \ comment="Block adult content sites" log=yes log-prefix="BLOCKED-SITE"

3Listes d'adresses réseau internes

/ip firewall address-list add address=20.166.199.0/24 comment="LAN Network" list=internal_networks add address=10.0.0.0/8 comment="RFC1918" list=not_in_internet add address=172.16.0.0/12 comment="RFC1918" list=not_in_internet add address=192.168.0.0/16 comment="RFC1918" list=not_in_internet add address=127.0.0.0/8 comment="Loopback" list=not_in_internet

4. Règles de Firewall Avancées

1Filtrage par mots-clés

# Créer un protocole layer7 pour détecter le contenu adulte /ip firewall layer7-protocol add name=adult-content regexp="(porn|sex|adult|xxx|nude|erotic)" # Bloquer le trafic contenant ces mots-clés /ip firewall filter add action=drop chain=forward layer7-protocol=adult-content \ comment="Block adult keywords" log=yes log-prefix="ADULT-KEYWORD"

2Protection contre les scans et attaques

# Détecter les scanners de ports /ip firewall filter add action=add-src-to-address-list address-list=port_scanners \ address-list-timeout=2w chain=input comment="Port scanners" \ protocol=tcp psd=21,3s,3,1 # Bloquer les scanners détectés add action=drop chain=input comment="Drop port scanners" \ src-address-list=port_scanners log=yes log-prefix="PORT-SCAN"

3Règles de base pour le LAN

# Accepter les connexions établies /ip firewall filter add action=accept chain=forward comment="Accept established,related" \ connection-state=established,related # Accepter le trafic depuis le LAN vers internet add action=accept chain=forward comment="Accept from LAN to internet" \ src-address=20.166.199.0/24 dst-address=!20.166.199.0/24 # Bloquer les connexions invalides add action=drop chain=forward comment="Drop invalid" \ connection-state=invalid log=yes log-prefix="INVALID"

5. Configuration Web Proxy

1Activation du proxy web

/ip web-proxy set enabled=yes port=8080 cache-administrator=admin@projetit.com \ cache-hit-dscp=4 cache-on-disk=yes max-cache-size=unlimited

2Règles d'accès du proxy

# Bloquer les sites par URL /ip web-proxy access add action=deny url="*porn*" comment="Block porn sites" add action=deny url="*sex*" comment="Block sex sites" add action=deny url="*adult*" comment="Block adult sites" add action=deny url="*xxx*" comment="Block XXX sites" add action=deny url="*nude*" comment="Block nude sites" add action=deny url="*erotic*" comment="Block erotic sites" # Autoriser le reste add action=allow comment="Allow all other traffic"

3Redirection vers le proxy

# Rediriger le trafik HTTP vers le proxy /ip firewall nat add action=redirect chain=dstnat dst-port=80 protocol=tcp \ src-address=20.166.199.0/24 to-ports=8080 comment="Redirect to proxy"
⚠️ Attention : Le proxy ne fonctionne que pour le trafic HTTP (port 80). Le trafic HTTPS (port 443) nécessite d'autres méthodes de filtrage.

6. Restrictions Horaires

1Blocage nocturne

# Bloquer internet la nuit (22h-6h) /ip firewall filter add action=drop chain=forward time=22h-6h \ src-address=20.166.199.0/24 comment="Block internet at night" \ log=yes log-prefix="NIGHT-BLOCK"

2Restrictions par jours

# Bloquer pendant les heures de cours (lundi-vendredi 8h-17h) /ip firewall filter add action=drop chain=forward time=8h-17h,mon,tue,wed,thu,fri \ src-address=20.166.199.0/24 comment="Block during school hours" \ log=yes log-prefix="SCHOOL-BLOCK"

3Exceptions pour certaines IP

# Créer une liste d'IP exemptées des restrictions horaires /ip firewall address-list add address=20.166.199.5 list=time-exempt comment="Admin PC" add address=20.166.199.10 list=time-exempt comment="Parent device" # Modifier les règles pour exclure ces IP /ip firewall filter add action=accept chain=forward src-address-list=time-exempt \ comment="Allow exempt devices" place-before=0

7. Suppression des Restrictions

⚠️ Important : Sauvegardez votre configuration avant de supprimer les restrictions : /system backup save name=avec-restrictions

1Suppression des règles de firewall

# Supprimer toutes les règles de blocage /ip firewall filter remove [find comment~"Block"] remove [find comment~"adult"] remove [find comment~"night"] remove [find comment~"school"]

2Nettoyage des listes d'adresses

# Vider les listes de sites bloqués /ip firewall address-list remove [find list=blocked-sites] remove [find list=time-exempt]

3Restauration DNS normal

# Revenir aux DNS publics standards /ip dns set servers=8.8.8.8,8.8.4.4 set use-doh-server="" # Supprimer les redirections DNS /ip firewall nat remove [find comment~"Redirect DNS"]

4Désactivation du proxy

# Désactiver le web proxy /ip web-proxy set enabled=no # Supprimer les règles d'accès /ip web-proxy access remove [find] # Supprimer les redirections proxy /ip firewall nat remove [find comment~"proxy"]

8. Sécurisation Avancée Anti-Espionnage

1Configuration WireGuard VPN

# Créer l'interface WireGuard /interface wireguard add listen-port=51820 mtu=1420 name=wg-server # Assigner une adresse IP au serveur VPN /ip address add address=10.13.13.1/24 interface=wg-server network=10.13.13.0

2Protection firewall multicouche

# Protection contre les attaques DDoS /ip firewall filter add action=add-src-to-address-list address-list=ddos-attackers \ address-list-timeout=1d chain=input comment="DDoS protection" \ connection-limit=20,32 protocol=tcp src-address-list=!internal_networks add action=drop chain=input src-address-list=ddos-attackers \ comment="Drop DDoS attackers" # Protection SSH brute force add action=add-src-to-address-list address-list=ssh_blacklist \ address-list-timeout=1d chain=input comment="SSH brute force" \ connection-state=new dst-port=22 protocol=tcp src-address-list=ssh_stage3

3Chiffrement DNS et anti-fingerprinting

# DNS over HTTPS pour masquer les requêtes DNS /ip dns set use-doh-server=https://cloudflare-dns.com/dns-query set verify-doh-cert=yes # Normalisation TTL pour éviter le fingerprinting /ip firewall mangle add action=change-ttl chain=postrouting new-ttl=64 passthrough=yes \ src-address=20.166.199.0/24 comment="Normalize TTL"

4Sécurisation des services RouterOS

# Désactiver les services non nécessaires /ip service disable telnet,ftp,www,api,api-ssl set ssh port=2222 set winbox port=8192 # Désactiver la découverte des voisins /tool mac-server set allowed-interface-list=none /tool mac-server mac-winbox set allowed-interface-list=none /ip neighbor discovery-settings set discover-interface-list=none

5NAT et masquerading sécurisé

# NAT pour le trafic LAN /ip firewall nat add action=masquerade chain=srcnat comment="Masquerade LAN" \ out-interface-list=WAN src-address=20.166.199.0/24 # NAT pour le trafic VPN add action=masquerade chain=srcnat comment="Masquerade VPN" \ out-interface-list=WAN src-address=10.13.13.0/24

9. Configuration VPN WireGuard Complète

1Configuration serveur sur MikroTik

# Créer l'interface WireGuard /interface wireguard add listen-port=51820 mtu=1420 name=wg-server # Noter la clé publique du serveur /interface wireguard print # Copier la valeur "public-key" pour la configuration client # Assigner l'adresse IP /ip address add address=10.13.13.1/24 interface=wg-server network=10.13.13.0

2Ajout des clients (peers)

# Ajouter un client PC /interface wireguard peers add allowed-address=10.13.13.2/32 interface=wg-server \ public-key="[CLÉ_PUBLIQUE_CLIENT_PC]" comment="Client-PC" # Ajouter un client mobile add allowed-address=10.13.13.3/32 interface=wg-server \ public-key="[CLÉ_PUBLIQUE_CLIENT_MOBILE]" comment="Client-Mobile"

3Configuration firewall pour VPN

# Autoriser le port WireGuard /ip firewall filter add action=accept chain=input comment="Accept WireGuard" \ dst-port=51820 protocol=udp # Autoriser le trafic VPN vers LAN add action=accept chain=forward comment="Accept VPN to LAN" \ dst-address=20.166.199.0/24 src-address=10.13.13.0/24 # Autoriser le trafic VPN vers internet add action=accept chain=forward comment="Accept VPN to internet" \ out-interface-list=WAN src-address=10.13.13.0/24

4Configuration client exemple

# Fichier de configuration client (mon-vpn.conf) [Interface] PrivateKey = [CLÉ_PRIVÉE_DU_CLIENT] Address = 10.13.13.2/24 DNS = 1.1.1.1, 1.0.0.1 [Peer] PublicKey = [CLÉ_PUBLIQUE_DU_SERVEUR] Endpoint = [VOTRE_IP_PUBLIQUE]:51820 AllowedIPs = 0.0.0.0/0 PersistentKeepalive = 25
💡 Astuce : Pour trouver votre IP publique depuis MikroTik : /tool fetch url="https://api.ipify.org" dst-path=ip.txt

5Configuration DNS dynamique (DuckDNS)

# Script de mise à jour DuckDNS /system script add name=duckdns-update source={ :local domain "votre-nom.duckdns.org" :local token "votre-token-duckdns" :local url "https://www.duckdns.org/update\?domains=$domain&token=$token" /tool fetch url=$url keep-result=no :log info "DuckDNS updated" } # Planifier la mise à jour toutes les 5 minutes /system scheduler add interval=5m name=duckdns-scheduler on-event=duckdns-update start-time=startup

10. Dépannage et Maintenance

1Commandes de diagnostic

# Vérifier les connexions VPN actives /interface wireguard peers print # Voir les logs de sécurité /log print where topics~"firewall" # Tester la connectivité DNS /tool dns-lookup name=google.com # Vérifier les règles de firewall actives /ip firewall filter print where !disabled # Statistiques des interfaces /interface print stats

2Tests de sécurité

# Tester l'accès depuis le LAN /ping 20.166.199.10 count=3 # Vérifier les connexions établies /ip firewall connection print # Tester les règles de blocage /log print where message~"BLOCKED" # Vérifier la résolution DNS /ip dns cache print

3Sauvegarde et restauration

# Créer une sauvegarde complète /system backup save encryption=aes sha256 name=config-securise password=MonMotDePasse123 # Exporter la configuration en texte /export file=config-backup # Restaurer depuis une sauvegarde /system backup load name=config-securise password=MonMotDePasse123 # Importer une configuration /import file=config-backup

4Monitoring et alertes

# Configuration des logs vers un serveur externe /system logging action add name=remote-log remote=192.168.1.100 target=remote /system logging add action=remote-log topics=critical,error,warning # Alertes par email (si configuré) /tool e-mail set address=smtp.gmail.com from=admin@projetit.com password=motdepasse \ port=587 start-tls=yes user=admin@projetit.com # Script d'alerte en cas d'attaque /system script add name=security-alert source={ :local message "Alerte sécurité détectée sur le réseau" /tool e-mail send to="admin@projetit.com" subject="Alerte Sécurité" body=$message }
⚠️ Maintenance régulière :
  • Mettre à jour RouterOS mensuellement
  • Vérifier les logs de sécurité hebdomadairement
  • Tester les sauvegardes trimestriellement
  • Revoir les règles de firewall semestriellement

11. Optimisation des Performances

1Configuration FastTrack

# Optimiser les connexions établies /ip firewall filter add action=fasttrack-connection chain=forward comment="FastTrack" \ connection-state=established,related hw-offload=yes add action=accept chain=forward comment="Accept established,related" \ connection-state=established,related

2Optimisation QoS

# Marquer le trafic prioritaire /ip firewall mangle add action=mark-connection chain=prerouting comment="Mark VoIP" \ dst-port=5060,10000-20000 new-connection-mark=voip protocol=udp add action=mark-packet chain=prerouting comment="Mark VoIP packets" \ connection-mark=voip new-packet-mark=voip_pkt # Queue pour prioriser VoIP /queue simple add max-limit=100M/100M name=total target=20.166.199.0/24 add max-limit=2M/2M name=voip packet-marks=voip_pkt parent=total priority=1/1

3Cache DNS optimisé

# Optimiser le cache DNS /ip dns set cache-max-ttl=1d cache-size=10000KiB max-concurrent-queries=200 \ max-concurrent-tcp-sessions=40

12. Checklist de Déploiement

✅ Avant le déploiement

ÉtapeVérificationStatut
Sauvegarde actuelleConfiguration sauvegardée
Accès physiqueCâble console disponible
IP publiqueAdresse IP notée
Ports ouvertsPort 51820 UDP redirigé
DNS dynamiqueCompte DuckDNS créé

✅ Après le déploiement

TestCommandeRésultat attendu
Connectivité LANping 20.166.199.1Réponse positive
Résolution DNSnslookup google.comRéponse sécurisée
Blocage contenuAccès site bloquéPage bloquée
VPN WireGuardConnexion clientTunnel établi
Logs sécurité/log printÉvénements enregistrés

1Script de déploiement automatique

# Script complet de déploiement /system script add name=deploy-security source={ :log info "Début du déploiement sécurisé" # Configuration DNS sécurisé /ip dns set use-doh-server=https://cloudflare-dns.com/dns-query verify-doh-cert=yes # Création des listes d'adresses /ip firewall address-list add address=20.166.199.0/24 list=internal_networks add address=*.pornhub.com list=blocked-sites # Configuration VPN /interface wireguard add listen-port=51820 name=wg-server /ip address add address=10.13.13.1/24 interface=wg-server :log info "Déploiement terminé avec succès" } # Exécuter le script /system script run deploy-security

13. Annexes et Références

📚 Documentation officielle

  • MikroTik Wiki : https://wiki.mikrotik.com
  • RouterOS Manual : https://help.mikrotik.com
  • WireGuard : https://www.wireguard.com
  • Cloudflare DNS : https://1.1.1.1

🔧 Outils recommandés

OutilUsageURL
WinBoxAdministration graphiquemikrotik.com/download
WireGuard ClientClient VPNwireguard.com/install
DuckDNSDNS dynamiqueduckdns.org
PuttyClient SSHputty.org