• =?UTF-8?Q?Re=3A_Configurer_le_firewall_d=27un_h=C3=B4te_libvirt/qem?= =

    From NoSpam@21:1/5 to All on Tue Jan 21 19:00:01 2025
    Bonsoir.

    Pour ma part j'utilise les hooks de libvirt en faisant un nft flush
    ruleset && nft -f mesRegles après que les interfaces libvirt soient montées.

    Bien évidemment mon fichier mesRegles contient les règles de libvirt qui
    ont été sauvegardées au préalable. Je pense que cela doit même pouvoir
    se faire avant le flush.

    L'autre solution est de créer ses règles dans des tables diffŕentes que celles de libvirt.

    Le 21/01/2025 à 16:14, Olivier a écrit :
    Bonjour,

    J'ai une machine sous Bookworm, qui fait office d'hôte libvirt.
    Elle héberge une ou deux VM.

    J'ai besoin de changer son adressage en lui donnant un IP publique.
    Je voudrai la protéger en rejetant tout le traffic WAN entrant qui ne
    vient pas de quelques
    adresses spécifiques.

    En préparant cet ajout, j'ai été surpris de voir qu'il pré-existe déjà un tas de règles iptables/nftables probablement ajoutées par libvirt:

    # nft list ruleset
    # Warning: table ip filter is managed by iptables-nft, do not touch!
    table ip filter {
    chain LIBVIRT_INP {
    iifname "virbr0" udp dport 53 counter packets 0 bytes 0 accept
    iifname "virbr0" tcp dport 53 counter packets 0 bytes 0 accept
    iifname "virbr0" udp dport 67 counter packets 0 bytes 0 accept
    iifname "virbr0" tcp dport 67 counter packets 0 bytes 0 accept
    }
    ...

    Ces règles semblent se concentrer sur les échanges entre la machine
    hôte et les invités. Elle ne précisent rien sur les échanges entre la machine hôte et Internet. Ces règles semblent correspondre aux règles
    du répertoire /etc/libvirt/nwfilter.

    1. Comment comprendre la remarque ci-dessus "# Warning: table ip
    filter is managed by iptables-nft, do not touch!" ?
    Quel est le fichier de config qui, au démarrage, lance la
    configuration iptables-nft visible plus haut ?

    2. Comment puis-je intégrer en toute sécurité, mes propres règles de firewalling ?

    Slts

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Basile Starynkevitch@21:1/5 to NoSpam on Wed Jan 22 09:00:01 2025
    On Tue, 2025-01-21 at 18:59 +0100, NoSpam wrote:
    Bonsoir.

    Pour ma part j'utilise les hooks de libvirt en faisant un nft flush
    ruleset && nft -f mesRegles après que les interfaces libvirt soient montées.

    Bien évidemment mon fichier mesRegles contient les règles de libvirt qui ont été sauvegardées au préalable. Je pense que cela doit même pouvoir se faire avant le flush.

    L'autre solution est de créer ses règles dans des tables diffŕentes que celles de libvirt.

    Le 21/01/2025 à 16:14, Olivier a écrit :
    Bonjour,

    J'ai une machine sous Bookworm, qui fait office d'hôte libvirt.
    Elle héberge une ou deux VM.

    J'ai besoin de changer son adressage en lui donnant un IP publique.

    Probablement le paquet fail2ban est pertinent.
    --
    Basile STARYNKEVITCH <basile@starynkevitch.net>
    8 rue de la Faïencerie
    92340 Bourg-la-Reine, France
    http://starynkevitch.net/Basile & https://github.com/bstarynk

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From NoSpam@21:1/5 to All on Thu Jan 23 10:40:02 2025
    Le 23/01/2025 à 09:15, Olivier a écrit :
    Je pense qu'a minima, l'origine des règles automatiquement mises en
    ligne (par libvirtd semble-t-il) devrait être rappelée avec les règles elles-même, d'autant que nftables est assez nouveau pour beaucoup.
    Je pense signaler un bug en ce sens.

    Je ne vois pas ou il y aurait un bug. De plus, le problème est identique
    si l'on utilise iptables !

    Le mer. 22 janv. 2025 à 14:56, didier gaumet <didier.gaumet@gmail.com> a écrit :
    Le 22/01/2025 à 13:51, Olivier a écrit :
    Le paquet libvirt-daemon-config-nwfilter est bien installé et je pense
    moi aussi que les règles implémentées correspondent à celles-ci dans >>> le répertoire nwfilter de /etc/libvirt.
    Il reste à identifier le mécanisme déclencheur.
    à la lecture du lien précédent(https://libvirt.org/firewall.html):
    "[...]filters can be associated with individual guest NICs via the
    libvirt domain XML format.[...]",
    j'ai l'impression que ça se déclare dans le fichier XML de l'invité pour >> chaque interface réseau (après que les règles aient été crées à coups de
    virsh nwfilter-*)?

    Pas taper: j'y connais que dalle et je suis pas sûr d'y comprendre
    goutte ;-)



    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)