WikiMiNET

La documentation technique et administrative

Outils pour utilisateurs

Outils du site


wiki:cluster:proxmox:firewall

Firewall Proxmox

Ce n'est plus d'actualité. Mais c'est super cool, il faudrait refaire pour les machines importantes.

Depuis la version 3.3, Proxmox propose un service de firewall pour les machines virtuelles. Nous avons décidé d'intégrer ce firewall à nos VMs afin de fournir plus de sécurité : si un attaquant a accès à une de nos machines du cluster, et bah c'est pas la fête du slip car il ne pourra communiquer qu'avec un nombre réduit de services.

La politique choisie est donc de tout interdir en entrée, et d'autoriser au cas par cas les accès.

Un peu de théorie...

Ce firewall est très simple d'usage, rien à voir avec des règles iptables.

Les règles sont définies pour chaques hotes. Pour chaque règle, vous retouvez les classiques adresses et port de sources et destinations, le protocole de transport, l'interface, etc… Bref classique. Vous pouvez utiliser un adressage CIDR, et les noms de ports classiques ( ex : http ).

Proxmox fournit une première abstraction fort utile : les security group. Les security group sont un ensemble de règles qui sont appliquées à chaque membre du security group, permettant une gestion centralisée, et évite des redondances.

Une deuxième abstraction sont les ipSet. Un ipSet est un ensemble d'ips auquel on peut choisir d'appliquer une règle. Le but est ici d'éviter des règles multiples.

...Et un peu de pratique

Pour créer un security groupe, rendez vous dans le data center :

  1. Onglet firewall
  2. Sous onglet security group
  3. Vous pouvez créer de nouveaux security groups via Group : create, ou ajouter des règles sur un groupe existant en le selectionnant et en faisant rule : add.

Pour créer un ipSet :

  1. Onglet firewall du datacenter ( on va éviter de créer des data sets par machine… )
  2. Sous onglet ipSet…

Comment éditer le firewall de ma machine ?

  1. Va sur ta machine
  2. Sélectionne l'onglet firewall
  3. Dans le sous onglet rules tu peux ajouter des interfaces aux security group on créer des règles. Une interface non spécifiée correspond à toutes les interfaces de ta machine.

Et comment j'active le firewall de ma machine ?

  1. Va sur ta machine
  2. Onglet firewall, sous onglet Options, passe Enable Firewall à Yes
  3. Ensuite, onglet network, double clique sur chacune de tes interfaces et coche l'option firewall.

Qu'est ce que j'ai besoin de savoir pour travailler sur le firewall MiNET ?

  1. Sur toute machine que tu crées, il te faudra faire ceci :
    1. Ajouter la machine au security group ping ( permet de pinguer tes interfaces : utile pour voir si l'ip est disponible… )
    2. Ajouter ton interface d'administration au groupe zabbix-agent. C'est mieux si tu comptes dialoguer avec notre serveur de monitoring.
    3. Ajouter ton interface d'administration au groupe ssh. C'est mieux si tu comptes y accéder directement depuis les VPNs.
    4. Ajouter ton interface d'administration au goupe puppet-agent. C'est requis pour pouvoir dialoguer avec le serveur proxmox.
    5. Tu peux ensuite créer gentiment les services de ta machine.
  2. Utilise uniquement les ipSet et les security groups définis dans datacenter.

Certains services particuliers auquel je dois faire attention ? ( Ces services font l'objet de restrictions particulièrement sévères )

  1. Un serveur qui doit échanger des infos avec le SQL MiNET doit être dans l'ipSet sql_clients
  2. Un serveur qui doit échanger des infos avec sqlHosting doit être dans l'ipSet sqlhosting_clients
  3. Un serveur qui doit avoir accès au LDAP MiNET doit être dans l'ipSet
  4. Un serveur VPN doit être dans l'ipSet vpns pour pouvoir se connecter en SSH sur les autres machines.
  5. Un noeud de notre cluster elastic search doit être dans l'ipSet elastic_search_cluster
  6. Un MX doit être dans l'ipSet MX pour pouvoir communiquer avec le reste du mail system.
  7. Les serveurs clients de l'API ADH5 doivent être dans le security group adh5_api_clients
wiki/cluster/proxmox/firewall.txt · Dernière modification: 2020/06/27 18:16 (modification externe)