Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
tech:hypervisor-01 [29/09/2023 17:40] – [Adressage IP] LibertAdmintech:hypervisor-01 [06/11/2023 15:04] (Version actuelle) – [Routage et filtrage avec iptables] LibertAdmin
Ligne 21: Ligne 21:
      * [[tech:audio-01|audio-01]] : Debian stable, Nginx, application Funkwhale, ffmpeg      * [[tech:audio-01|audio-01]] : Debian stable, Nginx, application Funkwhale, ffmpeg
      * [[tech:mail-01|mail-01]] : Debian stable, services mail Postfix, Dovecot, Amavis, Spamassassin, ClamAV, Sieve (déploiement à venir)      * [[tech:mail-01|mail-01]] : Debian stable, services mail Postfix, Dovecot, Amavis, Spamassassin, ClamAV, Sieve (déploiement à venir)
-     * <del>[[tech:proxy-01|proxy-01]] : Debian stable, proxy frontal Nginx et pare-feu iptables, bannissement par Fail2Ban</del> Ce proxy a été supprimé le 30 janvier 2022. +     * <del>[[tech:proxy-01|proxy-01]] : Debian stable, proxy frontal Nginx et pare-feu iptables, bannissement par Fail2Ban</del> Serveur supprimé le 30 janvier 2022. 
-     * [[tech:sql-01|sql-01]] : Debian stable, services MySQL et PostgreSQL +     * [[tech:sql-01|sql-01]] : Debian stable, services MySQLPostgreSQL et Redis 
-     * [[tech:video-01|video-01]] : Debian stable, Nginx, application Peertube, ffmpeg +     <del>[[tech:video-01|video-01]] : Debian stable, Nginx, application Peertube, ffmpeg</del> Serveur supprimé en 2023. 
-     * <del>[[tech:visio-01|visio-01]] : Debian stable, Nginx, application Jitsi Meet</del> +     * <del>[[tech:visio-01|visio-01]] : Debian stable, Nginx, application Jitsi Meet</del> Serveur supprimé en 2022. 
-     * [[tech:web-01|web-01]] : Debian stable, Nginx, services web, sites, blogs, sites internes, service Redis+     * [[tech:web-01|web-01]] : Debian stable, Nginx, ffmpeg, services web, sites, blogs, sites internes
  
-Toutes les requêtes venant d'internet sont pré-routées et redirigées via iptables vers la ou les machines virtuelles concernées. L'infrastructure interne est protégée par plusieurs pare-feu et un système de bannissement. +Toutes les requêtes venant d'internet sont pré-routées et redirigées via iptables vers la ou les machines virtuelles concernées. L'infrastructure interne est protégée par un pare-feu et un système de bannissement. 
  
 ===== Configuration ===== ===== Configuration =====
 ==== Système d'exploitation ==== ==== Système d'exploitation ====
-Debian stable (Debian 11 « Bullseye » au moment de la rédaction de cette page)+  * 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'adressage pour créer 2 réseaux internes : un pour les machines virtuelles et un pour notre administration, puis on bridgé le réseau des VM sur le réseau adressé avec l'IP publique. L'interface enp0trucmachin est devenue br0. La ligne « pre-up » corrige notamment un problème connu d'instabilité de connexion sur la carte réseau de ce serveur. Hetzner offre une IP publique. Nous avons modifié l'adressage pour créer 2 réseaux internes : un pour les machines virtuelles et un pour notre administration, puis on bridgé le réseau des VM sur le réseau adressé avec l'IP publique. L'interface enp0trucmachin est devenue br0. La ligne « pre-up » corrige notamment un problème connu d'instabilité de connexion sur la carte réseau de ce serveur.
  
-L'adressage du réseau d'administration (10.X.X.X) a été masqué pour des raisons de sécurité.+L'adressage du réseau d'administration sur l'interface ''br1'' a été masqué pour des raisons de sécurité.
  
-L'adressage en IPv6 est une adaptation du réseau IPv4 vers IPv6. À terme, il sera judicieux qu'on utilise le réseau /64 qu'Hetzner nous offre, ça fait quand même 2^64 adresses IP disponibles, à savoir 18 446 744 073 709 551 616 adresses !+L'adressage en IPv6 utilise le réseau /64 qu'Hetzner nous offre, ça fait quand même 2^64 adresses IP disponibles, à savoir 18 446 744 073 709 551 616 adresses !
  
 <code> <code>
Ligne 64: Ligne 65:
 iface br0 inet6 static iface br0 inet6 static
  bridge_ports enp0s31f6  bridge_ports enp0s31f6
- bridge_hz enp0s31f6+ bridge_hw enp0s31f6
  bridge_fd 0  bridge_fd 0
  bridge_stp off  bridge_stp off
Ligne 78: Ligne 79:
  bridge_fd 0  bridge_fd 0
  bridge_stp off  bridge_stp off
- address 10.X.Y.Z + address XXX 
- netmask 255.X.Y.Z+ netmask 255.255.255.0
  
 iface br1 inet6 static iface br1 inet6 static
Ligne 85: Ligne 86:
  bridge_fd 0  bridge_fd 0
  bridge_stp off  bridge_stp off
- address ::ffff:a0a:a01+ address XXX
  netmask 120  netmask 120
  
Ligne 101: Ligne 102:
  bridge_fd 0  bridge_fd 0
  bridge_stp off  bridge_stp off
- address ::ffff:c0a8:a01+ address 2a01:4f8:231:aa6::1
  netmask 120  netmask 120
  
Ligne 121: Ligne 122:
  
 <code bash> <code bash>
- 
 *nat *nat
