Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
tech:hypervisor-01 [29/09/2023 17:59] – [Topologie] LibertAdmin | tech:hypervisor-01 [09/01/2025 22:50] (Version actuelle) – [Topologie] LibertAdmin | ||
---|---|---|---|
Ligne 27: | Ligne 27: | ||
* [[tech: | * [[tech: | ||
- | Toutes les requêtes venant d' | + | Toutes les requêtes venant d' |
===== Configuration ===== | ===== Configuration ===== | ||
==== Système d' | ==== Système d' | ||
* Debian stable (Debian 12 « Bookworm ») | * Debian stable (Debian 12 « Bookworm ») | ||
- | * Debian oldstable pour le serveur web-01 (Debian 11 « Bullseye ») | ||
==== Adressage IP ==== | ==== Adressage IP ==== | ||
Hetzner offre une IP publique. Nous avons modifié l' | Hetzner offre une IP publique. Nous avons modifié l' | ||
- | L' | + | L' |
- | L' | + | L' |
< | < | ||
Ligne 65: | Ligne 64: | ||
iface br0 inet6 static | iface br0 inet6 static | ||
bridge_ports enp0s31f6 | bridge_ports enp0s31f6 | ||
- | bridge_hz | + | bridge_hw |
bridge_fd 0 | bridge_fd 0 | ||
bridge_stp off | bridge_stp off | ||
Ligne 79: | Ligne 78: | ||
bridge_fd 0 | bridge_fd 0 | ||
bridge_stp off | bridge_stp off | ||
- | address | + | address |
- | netmask 255.X.Y.Z | + | netmask 255.255.255.0 |
iface br1 inet6 static | iface br1 inet6 static | ||
Ligne 86: | Ligne 85: | ||
bridge_fd 0 | bridge_fd 0 | ||
bridge_stp off | bridge_stp off | ||
- | address | + | address |
netmask 120 | netmask 120 | ||
Ligne 102: | Ligne 101: | ||
bridge_fd 0 | bridge_fd 0 | ||
bridge_stp off | bridge_stp off | ||
- | address ::ffff:c0a8:a01 | + | address |
netmask 120 | netmask 120 | ||
</ | </ | ||
+ | ==== Paramètres réseau et swap dans sysctl ==== | ||
+ | Dans ''/ | ||
+ | |||
+ | < | ||
+ | net.ipv4.conf.all.accept_redirects = 0 | ||
+ | net.ipv4.conf.all.rp_filter=1 | ||
+ | net.ipv4.conf.default.rp_filter=1 | ||
+ | net.ipv4.icmp_echo_ignore_broadcasts=1 | ||
+ | net.ipv4.ip_forward=1 | ||
+ | net.ipv6.conf.all.accept_dad=0 | ||
+ | net.ipv6.conf.all.accept_ra=0 | ||
+ | net.ipv6.conf.all.accept_ra_defrtr=0 | ||
+ | net.ipv6.conf.all.accept_ra_pinfo=0 | ||
+ | net.ipv6.conf.all.accept_ra_rtr_pref=0 | ||
+ | net.ipv6.conf.all.accept_redirects = 0 | ||
+ | net.ipv6.conf.all.accept_redirects=0 | ||
+ | net.ipv6.conf.all.accept_source_route=0 | ||
+ | net.ipv6.conf.all.autoconf=0 | ||
+ | net.ipv6.conf.all.forwarding=1 | ||
+ | net.ipv6.conf.default.accept_dad=0 | ||
+ | net.ipv6.conf.default.accept_ra=0 | ||
+ | net.ipv6.conf.default.accept_ra_defrtr=0 | ||
+ | net.ipv6.conf.default.accept_ra_pinfo=0 | ||
+ | net.ipv6.conf.default.accept_ra_rtr_pref=0 | ||
+ | net.ipv6.conf.default.accept_redirects=0 | ||
+ | net.ipv6.conf.default.accept_source_route=0 | ||
+ | net.ipv6.conf.default.autoconf=0 | ||
+ | vm.swappiness=0 | ||
+ | </ | ||
==== Routage et filtrage avec iptables ==== | ==== Routage et filtrage avec iptables ==== | ||
Ligne 113: | Ligne 141: | ||
Le paquet '' | Le paquet '' | ||
- | Le port SSH a été masqué. | ||
Il est bien sûr extrêmement important de sécuriser SSH : interdire le login root avec mot de passe, utiliser de bons algorithmes de chiffrement, | Il est bien sûr extrêmement important de sécuriser SSH : interdire le login root avec mot de passe, utiliser de bons algorithmes de chiffrement, | ||
- | Les règles concernant le réseau d' | + | Cela dit, pour information une configuration similaire à la suivante est en place : |
- | + | ||
- | Pour IPv4, dans ''/ | + | |
<code bash> | <code bash> | ||
+ | # / | ||
- | *nat | + | # Common parameters: |
+ | Port < | ||
+ | Port < | ||
+ | AcceptEnv LANG LC_* | ||
+ | ChallengeResponseAuthentication no | ||
+ | KbdInteractiveAuthentication no | ||
+ | PrintMotd no | ||
+ | PasswordAuthentication no | ||
+ | Subsystem sftp / | ||
+ | UsePAM yes | ||
+ | X11Forwarding no | ||
- | # Router le trafic Web vers le serveur web : | + | # Port < |
- | -A PREROUTING -d 159.69.59.13/32 -p tcp -m tcp --syn -m multiport --dports 80,443 -j DNAT --to-destination 192.168.10.5 | + | Match Address="< |
+ | AllowUsers root < | ||
- | # Router le mail envoi/réception vers le serveur mail : | + | # Port < |
- | -A PREROUTING -d 159.69.59.13/32 -p tcp -m tcp --syn -m multiport --dports 587,993,25 -j DNAT --to-destination 192.168.10.7 | + | Match LocalPort=< |
+ | AllowUsers < | ||
+ | </code> | ||
- | # Tests | + | Les règles concernant |
- | ## Router les ports des applications vers le serveur web : | + | |
- | #-A PREROUTING -d 159.69.59.13/32 -p tcp -m tcp --syn -m multiport --dports 1935, | + | |
- | # | + | |
- | ## Router le port 5868 vers le serveur audio pour Funkwhale : | + | |
- | #-A PREROUTING -d 159.69.59.13/ | + | |
- | # Router le 8484 pour Zabbix vers le serveur monitoring : | + | Pour IPv4, dans '' |
- | -A PREROUTING -d 159.69.59.13/ | + | |
- | + | ||
- | # Ne pas appliquer le masquerading sur le broadcast/ | + | |
- | -A POSTROUTING -s 192.168.10.0/ | + | |
- | -A POSTROUTING -s 192.168.10.0/ | + | |
- | + | ||
- | # Masquerading sur tous les ports dans le sens sortant (VM -> Internet) | + | |
- | -A POSTROUTING -s 192.168.10.0/24 ! -d 192.168.10.0/24 -p tcp -j MASQUERADE --to-ports 1024-65535 | + | |
- | -A POSTROUTING -s 192.168.10.0/24 ! -d 192.168.10.0/24 -p udp -j MASQUERADE --to-ports 1024-65535 | + | |
- | -A POSTROUTING -s 192.168.10.0/ | + | |
+ | <code bash> | ||
+ | *nat | ||
+ | -A PREROUTING -d 159.69.59.13/ | ||
+ | -A PREROUTING -d 159.69.59.13/ | ||
+ | -A PREROUTING -d 159.69.59.13/ | ||
+ | -A POSTROUTING -s 192.168.10.0/ | ||
+ | -A POSTROUTING -s 192.168.10.0/ | ||
+ | -A POSTROUTING -s 192.168.10.0/ | ||
+ | -A POSTROUTING -s 192.168.10.0/ | ||
+ | -A POSTROUTING -s 192.168.10.0/ | ||
COMMIT | COMMIT | ||
- | |||
*filter | *filter | ||
- | + | -A INPUT -m conntrack --ctstate RELATED, | |
- | # Accepter le trafic basique : ICMP, boucle locale et connexions établies, en entrée : | + | -A INPUT -i lo -m comment --comment " |
- | -A INPUT -m conntrack --ctstate RELATED, | + | -A INPUT -p icmp --icmp-type 8 -m conntrack --ctstate NEW -m comment --comment "Accepter le trafic basique ICMP, en entrée" |
- | -A INPUT -i lo -j ACCEPT | + | -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 22 -m comment --comment " |
- | -A INPUT -p icmp --icmp-type 8 -m conntrack --ctstate NEW -j ACCEPT | + | -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 1984 -m comment --comment "Accepter le SSH" -j ACCEPT |
- | + | -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 587, | |
- | # Accepter le SSH : | + | -A INPUT -p tcp -m tcp -m conntrack --ctstate NEW --dport 52365 -m comment --comment "Accepter le tunnel SSH vers le serveur web-01 sur le port 52365" -j ACCEPT |
- | -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 22 -j ACCEPT | + | -A INPUT -i br2 -p udp -m udp -m multiport |
- | -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 1984 -j ACCEPT | + | -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 53 -m comment --comment " |
- | + | -A INPUT -i br2 -p tcp -m multiport --dport 2049 -m comment --comment "Bloquer les requêtes rpcbind/ | |
- | # Accepter | + | -A INPUT -i br2 -p tcp -m multiport --dport 111 -m comment --comment " |
- | -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 587,993,25 -j ACCEPT | + | -A INPUT -p tcp -s 127.0.0.1 --dport 111 -m comment --comment " |
- | + | -A INPUT -p udp --dport 111 -m comment --comment " | |
- | # Accepter le tunnel SSH vers le serveur web-01 sur le port 52365 : | + | -A INPUT -p tcp --dport 111 -m comment --comment " |
- | -A INPUT -p tcp -m tcp -m conntrack | + | -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 10050 -m comment --comment " |
- | + | -A INPUT -p icmp --icmp-type 8 -m conntrack --ctstate NEW -m limit --limit 1/s --limit-burst 1 -m comment --comment "On refuse les trop nombreux ping" | |
- | # Accepter les requêtes DNS (port 53) depuis les VM : | + | -A INPUT -p icmp -m comment --comment "On refuse les trop nombreux ping" |
- | -A INPUT -i br2 -p udp -m udp -m multiport --dports 53 -j ACCEPT | + | -A INPUT -m conntrack --ctstate INVALID |
- | -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 53 -j ACCEPT | + | -A INPUT -p tcp -m tcp -m comment --comment "On refuse tout le reste" |
- | + | -A INPUT -m comment --comment "On refuse tout le reste" | |
- | # Bloquer les requêtes rpcbind/ | + | -A FORWARD -d 192.168.10.0/ |
- | -A INPUT -i br2 -p tcp -m multiport --dport 2049 -j ACCEPT | + | -A FORWARD -s 192.168.10.0/ |
- | -A INPUT -i br2 -p tcp -m multiport --dport 111 -j ACCEPT | + | -A FORWARD -i br2 -o br2 -m comment --comment " |
- | -A INPUT -p tcp -s 127.0.0.1 --dport 111 -j ACCEPT | + | -A FORWARD -d 192.168.10.5/ |
- | -A INPUT -p udp --dport 111 -j DROP | + | -A FORWARD -d 192.168.10.7/ |
- | -A INPUT -p tcp --dport 111 -j DROP | + | -A FORWARD -d 192.168.10.250/ |
- | + | -A INPUT -s 102.132.96.0/20 -m comment | |
- | # Accepter | + | -A INPUT -s 103.4.96.0/ |
- | -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 10050 -j ACCEPT | + | -A INPUT -s 129.134.0.0/ |
- | + | -A INPUT -s 129.134.160.0/ | |
- | # On refuse les trop nombreux ping : | + | -A INPUT -s 129.134.25.0/ |
- | -A INPUT -p icmp --icmp-type 8 -m conntrack --ctstate NEW -m limit --limit 1/s --limit-burst 1 -j ACCEPT | + | -A INPUT -s 129.134.26.0/ |
- | -A INPUT -p icmp -j DROP | + | -A INPUT -s 129.134.27.0/ |
- | + | -A INPUT -s 129.134.28.0/ | |
- | # On refuse tout le reste : | + | -A INPUT -s 129.134.29.0/ |
- | -A INPUT -m conntrack --ctstate INVALID -j DROP | + | -A INPUT -s 129.134.30.0/ |
- | -A INPUT -p tcp -m tcp -j REJECT --reject-with tcp-reset | + | -A INPUT -s 129.134.31.0/ |
- | -A INPUT -j REJECT --reject-with icmp-port-unreachable | + | -A INPUT -s 139.223.200.130/ |
- | + | -A INPUT -s 157.240.0.0/ | |
- | # Accepter les connexions établies sur le LAN : | + | -A INPUT -s 157.240.192.0/ |
- | -A FORWARD -d 192.168.10.0/ | + | -A INPUT -s 157.240.195.0/ |
- | + | -A INPUT -s 157.240.196.0/ | |
- | # Accepter | + | -A INPUT -s 157.240.197.0/ |
- | -A FORWARD -s 192.168.10.0/ | + | -A INPUT -s 157.240.198.0/ |
- | + | -A INPUT -s 157.240.199.0/ | |
- | # Accepter le trafic | + | -A INPUT -s 157.240.200.0/ |
- | -A FORWARD -i br2 -o br2 -j ACCEPT | + | -A INPUT -s 157.240.201.0/ |
- | + | -A INPUT -s 157.240.202.0/ | |
- | # Accepter les paquets redirigés vers des ports particuliers pour le Web vers le serveur web : | + | -A INPUT -s 157.240.203.0/ |
- | -A FORWARD -d 192.168.10.5/ | + | -A INPUT -s 157.240.204.0/ |
- | + | -A INPUT -s 157.240.205.0/ | |
- | # Accepter les paquets redirigés vers des ports particuliers pour le mail vers le serveur | + | -A INPUT -s 157.240.207.0/ |
- | -A FORWARD -d 192.168.10.7/ | + | -A INPUT -s 157.240.208.0/ |
- | + | -A INPUT -s 157.240.209.0/ | |
- | # Accepter les paquets redirigés vers des ports particuliers pour le monitoring | + | -A INPUT -s 157.240.210.0/ |
- | -A FORWARD -d 192.168.10.250/ | + | -A INPUT -s 157.240.211.0/ |
- | + | -A INPUT -s 157.240.212.0/ | |
- | # Tests | + | -A INPUT -s 157.240.214.0/ |
- | ## Accepter les paquets redirigés vers des ports particuliers vers le serveur web : | + | -A INPUT -s 157.240.215.0/ |
- | #-A FORWARD -d 192.168.10.5/ | + | -A INPUT -s 157.240.216.0/ |
- | # | + | -A INPUT -s 157.240.217.0/ |
- | ## Accepter les paquets redirigés vers des ports particuliers pour funkwhale service 5868 vers le serveur | + | -A INPUT -s 157.240.218.0/ |
- | #-A FORWARD | + | -A INPUT -s 157.240.22.0/ |
- | + | -A INPUT -s 157.240.221.0/ | |
- | # On bloque TOUT le trafic en provenance de Meta/ | + | -A INPUT -s 157.240.222.0/ |
- | -A INPUT -s 102.132.96.0/ | + | -A INPUT -s 157.240.223.0/ |
- | -A INPUT -s 103.4.96.0/ | + | -A INPUT -s 157.240.224.0/ |
- | -A INPUT -s 129.134.0.0/ | + | -A INPUT -s 157.240.225.0/ |
- | -A INPUT -s 129.134.160.0/ | + | -A INPUT -s 157.240.226.0/ |
- | -A INPUT -s 129.134.25.0/ | + | -A INPUT -s 157.240.227.0/ |
- | -A INPUT -s 129.134.26.0/ | + | -A INPUT -s 157.240.228.0/ |
- | -A INPUT -s 129.134.27.0/ | + | -A INPUT -s 157.240.229.0/ |
- | -A INPUT -s 129.134.28.0/ | + | -A INPUT -s 157.240.23.0/ |
- | -A INPUT -s 129.134.29.0/ | + | -A INPUT -s 157.240.231.0/ |
- | -A INPUT -s 129.134.30.0/ | + | -A INPUT -s 157.240.232.0/ |
- | -A INPUT -s 129.134.31.0/ | + | -A INPUT -s 157.240.233.0/ |
- | -A INPUT -s 139.223.200.130/ | + | -A INPUT -s 157.240.234.0/ |
- | -A INPUT -s 157.240.0.0/ | + | -A INPUT -s 157.240.235.0/ |
- | -A INPUT -s 157.240.192.0/ | + | -A INPUT -s 157.240.236.0/ |
- | -A INPUT -s 157.240.195.0/ | + | -A INPUT -s 157.240.237.0/ |
- | -A INPUT -s 157.240.196.0/ | + | -A INPUT -s 157.240.238.0/ |
- | -A INPUT -s 157.240.197.0/ | + | -A INPUT -s 157.240.239.0/ |
- | -A INPUT -s 157.240.198.0/ | + | -A INPUT -s 157.240.240.0/ |
- | -A INPUT -s 157.240.199.0/ | + | -A INPUT -s 157.240.24.0/ |
- | -A INPUT -s 157.240.200.0/ | + | -A INPUT -s 157.240.241.0/ |
- | -A INPUT -s 157.240.201.0/ | + | -A INPUT -s 157.240.242.0/ |
- | -A INPUT -s 157.240.202.0/ | + | -A INPUT -s 157.240.243.0/ |
- | -A INPUT -s 157.240.203.0/ | + | -A INPUT -s 157.240.244.0/ |
- | -A INPUT -s 157.240.204.0/ | + | -A INPUT -s 157.240.245.0/ |
- | -A INPUT -s 157.240.205.0/ | + | -A INPUT -s 157.240.247.0/ |
- | -A INPUT -s 157.240.207.0/ | + | -A INPUT -s 157.240.249.0/ |
- | -A INPUT -s 157.240.208.0/ | + | -A INPUT -s 157.240.250.0/ |
- | -A INPUT -s 157.240.209.0/ | + | -A INPUT -s 157.240.25.0/ |
- | -A INPUT -s 157.240.210.0/ | + | -A INPUT -s 157.240.251.0/ |
- | -A INPUT -s 157.240.211.0/ | + | -A INPUT -s 157.240.252.0/ |
- | -A INPUT -s 157.240.212.0/ | + | -A INPUT -s 157.240.253.0/ |
- | -A INPUT -s 157.240.214.0/ | + | -A INPUT -s 157.240.254.0/ |
- | -A INPUT -s 157.240.215.0/ | + | -A INPUT -s 157.240.26.0/ |
- | -A INPUT -s 157.240.216.0/ | + | -A INPUT -s 157.240.27.0/ |
- | -A INPUT -s 157.240.217.0/ | + | -A INPUT -s 157.240.28.0/ |
- | -A INPUT -s 157.240.218.0/ | + | -A INPUT -s 157.240.29.0/ |
- | -A INPUT -s 157.240.22.0/ | + | -A INPUT -s 157.240.30.0/ |
- | -A INPUT -s 157.240.221.0/ | + | -A INPUT -s 157.240.3.0/ |
- | -A INPUT -s 157.240.222.0/ | + | -A INPUT -s 157.240.31.0/ |
- | -A INPUT -s 157.240.223.0/ | + | -A INPUT -s 157.240.5.0/ |
- | -A INPUT -s 157.240.224.0/ | + | -A INPUT -s 157.240.6.0/ |
- | -A INPUT -s 157.240.225.0/ | + | -A INPUT -s 157.240.7.0/ |
- | -A INPUT -s 157.240.226.0/ | + | -A INPUT -s 157.240.8.0/ |
- | -A INPUT -s 157.240.227.0/ | + | -A INPUT -s 157.240.9.0/ |
- | -A INPUT -s 157.240.228.0/ | + | -A INPUT -s 162.254.207.51/ |
- | -A INPUT -s 157.240.229.0/ | + | -A INPUT -s 162.255.119.207/ |
- | -A INPUT -s 157.240.23.0/ | + | -A INPUT -s 172.67.135.213/ |
- | -A INPUT -s 157.240.231.0/ | + | -A INPUT -s 173.252.64.0/ |
- | -A INPUT -s 157.240.232.0/ | + | -A INPUT -s 179.60.192.0/ |
- | -A INPUT -s 157.240.233.0/ | + | -A INPUT -s 185.199.108.153/ |
- | -A INPUT -s 157.240.234.0/ | + | -A INPUT -s 185.199.111.153/ |
- | -A INPUT -s 157.240.235.0/ | + | -A INPUT -s 185.60.216.0/ |
- | -A INPUT -s 157.240.236.0/ | + | -A INPUT -s 198.54.117.211/ |
- | -A INPUT -s 157.240.237.0/ | + | -A INPUT -s 204.15.20.0/ |
- | -A INPUT -s 157.240.238.0/ | + | -A INPUT -s 27.124.125.189/ |
- | -A INPUT -s 157.240.239.0/ | + | -A INPUT -s 31.13.24.0/ |
- | -A INPUT -s 157.240.240.0/ | + | -A INPUT -s 31.13.64.0/ |
- | -A INPUT -s 157.240.24.0/ | + | -A INPUT -s 34.117.168.233/ |
- | -A INPUT -s 157.240.241.0/ | + | -A INPUT -s 37.9.175.187/ |
- | -A INPUT -s 157.240.242.0/ | + | -A INPUT -s 45.130.41.7/ |
- | -A INPUT -s 157.240.243.0/ | + | -A INPUT -s 45.64.40.0/ |
- | -A INPUT -s 157.240.244.0/ | + | -A INPUT -s 45.91.92.164/ |
- | -A INPUT -s 157.240.245.0/ | + | -A INPUT -s 54.81.116.232/ |
- | -A INPUT -s 157.240.247.0/ | + | -A INPUT -s 61.9.242.43/ |
- | -A INPUT -s 157.240.249.0/ | + | -A INPUT -s 64.225.91.73/ |
- | -A INPUT -s 157.240.250.0/ | + | -A INPUT -s 66.220.144.0/ |
- | -A INPUT -s 157.240.25.0/ | + | -A INPUT -s 69.171.224.0/ |
- | -A INPUT -s 157.240.251.0/ | + | -A INPUT -s 74.119.76.0/ |
- | -A INPUT -s 157.240.252.0/ | + | -A INPUT -s 89.223.68.248/ |
- | -A INPUT -s 157.240.253.0/ | + | -A FORWARD -i br2 -m comment --comment " |
- | -A INPUT -s 157.240.254.0/ | + | -A FORWARD -o br2 -m comment --comment " |
- | -A INPUT -s 157.240.26.0/ | + | |
- | -A INPUT -s 157.240.27.0/ | + | |
- | -A INPUT -s 157.240.28.0/ | + | |
- | -A INPUT -s 157.240.29.0/ | + | |
- | -A INPUT -s 157.240.30.0/ | + | |
- | -A INPUT -s 157.240.3.0/ | + | |
- | -A INPUT -s 157.240.31.0/ | + | |
- | -A INPUT -s 157.240.5.0/ | + | |
- | -A INPUT -s 157.240.6.0/ | + | |
- | -A INPUT -s 157.240.7.0/ | + | |
- | -A INPUT -s 157.240.8.0/ | + | |
- | -A INPUT -s 157.240.9.0/ | + | |
- | -A INPUT -s 162.254.207.51/ | + | |
- | -A INPUT -s 162.255.119.207/ | + | |
- | -A INPUT -s 172.67.135.213/ | + | |
- | -A INPUT -s 173.252.64.0/ | + | |
- | -A INPUT -s 179.60.192.0/ | + | |
- | -A INPUT -s 185.199.108.153/ | + | |
- | -A INPUT -s 185.199.111.153/ | + | |
- | -A INPUT -s 185.60.216.0/ | + | |
- | -A INPUT -s 198.54.117.211/ | + | |
- | -A INPUT -s 204.15.20.0/ | + | |
- | -A INPUT -s 27.124.125.189/ | + | |
- | -A INPUT -s 31.13.24.0/ | + | |
- | -A INPUT -s 31.13.64.0/ | + | |
- | -A INPUT -s 34.117.168.233/ | + | |
- | -A INPUT -s 37.9.175.187/ | + | |
- | -A INPUT -s 45.130.41.7/ | + | |
- | -A INPUT -s 45.64.40.0/ | + | |
- | -A INPUT -s 45.91.92.164/ | + | |
- | -A INPUT -s 54.81.116.232/ | + | |
- | -A INPUT -s 61.9.242.43/ | + | |
- | -A INPUT -s 64.225.91.73/ | + | |
- | -A INPUT -s 66.220.144.0/ | + | |
- | -A INPUT -s 69.171.224.0/ | + | |
- | -A INPUT -s 74.119.76.0/ | + | |
- | -A INPUT -s 89.223.68.248/ | + | |
- | + | ||
- | # Rejeter tout le reste : | + | |
- | -A FORWARD -i br2 -j REJECT --reject-with icmp-port-unreachable | + | |
- | -A FORWARD -o br2 -j REJECT --reject-with icmp-port-unreachable | + | |
COMMIT | COMMIT | ||
- | |||
</ | </ | ||
Ligne 338: | Ligne 328: | ||
<code bash> | <code bash> | ||
- | |||
- | *nat | ||
- | |||
- | # Router le Web vers le serveur web : | ||
- | -A PREROUTING -d 2a01: | ||
- | |||
- | # Router le mail envoi/ | ||
- | -A PREROUTING -d 2a01: | ||
- | |||
- | # Tests | ||
- | ## Router les ports des applications vers le serveur web : | ||
- | #-A PREROUTING -d 2a01: | ||
- | # | ||
- | ## Router le port 5868 pour Funkwhale vers le serveur audio : | ||
- | #-A PREROUTING -d 2a01: | ||
- | |||
- | ## Router le 8484 pour Zabbix vers le serveur monitoring (inactif, pas d'IPv6 pour l' | ||
- | #-A PREROUTING -d 2a01: | ||
- | |||
- | # Masquerading sur tous les ports dans le sens sortant (VM -> Internet) | ||
- | -A POSTROUTING -s :: | ||
- | -A POSTROUTING -s :: | ||
- | -A POSTROUTING -s :: | ||
- | |||
- | COMMIT | ||
- | |||
*filter | *filter | ||
- | + | -A INPUT -m conntrack --ctstate RELATED, | |
- | # Accepter le trafic basique : ICMP, boucle locale et connexionx | + | -A INPUT -i lo -m comment --comment " |
- | -A INPUT -m conntrack --ctstate RELATED, | + | -A INPUT ! -i lo -d :: |
- | -A INPUT -i lo -j ACCEPT | + | -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 22 -m comment --comment " |
- | -A INPUT ! -i lo -d ::1/128 -j REJECT | + | -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 1984 -m comment --comment "Accepter le SSH" |
- | + | -A INPUT -p tcp -m tcp -m conntrack --ctstate NEW --dport 52365 -m comment --comment " | |
- | # Accepter le SSH : | + | -A INPUT -i br2 -p udp -m udp -m multiport --dports 53 -m comment --comment " |
- | -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 22 -j ACCEPT | + | -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 53 -m comment --comment " |
- | -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 1984 -j ACCEPT | + | -A INPUT -i br2 -p tcp -m multiport --dport 2049 -m comment --comment " |
- | + | -A INPUT -i br2 -p tcp -m multiport --dport 111 -m comment --comment " | |
- | # Accepter le tunnel | + | -A INPUT -p tcp -s :: |
- | -A INPUT -p tcp -m tcp -m conntrack --ctstate NEW --dport 52365 -j ACCEPT | + | -A INPUT -p udp --dport 111 -m comment --comment " |
- | + | -A INPUT -p tcp --dport 111 -m comment --comment " | |
- | # Accepter les requêtes DNS (port 53) depuis les VM : | + | -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 10050 -m comment --comment " |
- | -A INPUT -i br2 -p udp -m udp -m multiport --dports 53 -j ACCEPT | + | -A INPUT -p icmpv6 --icmpv6-type parameter-problem |
- | -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 53 -j ACCEPT | + | -A INPUT -p icmpv6 --icmpv6-type echo-request |
- | + | -A INPUT -p icmpv6 --icmpv6-type echo-reply | |
- | # Bloquer | + | -A INPUT -p icmpv6 --icmpv6-type router-advertisement -m hl --hl-eq 255 -m comment --comment "On accepte l' |
- | -A INPUT -i br2 -p tcp -m multiport --dport 2049 -j ACCEPT | + | -A INPUT -p icmpv6 --icmpv6-type router-solicitation -m hl --hl-eq 255 -m comment --comment "On accepte l' |
- | -A INPUT -i br2 -p tcp -m multiport --dport 111 -j ACCEPT | + | -A INPUT -p icmpv6 --icmpv6-type neighbour-advertisement -m hl --hl-eq 255 -m comment --comment "On accepte l' |
- | -A INPUT -p tcp -s :: | + | -A INPUT -p icmpv6 --icmpv6-type neighbour-solicitation -m hl --hl-eq 255 -m comment --comment "On accepte l' |
- | -A INPUT -p udp --dport 111 -j DROP | + | -A INPUT -p icmpv6 --icmpv6-type echo-request -m conntrack --ctstate NEW -m limit --limit 1/s --limit-burst 1 -m comment --comment "On refuse les trop nombreux ping" |
- | -A INPUT -p tcp --dport 111 -j DROP | + | -A INPUT -p icmpv6 --icmpv6-type echo-request -m comment --comment "On refuse |
- | + | -A INPUT -m conntrack --ctstate INVALID | |
- | # Accepter | + | -A INPUT -m comment --comment "On refuse tout le reste en entrée" |
- | -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 10050 -j ACCEPT | + | -A FORWARD -d 2a01:4f8:231:aa6::/64 -o br2 -m conntrack --ctstate RELATED, |
- | + | -A FORWARD -s 2a01:4f8:231:aa6::/64 -i br2 -m comment --comment "Accepter le trafic | |
- | # On accepte l' | + | -A FORWARD -i br2 -o br2 -m comment --comment " |
- | -A INPUT -p icmpv6 --icmpv6-type parameter-problem -j ACCEPT | + | -A FORWARD -d 2a01:4f8:231:aa6:: |
- | -A INPUT -p icmpv6 --icmpv6-type echo-request -j ACCEPT | + | -A FORWARD -d 2a01:4f8:231:aa6:: |
- | -A INPUT -p icmpv6 --icmpv6-type echo-reply -j ACCEPT | + | -A FORWARD -d 2a01:4f8:231:aa6:: |
- | -A INPUT -p icmpv6 --icmpv6-type router-advertisement -m hl --hl-eq 255 -j ACCEPT | + | -A INPUT -s 2620:0:1c00::/40 -m comment |
- | -A INPUT -p icmpv6 --icmpv6-type router-solicitation -m hl --hl-eq 255 -j ACCEPT | + | -A INPUT -s 2620: |
- | -A INPUT -p icmpv6 --icmpv6-type neighbour-advertisement -m hl --hl-eq 255 -j ACCEPT | + | -A INPUT -s 2a03: |
- | -A INPUT -p icmpv6 --icmpv6-type neighbour-solicitation -m hl --hl-eq 255 -j ACCEPT | + | -A INPUT -s 2a03: |
- | + | -A INPUT -s 2a03: | |
- | # On refuse les trop nombreux ping : | + | -A INPUT -s 2a03: |
- | -A INPUT -p icmpv6 --icmpv6-type echo-request -m conntrack --ctstate NEW -m limit --limit 1/s --limit-burst 1 -j ACCEPT | + | -A INPUT -s 2a03: |
- | -A INPUT -p icmpv6 --icmpv6-type echo-request -j DROP | + | -A INPUT -s 2a03: |
- | + | -A INPUT -s 2a03: | |
- | # On refuse | + | -A INPUT -s 2a03: |
- | -A INPUT -m conntrack --ctstate INVALID -j DROP | + | -A INPUT -s 2a03: |
- | -A INPUT -j REJECT | + | -A INPUT -s 2a03: |
- | + | -A INPUT -s 2a03: | |
- | # Accepter les connexions établies sur le LAN : | + | -A INPUT -s 2a03: |
- | -A FORWARD -d ::ffff:c0a8:a00/64 -o br2 -m conntrack --ctstate RELATED, | + | -A INPUT -s 2a03: |
- | + | -A INPUT -s 2a03: | |
- | # Accepter | + | -A INPUT -s 2a03: |
- | -A FORWARD -s ::ffff:c0a8:a00/64 -i br2 -j ACCEPT | + | -A INPUT -s 2a03: |
- | + | -A INPUT -s 2a03: | |
- | # Accepter le trafic | + | -A INPUT -s 2a03: |
- | -A FORWARD -i br2 -o br2 -j ACCEPT | + | -A INPUT -s 2a03: |
- | + | -A INPUT -s 2a03: | |
- | # Accepter les paquets redirigés vers des ports particuliers pour le Web vers le serveur web : | + | -A INPUT -s 2a03: |
- | -A FORWARD -d ::ffff:c0a8:a05 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 80,443 -j ACCEPT | + | -A INPUT -s 2a03: |
- | + | -A INPUT -s 2a03: | |
- | # Accepter les paquets redirigés vers des ports particuliers pour le mail vers le serveur | + | -A INPUT -s 2a03: |
- | -A FORWARD -d ::ffff:c0a8:a05 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 587,993,25 -j ACCEPT | + | -A INPUT -s 2c0f: |
- | + | -A INPUT -s 2c0f: | |
- | # Tests | + | -A INPUT -s 2c0f: |
- | ## Accepter les paquets redirigés vers des ports particuliers vers le serveur | + | -A INPUT -s 2c0f: |
- | #-A FORWARD -d :: | + | -A INPUT -s 2c0f: |
- | # | + | -A INPUT -s 2c0f: |
- | ## Accepter les paquets redirigés vers des ports particuliers pour funkwhale service 5868 vers le serveur audio : | + | -A INPUT -s 2c0f: |
- | #-A FORWARD -d ::ffff:c0a8:a09 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports | + | -A INPUT -s 2c0f: |
- | + | -A FORWARD -i br2 -m comment --comment " | |
- | # Pas d'IPv6 pour le moment, inactif : | + | -A FORWARD -o br2 -m comment --comment " |
- | ## Accepter les paquets redirigés vers des ports particuliers pour Zabbix tcp 8484 vers le serveur monitoring | + | |
- | #-A FORWARD | + | |
- | + | ||
- | # On bloque TOUT le trafic en provenance de Meta/ | + | |
- | -A INPUT -s 2620: | + | |
- | -A INPUT -s 2620: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2a03: | + | |
- | -A INPUT -s 2c0f: | + | |
- | -A INPUT -s 2c0f: | + | |
- | -A INPUT -s 2c0f: | + | |
- | -A INPUT -s 2c0f: | + | |
- | -A INPUT -s 2c0f: | + | |
- | -A INPUT -s 2c0f: | + | |
- | -A INPUT -s 2c0f: | + | |
- | -A INPUT -s 2c0f: | + | |
- | + | ||
- | # Rejeter tout le reste : | + | |
- | -A FORWARD -i br2 -j REJECT | + | |
- | -A FORWARD -o br2 -j REJECT | + | |
COMMIT | COMMIT | ||
- | |||
</ | </ | ||
==== Paquets installés ==== | ==== Paquets installés ==== |