- 
 # Router le trafic Web vers le serveur web : # Router le trafic Web vers le serveur web :
 -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 -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
- 
 # Router le mail envoi/réception vers le serveur mail : # Router le mail envoi/réception vers le serveur mail :
 -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 -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
- 
-# Tests 
-## 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,1936,3000,3001,9000,9001 -j DNAT --to-destination 192.168.10.5 
-# 
-## Router le port 5868 vers le serveur audio pour Funkwhale : 
-#-A PREROUTING -d 159.69.59.13/32 -p tcp -m tcp --syn -m multiport --dports 5868 -j DNAT --to-destination 192.168.10.9 
- 
 # Router le 8484 pour Zabbix vers le serveur monitoring : # Router le 8484 pour Zabbix vers le serveur monitoring :
 -A PREROUTING -d 159.69.59.13/32 -p tcp -m tcp --syn -m multiport --dports 8484 -j DNAT --to-destination 192.168.10.250 -A PREROUTING -d 159.69.59.13/32 -p tcp -m tcp --syn -m multiport --dports 8484 -j DNAT --to-destination 192.168.10.250
- 
 # Ne pas appliquer le masquerading sur le broadcast/multicast : # Ne pas appliquer le masquerading sur le broadcast/multicast :
 -A POSTROUTING -s 192.168.10.0/24 -d 224.0.0.0/24 -j RETURN -A POSTROUTING -s 192.168.10.0/24 -d 224.0.0.0/24 -j RETURN
 -A POSTROUTING -s 192.168.10.0/24 -d 255.255.255.255/32 -j RETURN -A POSTROUTING -s 192.168.10.0/24 -d 255.255.255.255/32 -j RETURN
- 
 # Masquerading sur tous les ports dans le sens sortant (VM -> Internet) # 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 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/24 ! -d 192.168.10.0/24 -p udp -j MASQUERADE --to-ports 1024-65535
 -A POSTROUTING -s 192.168.10.0/24 ! -d 192.168.10.0/24 -j MASQUERADE -A POSTROUTING -s 192.168.10.0/24 ! -d 192.168.10.0/24 -j MASQUERADE
- 
 COMMIT COMMIT
- 
 *filter *filter
- 
 # Accepter le trafic basique : ICMP, boucle locale et connexions établies, en entrée : # Accepter le trafic basique : ICMP, boucle locale et connexions établies, en entrée :
 -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
 -A INPUT -i lo -j ACCEPT -A INPUT -i lo -j ACCEPT
 -A INPUT -p icmp --icmp-type 8 -m conntrack --ctstate NEW -j ACCEPT -A INPUT -p icmp --icmp-type 8 -m conntrack --ctstate NEW -j ACCEPT
- 
 # Accepter le SSH : # Accepter le SSH :
 -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 22 -j ACCEPT -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 22 -j ACCEPT
 -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 1984 -j ACCEPT -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 1984 -j ACCEPT
- 
 # Accepter les connexions pour le mail : # Accepter les connexions pour le mail :
 -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 587,993,25 -j ACCEPT -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 587,993,25 -j ACCEPT
- 
 # Accepter le tunnel SSH vers le serveur web-01 sur le port 52365 : # Accepter le tunnel SSH vers le serveur web-01 sur le port 52365 :
 -A INPUT -p tcp -m tcp -m conntrack --ctstate NEW --dport 52365 -j ACCEPT -A INPUT -p tcp -m tcp -m conntrack --ctstate NEW --dport 52365 -j ACCEPT
- 
 # Accepter les requêtes DNS (port 53) depuis les VM : # Accepter les requêtes DNS (port 53) depuis les VM :
 -A INPUT -i br2 -p udp -m udp -m multiport --dports 53 -j ACCEPT -A INPUT -i br2 -p udp -m udp -m multiport --dports 53 -j ACCEPT
 -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 53 -j ACCEPT -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 53 -j ACCEPT
- 
 # Bloquer les requêtes rpcbind/portmap en entrée ***depuis l'extérieur*** : # Bloquer les requêtes rpcbind/portmap en entrée ***depuis l'extérieur*** :
 -A INPUT -i br2 -p tcp -m multiport --dport 2049 -j ACCEPT -A INPUT -i br2 -p tcp -m multiport --dport 2049 -j ACCEPT
Ligne 178: Ligne 158:
 -A INPUT -p udp --dport 111 -j DROP -A INPUT -p udp --dport 111 -j DROP
 -A INPUT -p tcp --dport 111 -j DROP -A INPUT -p tcp --dport 111 -j DROP
- 
 # Accepter les requêtes Zabbix passives (port 10050) depuis les VM : # Accepter les requêtes Zabbix passives (port 10050) depuis les VM :
 -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 10050 -j ACCEPT -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 10050 -j ACCEPT
- 
 # On refuse les trop nombreux ping : # On refuse les trop nombreux ping :
 -A INPUT -p icmp  --icmp-type 8 -m conntrack --ctstate NEW -m limit --limit 1/s --limit-burst 1 -j ACCEPT -A INPUT -p icmp  --icmp-type 8 -m conntrack --ctstate NEW -m limit --limit 1/s --limit-burst 1 -j ACCEPT
 -A INPUT -p icmp -j DROP -A INPUT -p icmp -j DROP
- 
 # On refuse tout le reste : # On refuse tout le reste :
 -A INPUT -m conntrack --ctstate INVALID -j DROP -A INPUT -m conntrack --ctstate INVALID -j DROP
 -A INPUT -p tcp -m tcp -j REJECT --reject-with tcp-reset -A INPUT -p tcp -m tcp -j REJECT --reject-with tcp-reset
 -A INPUT -j REJECT --reject-with icmp-port-unreachable -A INPUT -j REJECT --reject-with icmp-port-unreachable
- 
 # Accepter les connexions établies sur le LAN : # Accepter les connexions établies sur le LAN :
 -A FORWARD -d 192.168.10.0/24 -o br2 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT -A FORWARD -d 192.168.10.0/24 -o br2 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
- 
 # Accepter le trafic sortant depuis le LAN : # Accepter le trafic sortant depuis le LAN :
 -A FORWARD -s 192.168.10.0/24 -i br2 -j ACCEPT -A FORWARD -s 192.168.10.0/24 -i br2 -j ACCEPT
- 
 # Accepter le trafic interne entre les VM : # Accepter le trafic interne entre les VM :
 -A FORWARD -i br2 -o br2 -j ACCEPT -A FORWARD -i br2 -o br2 -j ACCEPT
- 
 # Accepter les paquets redirigés vers des ports particuliers pour le Web vers le serveur web : # Accepter les paquets redirigés vers des ports particuliers pour le Web vers le serveur web :
 -A FORWARD -d 192.168.10.5/32 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 80,443,8484 -j ACCEPT -A FORWARD -d 192.168.10.5/32 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 80,443,8484 -j ACCEPT
- 
 # Accepter les paquets redirigés vers des ports particuliers pour le mail vers le serveur mail : # Accepter les paquets redirigés vers des ports particuliers pour le mail vers le serveur mail :
 -A FORWARD -d 192.168.10.7/32 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 587,993,25 -j ACCEPT -A FORWARD -d 192.168.10.7/32 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 587,993,25 -j ACCEPT
- 
 # Accepter les paquets redirigés vers des ports particuliers pour le monitoring vers le serveur de monitoring : # Accepter les paquets redirigés vers des ports particuliers pour le monitoring vers le serveur de monitoring :
 -A FORWARD -d 192.168.10.250/32 -o br2 -p tcp -m tcp -m conntrack --ctstate NEW -m multiport --dports 8484 -j ACCEPT -A FORWARD -d 192.168.10.250/32 -o br2 -p tcp -m tcp -m conntrack --ctstate NEW -m multiport --dports 8484 -j ACCEPT
- 
-# Tests 
-## Accepter les paquets redirigés vers des ports particuliers vers le serveur web : 
-#-A FORWARD -d 192.168.10.5/32 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 1935,1936,3000,3001,9000,9001 -j ACCEPT 
-# 
-## Accepter les paquets redirigés vers des ports particuliers pour funkwhale service 5868 vers le serveur audio : 
-#-A FORWARD -d 192.168.10.9/32 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 5868 -j ACCEPT 
- 
 # On bloque TOUT le trafic en provenance de Meta/Facebook/Instagram/Threads : # On bloque TOUT le trafic en provenance de Meta/Facebook/Instagram/Threads :
 -A INPUT -s 102.132.96.0/20 -j DROP -A INPUT -s 102.132.96.0/20 -j DROP
Ligne 325: Ligne 288:
 -A INPUT -s 74.119.76.0/22 -j DROP -A INPUT -s 74.119.76.0/22 -j DROP
 -A INPUT -s 89.223.68.248/32 -j DROP -A INPUT -s 89.223.68.248/32 -j DROP
- 
 # Rejeter tout le reste : # Rejeter tout le reste :
 -A FORWARD -i br2 -j REJECT --reject-with icmp-port-unreachable -A FORWARD -i br2 -j REJECT --reject-with icmp-port-unreachable
 -A FORWARD -o br2 -j REJECT --reject-with icmp-port-unreachable -A FORWARD -o br2 -j REJECT --reject-with icmp-port-unreachable
- 
 COMMIT COMMIT
- 
 </code> </code>
  
Ligne 337: Ligne 297:
  
 <code bash> <code bash>
- +# Accepter le trafic basique : ICMP, boucle locale et connexions établies, en entrée :
-*nat +
- +
-# Router le Web vers le serveur web : +
--A PREROUTING -d 2a01:4f8:231:aa6::13 -p tcp -m tcp --syn -m multiport --dports 80,443 -j DNAT --to-destination ::ffff:c0a8:a05 +
- +
-# Router le mail envoi/réception vers le serveur mail : +
--A PREROUTING -d 2a01:4f8:231:aa6::13 -p tcp -m tcp --syn -m multiport --dports 587,993,25 -j DNAT --to-destination ::ffff:c0a8:a07 +
- +
-# Tests +
-## Router les ports des applications vers le serveur web : +
-#-A PREROUTING -d 2a01:4f8:231:aa6::13 -p tcp -m tcp --syn -m multiport --dports 1935,1936,3000,3001,9000,9001 -j DNAT --to-destination ::ffff:c0a8:a05 +
-+
-## Router le port 5868 pour Funkwhale vers le serveur audio : +
-#-A PREROUTING -d 2a01:4f8:231:aa6::13 -p tcp -m tcp --syn -m multiport --dports 5868 -j DNAT --to-destination ::ffff:c0a8:a09 +
- +
-## Router le 8484 pour Zabbix vers le serveur monitoring (inactif, pas d'IPv6 pour l'instant sur ce serveur) : +
-#-A PREROUTING -d 2a01:4f8:231:aa6::13 -p tcp -m tcp --syn -m multiport --dports 8484 -j DNAT --to-destination ::ffff:c0a8:XYZ +
- +
-# Masquerading sur tous les ports dans le sens sortant (VM -> Internet) +
--A POSTROUTING -s ::ffff:c0a8:a00/64 ! -d ::ffff:c0a8:0a00/64 -p tcp -j MASQUERADE --to-ports 1024-65535 +
--A POSTROUTING -s ::ffff:c0a8:a00/64 ! -d ::ffff:c0a8:0a00/64 -p udp -j MASQUERADE --to-ports 1024-65535 +
--A POSTROUTING -s ::ffff:c0a8:a00/64 ! -d ::ffff:c0a8:0a00/64 -j MASQUERADE +
- +
-COMMIT +
- +
-*filter +
- +
-# Accepter le trafic basique : ICMP, boucle locale et connexionx établies, en entrée :+
 -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
 -A INPUT -i lo -j ACCEPT -A INPUT -i lo -j ACCEPT
 -A INPUT ! -i lo -d ::1/128 -j REJECT -A INPUT ! -i lo -d ::1/128 -j REJECT
- 
 # Accepter le SSH : # Accepter le SSH :
 -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 22 -j ACCEPT -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 22 -j ACCEPT
 -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 1984 -j ACCEPT -A INPUT -p tcp -m tcp --syn -m conntrack --ctstate NEW --dport 1984 -j ACCEPT
- 
 # Accepter le tunnel SSH vers le serveur web-01 sur le port 52365 : # Accepter le tunnel SSH vers le serveur web-01 sur le port 52365 :
 -A INPUT -p tcp -m tcp -m conntrack --ctstate NEW --dport 52365 -j ACCEPT -A INPUT -p tcp -m tcp -m conntrack --ctstate NEW --dport 52365 -j ACCEPT
- 
 # Accepter les requêtes DNS (port 53) depuis les VM : # Accepter les requêtes DNS (port 53) depuis les VM :
 -A INPUT -i br2 -p udp -m udp -m multiport --dports 53 -j ACCEPT -A INPUT -i br2 -p udp -m udp -m multiport --dports 53 -j ACCEPT
 -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 53 -j ACCEPT -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 53 -j ACCEPT
- 
 # Bloquer les requêtes rpcbind/portmap en entrée ***depuis l'extérieur*** : # Bloquer les requêtes rpcbind/portmap en entrée ***depuis l'extérieur*** :
 -A INPUT -i br2 -p tcp -m multiport --dport 2049 -j ACCEPT -A INPUT -i br2 -p tcp -m multiport --dport 2049 -j ACCEPT
Ligne 387: Ligne 315:
 -A INPUT -p udp --dport 111 -j DROP -A INPUT -p udp --dport 111 -j DROP
 -A INPUT -p tcp --dport 111 -j DROP -A INPUT -p tcp --dport 111 -j DROP
- 
 # Accepter les requêtes Zabbix passives (port 10050) depuis les VM : # Accepter les requêtes Zabbix passives (port 10050) depuis les VM :
 -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 10050 -j ACCEPT -A INPUT -i br2 -p tcp -m tcp -m multiport --dports 10050 -j ACCEPT
- 
 # On accepte l'ICMPv6 indispensable au fonctionnement d'IPv6 : # On accepte l'ICMPv6 indispensable au fonctionnement d'IPv6 :
 -A INPUT -p icmpv6 --icmpv6-type parameter-problem -j ACCEPT -A INPUT -p icmpv6 --icmpv6-type parameter-problem -j ACCEPT
Ligne 399: Ligne 325:
 -A INPUT -p icmpv6 --icmpv6-type neighbour-advertisement -m hl --hl-eq 255 -j ACCEPT -A INPUT -p icmpv6 --icmpv6-type neighbour-advertisement -m hl --hl-eq 255 -j ACCEPT
 -A INPUT -p icmpv6 --icmpv6-type neighbour-solicitation -m hl --hl-eq 255 -j ACCEPT -A INPUT -p icmpv6 --icmpv6-type neighbour-solicitation -m hl --hl-eq 255 -j ACCEPT
- 
 # On refuse les trop nombreux ping : # On refuse les trop nombreux ping :
 -A INPUT  -p icmpv6 --icmpv6-type echo-request -m conntrack --ctstate NEW -m limit --limit 1/s --limit-burst 1 -j ACCEPT -A INPUT  -p icmpv6 --icmpv6-type echo-request -m conntrack --ctstate NEW -m limit --limit 1/s --limit-burst 1 -j ACCEPT
 -A INPUT  -p icmpv6 --icmpv6-type echo-request -j DROP -A INPUT  -p icmpv6 --icmpv6-type echo-request -j DROP
- 
 # On refuse tout le reste en entrée : # On refuse tout le reste en entrée :
 -A INPUT -m conntrack --ctstate INVALID -j DROP -A INPUT -m conntrack --ctstate INVALID -j DROP
 -A INPUT -j REJECT -A INPUT -j REJECT
- 
 # Accepter les connexions établies sur le LAN : # Accepter les connexions établies sur le LAN :
--A FORWARD -d ::ffff:c0a8:a00/64 -o br2 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT +-A FORWARD -d 2a01:4f8:231:aa6::/64 -o br2 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
 # Accepter le trafic sortant depuis le LAN : # Accepter le trafic sortant depuis le LAN :
--A FORWARD -s ::ffff:c0a8:a00/64 -i br2 -j ACCEPT +-A FORWARD -s 2a01:4f8:231:aa6::/64 -i br2 -j ACCEPT
 # Accepter le trafic interne entre les VM : # Accepter le trafic interne entre les VM :
 -A FORWARD -i br2 -o br2 -j ACCEPT -A FORWARD -i br2 -o br2 -j ACCEPT
- 
 # Accepter les paquets redirigés vers des ports particuliers pour le Web vers le serveur web : # Accepter les paquets redirigés vers des ports particuliers pour le Web vers le serveur web :
--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 FORWARD -d 2a01:4f8:231:aa6::5 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 80,443 -j ACCEPT
 # Accepter les paquets redirigés vers des ports particuliers pour le mail vers le serveur mail : # Accepter les paquets redirigés vers des ports particuliers pour le mail vers le serveur mail :
--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 FORWARD -d 2a01:4f8:231:aa6::7 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 587,993,25 -j ACCEPT 
- +# Accepter les paquets redirigés vers des ports particuliers pour Zabbix tcp 8484 vers le serveur monitoring : 
-# Tests +-A FORWARD -d 2a01:4f8:231:aa6::250 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 8484 -j ACCEPT
-## Accepter les paquets redirigés vers des ports particuliers vers le serveur web : +
-#-A FORWARD -d ::ffff:c0a8:a05 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 1935,1936,3000,3001,9000,9001 -j ACCEPT +
-+
-## Accepter les paquets redirigés vers des ports particuliers pour funkwhale service 5868 vers le serveur audio : +
-#-A FORWARD -d ::ffff:c0a8:a09 -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 5868 -j ACCEPT +
- +
-# Pas d'IPv6 pour le moment, inactif : +
-## Accepter les paquets redirigés vers des ports particuliers pour Zabbix tcp 8484 vers le serveur monitoring : +
-#-A FORWARD -d ::ffff:c0a8:XYZ -o br2 -p tcp -m tcp --syn -m conntrack --ctstate NEW -m multiport --dports 8484 -j ACCEPT +
 # On bloque TOUT le trafic en provenance de Meta/Facebook/Instagram/Threads : # On bloque TOUT le trafic en provenance de Meta/Facebook/Instagram/Threads :
 -A INPUT -s 2620:0:1c00::/40 -j DROP -A INPUT -s 2620:0:1c00::/40 -j DROP
Ligne 469: Ligne 378:
 -A INPUT -s 2c0f:ef78:11::/48 -j DROP -A INPUT -s 2c0f:ef78:11::/48 -j DROP
 -A INPUT -s 2c0f:ef78:12::/48 -j DROP -A INPUT -s 2c0f:ef78:12::/48 -j DROP
- 
 # Rejeter tout le reste : # Rejeter tout le reste :
 -A FORWARD -i br2 -j REJECT -A FORWARD -i br2 -j REJECT
 -A FORWARD -o br2 -j REJECT -A FORWARD -o br2 -j REJECT
- 
 COMMIT COMMIT
- 
 </code> </code>
 ==== Paquets installés ==== ==== Paquets installés ====
Ligne 494: Ligne 400:
 apt-utils apt-utils
 at at
-augeas-lenses+at-spi2-common
 base-files base-files
 base-passwd base-passwd
Ligne 518: Ligne 424:
 cpp cpp
 cpp-10 cpp-10
 +cpp-12
 cron cron
 +cron-daemon-common
 cryptsetup cryptsetup
 cryptsetup-bin cryptsetup-bin
Ligne 525: Ligne 433:
 dash dash
 dbus dbus
 +dbus-bin
 +dbus-daemon
 +dbus-session-bus-common
 +dbus-system-bus-common
 dbus-user-session dbus-user-session
 dconf-gsettings-backend:amd64 dconf-gsettings-backend:amd64
 dconf-service dconf-service
-dctrl-tools 
 debconf debconf
 debconf-i18n debconf-i18n
Ligne 561: Ligne 472:
 gcc-10 gcc-10
 gcc-10-base:amd64 gcc-10-base:amd64
 +gcc-11-base:amd64
 +gcc-12
 +gcc-12-base:amd64
 gcc-9-base:amd64 gcc-9-base:amd64
 gdisk gdisk
 gettext-base gettext-base
-glib-networking:amd64 
-glib-networking-common 
-glib-networking-services 
 gpgv gpgv
 grep grep
Ligne 575: Ligne 486:
 grub-efi-amd64-bin grub-efi-amd64-bin
 grub-pc-bin grub-pc-bin
-gsettings-desktop-schemas 
 gtk-update-icon-cache gtk-update-icon-cache
 gzip gzip
Ligne 583: Ligne 493:
 iftop iftop
 ifupdown ifupdown
 +inetutils-telnet
 init init
 initramfs-tools initramfs-tools
Ligne 589: Ligne 500:
 intel-microcode intel-microcode
 iotop iotop
 +ipcalc-ng
 iproute2 iproute2
 iptables iptables
Ligne 611: Ligne 523:
 libargon2-1:amd64 libargon2-1:amd64
 libasan6:amd64 libasan6:amd64
 +libasan8:amd64
 libasound2:amd64 libasound2:amd64
 libasound2-data libasound2-data
 libasyncns0:amd64 libasyncns0:amd64
 libatk1.0-0:amd64 libatk1.0-0:amd64
-libatk1.0-data 
 libatk-bridge2.0-0:amd64 libatk-bridge2.0-0:amd64
 libatomic1:amd64 libatomic1:amd64
Ligne 622: Ligne 534:
 libaudit1:amd64 libaudit1:amd64
 libaudit-common libaudit-common
-libaugeas0:amd64 
 libavahi-client3:amd64 libavahi-client3:amd64
 libavahi-common3:amd64 libavahi-common3:amd64
Ligne 630: Ligne 541:
 libboost-iostreams1.74.0:amd64 libboost-iostreams1.74.0:amd64
 libbpf0:amd64 libbpf0:amd64
 +libbpf1:amd64
 libbrlapi0.8:amd64 libbrlapi0.8:amd64
 libbrotli1:amd64 libbrotli1:amd64
Ligne 644: Ligne 556:
 libcapstone4:amd64 libcapstone4:amd64
 libc-bin libc-bin
-libcbor0:amd64+libcbor0.8:amd64
 libcc1-0:amd64 libcc1-0:amd64
 libc-dev-bin libc-dev-bin
Ligne 665: Ligne 577:
 libdconf1:amd64 libdconf1:amd64
 libdebconfclient0:amd64 libdebconfclient0:amd64
 +libdecor-0-0:amd64
 libdeflate0:amd64 libdeflate0:amd64
 libdevmapper1.02.1:amd64 libdevmapper1.02.1:amd64
Ligne 672: Ligne 585:
 libdpkg-perl libdpkg-perl
 libdrm2:amd64 libdrm2:amd64
 +libdrm-amdgpu1:amd64
 libdrm-common libdrm-common
 +libdrm-intel1:amd64
 +libdrm-nouveau2:amd64
 +libdrm-radeon1:amd64
 +libduktape207:amd64
 libdw1:amd64 libdw1:amd64
 libedit2:amd64 libedit2:amd64
Ligne 680: Ligne 598:
 libepoxy0:amd64 libepoxy0:amd64
 libestr0:amd64 libestr0:amd64
-libevent-2.1-7:amd64+libevent-core-2.1-7:amd64
 libexecs0:amd64 libexecs0:amd64
 libexpat1:amd64 libexpat1:amd64
Ligne 688: Ligne 606:
 libfdt1:amd64 libfdt1:amd64
 libffi7:amd64 libffi7:amd64
 +libffi8:amd64
 libfido2-1:amd64 libfido2-1:amd64
-libfl2:amd64 +libfile-find-rule-perl 
-libflac8:amd64+libflac12:amd64
 libfontconfig1:amd64 libfontconfig1:amd64
 libfreetype6:amd64 libfreetype6:amd64
Ligne 696: Ligne 615:
 libfstrm0:amd64 libfstrm0:amd64
 libfuse2:amd64 libfuse2:amd64
 +libfuse3-3:amd64
 libgbm1:amd64 libgbm1:amd64
 libgcc-10-dev:amd64 libgcc-10-dev:amd64
 +libgcc-12-dev:amd64
 libgcc-s1:amd64 libgcc-s1:amd64
 libgcrypt20:amd64 libgcrypt20:amd64
Ligne 704: Ligne 625:
 libgdk-pixbuf-2.0-0:amd64 libgdk-pixbuf-2.0-0:amd64
 libgdk-pixbuf2.0-common libgdk-pixbuf2.0-common
 +libgl1:amd64
 +libgl1-mesa-dri:amd64
 +libglapi-mesa:amd64
 libglib2.0-0:amd64 libglib2.0-0:amd64
 +libglvnd0:amd64
 +libglx0:amd64
 +libglx-mesa0:amd64
 libgmp10:amd64 libgmp10:amd64
 libgnutls30:amd64 libgnutls30:amd64
Ligne 710: Ligne 637:
 libgpg-error0:amd64 libgpg-error0:amd64
 libgpm2:amd64 libgpm2:amd64
 +libgprofng0:amd64
 libgraphite2-3:amd64 libgraphite2-3:amd64
 libgssapi-krb5-2:amd64 libgssapi-krb5-2:amd64
Ligne 719: Ligne 647:
 libhogweed6:amd64 libhogweed6:amd64
 libibverbs1:amd64 libibverbs1:amd64
-libicu67:amd64+libicu72:amd64
 libidn2-0:amd64 libidn2-0:amd64
 libinih1:amd64 libinih1:amd64
Ligne 727: Ligne 655:
 libisl23:amd64 libisl23:amd64
 libitm1:amd64 libitm1:amd64
 +libjack-jackd2-0:amd64
 libjansson4:amd64 libjansson4:amd64
 libjbig0:amd64 libjbig0:amd64
 +libjemalloc2:amd64
 libjpeg62-turbo:amd64 libjpeg62-turbo:amd64
 libjson-c5:amd64 libjson-c5:amd64
-libjson-glib-1.0-0:amd64 
-libjson-glib-1.0-common 
 libk5crypto3:amd64 libk5crypto3:amd64
 libkeyutils1:amd64 libkeyutils1:amd64
Ligne 740: Ligne 668:
 libkrb5support0:amd64 libkrb5support0:amd64
 liblcms2-2:amd64 liblcms2-2:amd64
-libldap-2.4-2:amd64+libldap-2.5-0:amd64
 libldap-common libldap-common
 +liblerc4:amd64
 +libllvm15:amd64
 liblmdb0:amd64 liblmdb0:amd64
 liblocale-gettext-perl liblocale-gettext-perl
Ligne 757: Ligne 687:
 libmnl0:amd64 libmnl0:amd64
 libmount1:amd64 libmount1:amd64
 +libmp3lame0:amd64
 libmpc3:amd64 libmpc3:amd64
-libmpdec3:amd64 
 libmpfr6:amd64 libmpfr6:amd64
 +libmpg123-0:amd64
 libncurses6:amd64 libncurses6:amd64
 libncursesw6:amd64 libncursesw6:amd64
 libndctl6:amd64 libndctl6:amd64
-libnetcf1:amd64 
 libnetfilter-conntrack3:amd64 libnetfilter-conntrack3:amd64
 libnettle8:amd64 libnettle8:amd64
 libnewt0.52:amd64 libnewt0.52:amd64
 libnfnetlink0:amd64 libnfnetlink0:amd64
-libnfsidmap2:amd64+libnfsidmap1:amd64
 libnftables1:amd64 libnftables1:amd64
 libnftnl11:amd64 libnftnl11:amd64
Ligne 781: Ligne 711:
 libnss-systemd:amd64 libnss-systemd:amd64
 libnuma1:amd64 libnuma1:amd64
 +libnumber-compare-perl
 libnvpair3linux libnvpair3linux
 libogg0:amd64 libogg0:amd64
Ligne 801: Ligne 732:
 libpcre3:amd64 libpcre3:amd64
 libpcsclite1:amd64 libpcsclite1:amd64
-libperl5.32:amd64+libperl5.36:amd64
 libpipeline1:amd64 libpipeline1:amd64
 libpixman-1-0:amd64 libpixman-1-0:amd64
Ligne 809: Ligne 740:
 libpolkit-gobject-1-0:amd64 libpolkit-gobject-1-0:amd64
 libpopt0:amd64 libpopt0:amd64
 +libproc2-0:amd64
 libprocps8:amd64 libprocps8:amd64
 libprotobuf-c1:amd64 libprotobuf-c1:amd64
-libproxy1v5:amd64 
 libpsl5:amd64 libpsl5:amd64
 libpulse0:amd64 libpulse0:amd64
-libpython3.9-minimal:amd64 +libpython3.11-minimal:amd64 
-libpython3.9-stdlib:amd64+libpython3.11-stdlib:amd64
 libpython3-stdlib:amd64 libpython3-stdlib:amd64
 libquadmath0:amd64 libquadmath0:amd64
 librdmacm1:amd64 librdmacm1:amd64
 libreadline8:amd64 libreadline8:amd64
-librest-0.7-0:amd64 
 librtmp1:amd64 librtmp1:amd64
 +libsamplerate0:amd64
 libsasl2-2:amd64 libsasl2-2:amd64
 libsasl2-modules:amd64 libsasl2-modules:amd64
 libsasl2-modules-db:amd64 libsasl2-modules-db:amd64
 +libsdl2-2.0-0:amd64
 libseccomp2:amd64 libseccomp2:amd64
 libselinux1:amd64 libselinux1:amd64
-libsemanage1:amd64+libsemanage2:amd64
 libsemanage-common libsemanage-common
 libsensors5:amd64 libsensors5:amd64
 libsensors-config libsensors-config
 libsepol1:amd64 libsepol1:amd64
 +libsepol2:amd64
 libsigc++-2.0-0v5:amd64 libsigc++-2.0-0v5:amd64
 libslang2:amd64 libslang2:amd64
Ligne 837: Ligne 770:
 libsmartcols1:amd64 libsmartcols1:amd64
 libsndfile1:amd64 libsndfile1:amd64
-libsoup2.4-1:amd64 +libsndio7.0:amd64 
-libsoup-gnome2.4-1:amd64+libsodium23:amd64
 libspice-server1:amd64 libspice-server1:amd64
 libsqlite3-0:amd64 libsqlite3-0:amd64
 libss2:amd64 libss2:amd64
 libssh2-1:amd64 libssh2-1:amd64
 +libssh-4:amd64
 libssl1.1:amd64 libssl1.1:amd64
 +libssl3:amd64
 libstdc++6:amd64 libstdc++6:amd64
 libsystemd0:amd64 libsystemd0:amd64
 +libsystemd-shared:amd64
 libtasn1-6:amd64 libtasn1-6:amd64
-libtext-charwidth-perl +libtext-charwidth-perl:amd64 
-libtext-iconv-perl+libtext-glob-perl 
 +libtext-iconv-perl:amd64
 libtext-wrapi18n-perl libtext-wrapi18n-perl
 libthai0:amd64 libthai0:amd64
 libthai-data libthai-data
-libtiff5:amd64+libtiff6:amd64
 libtinfo6:amd64 libtinfo6:amd64
 libtirpc3:amd64 libtirpc3:amd64
Ligne 858: Ligne 795:
 libtirpc-dev:amd64 libtirpc-dev:amd64
 libtsan0:amd64 libtsan0:amd64
 +libtsan2:amd64
 libubsan1:amd64 libubsan1:amd64
 libuchardet0:amd64 libuchardet0:amd64
Ligne 863: Ligne 801:
 libunistring2:amd64 libunistring2:amd64
 libunwind8:amd64 libunwind8:amd64
-liburing1:amd64 +liburcu8:amd64 
-libusb-0.1-4:amd64+liburing2:amd64
 libusb-1.0-0:amd64 libusb-1.0-0:amd64
 libusbredirparser1:amd64 libusbredirparser1:amd64
Ligne 870: Ligne 808:
 libuutil3linux libuutil3linux
 libuv1:amd64 libuv1:amd64
-libvdeplug2+libva2:amd64 
 +libva-drm2:amd64 
 +libvdeplug2:amd64
 libvirglrenderer1:amd64 libvirglrenderer1:amd64
 libvirt0:amd64 libvirt0:amd64
Ligne 884: Ligne 824:
 libvte-2.91-0:amd64 libvte-2.91-0:amd64
 libvte-2.91-common libvte-2.91-common
 +libvulkan1:amd64
 libwayland-client0:amd64 libwayland-client0:amd64
 libwayland-cursor0:amd64 libwayland-cursor0:amd64
 libwayland-egl1:amd64 libwayland-egl1:amd64
 libwayland-server0:amd64 libwayland-server0:amd64
-libwebp6:amd64+libwebp7:amd64
 libwrap0:amd64 libwrap0:amd64
 libx11-6:amd64 libx11-6:amd64
 libx11-data libx11-data
 +libx11-xcb1:amd64
 libxapian30:amd64 libxapian30:amd64
 libxau6:amd64 libxau6:amd64
 libxcb1:amd64 libxcb1:amd64
 +libxcb-dri2-0:amd64
 +libxcb-dri3-0:amd64
 +libxcb-glx0:amd64
 +libxcb-present0:amd64
 +libxcb-randr0:amd64
 libxcb-render0:amd64 libxcb-render0:amd64
 libxcb-shm0:amd64 libxcb-shm0:amd64
 +libxcb-sync1:amd64
 +libxcb-xfixes0:amd64
 libxcomposite1:amd64 libxcomposite1:amd64
 libxcursor1:amd64 libxcursor1:amd64
 libxdamage1:amd64 libxdamage1:amd64
 libxdmcp6:amd64 libxdmcp6:amd64
-libxencall1:amd64 
-libxendevicemodel1:amd64 
-libxenevtchn1:amd64 
-libxenforeignmemory1:amd64 
-libxengnttab1:amd64 
-libxenhypfs1:amd64 
-libxenmisc4.14:amd64 
-libxenstore3.0:amd64 
-libxentoolcore1:amd64 
-libxentoollog1:amd64 
 libxext6:amd64 libxext6:amd64
 libxfixes3:amd64 libxfixes3:amd64
Ligne 919: Ligne 858:
 libxrandr2:amd64 libxrandr2:amd64
 libxrender1:amd64 libxrender1:amd64
-libxslt1.1:amd64+libxshmfence1:amd64 
 +libxss1:amd64
 libxtables12:amd64 libxtables12:amd64
 +libxxf86vm1:amd64
 libxxhash0:amd64 libxxhash0:amd64
 libyajl2:amd64 libyajl2:amd64
 +libz3-4:amd64
 libzfs4linux libzfs4linux
-libzpool4linux+libzpool5linux
 libzstd1:amd64 libzstd1:amd64
 linux-base linux-base
 linux-compiler-gcc-10-x86 linux-compiler-gcc-10-x86
 +linux-compiler-gcc-12-x86
 linux-headers-5.10.0-15-amd64 linux-headers-5.10.0-15-amd64
 linux-headers-5.10.0-15-common linux-headers-5.10.0-15-common
 linux-headers-5.10.0-16-amd64 linux-headers-5.10.0-16-amd64
 linux-headers-5.10.0-16-common linux-headers-5.10.0-16-common
-linux-image-5.10.0-15-amd64 +linux-headers-5.10.0-17-amd64 
-linux-image-5.10.0-16-amd64 +linux-headers-5.10.0-17-common 
-linux-image-5.10.0-9-amd64+linux-headers-5.10.0-18-amd64 
 +linux-headers-5.10.0-18-common 
 +linux-headers-5.10.0-19-amd64 
 +linux-headers-5.10.0-19-common 
 +linux-headers-5.10.0-25-amd64 
 +linux-headers-5.10.0-25-common 
 +linux-headers-6.1.0-12-amd64 
 +linux-headers-6.1.0-12-common 
 +linux-headers-amd64 
 +linux-image-5.10.0-25-amd64 
 +linux-image-6.1.0-12-amd64
 linux-image-amd64 linux-image-amd64
 linux-kbuild-5.10 linux-kbuild-5.10
 +linux-kbuild-6.1
 linux-libc-dev:amd64 linux-libc-dev:amd64
 lm-sensors lm-sensors
Ligne 980: Ligne 934:
 perl perl
 perl-base perl-base
-perl-modules-5.32+perl-modules-5.36 
 +pkexec
 policykit-1 policykit-1
 +polkitd
 procps procps
 publicsuffix publicsuffix
 python3 python3
-python3.9 +python3.11 
-python3.9-minimal+python3.11-minimal
 python3-apt python3-apt
 python3-certifi python3-certifi
 python3-chardet python3-chardet
 +python3-charset-normalizer
 python3-debian python3-debian
 python3-debianbts python3-debianbts
Ligne 999: Ligne 956:
 python3-pkg-resources python3-pkg-resources
 python3-pycurl python3-pycurl
 +python3-pyparsing
 python3-pysimplesoap python3-pysimplesoap
 python3-reportbug python3-reportbug
Ligne 1005: Ligne 963:
 python3-urllib3 python3-urllib3
 python-apt-common python-apt-common
 +python-is-python3
 qemu-system-common qemu-system-common
 qemu-system-data qemu-system-data
-qemu-system-gui:amd64+qemu-system-gui
 qemu-system-x86 qemu-system-x86
 qemu-utils qemu-utils
Ligne 1013: Ligne 972:
 reportbug reportbug
 rpcbind rpcbind
 +rpcsvc-proto
 rsync rsync
 rsyslog rsyslog
Ligne 1019: Ligne 979:
 sed sed
 sensible-utils sensible-utils
 +sgml-base
 shared-mime-info shared-mime-info
 shim-helpers-amd64-signed shim-helpers-amd64-signed
Ligne 1039: Ligne 1000:
 task-ssh-server task-ssh-server
 tcpdump tcpdump
-telnet 
 traceroute traceroute
 +tree
 tzdata tzdata
 ucf ucf
 udev udev
 +usrmerge
 util-linux util-linux
 +util-linux-extra
 util-linux-locales util-linux-locales
 vim vim
Ligne 1052: Ligne 1015:
 wget wget
 whiptail whiptail
 +x11-common
 xfsprogs xfsprogs
 xkb-data xkb-data
 +xml-core
 xxd xxd
 xz-utils xz-utils
 +zabbix-agent2
 zfs-dkms zfs-dkms
 zfsutils-linux zfsutils-linux
 zlib1g:amd64 zlib1g:amd64
 znapzend znapzend
 +zstd
 </code> </code>
 ==== Stockage ZFS ==== ==== Stockage ZFS ====