Projet

Général

Profil

Evolution #5723

eole-firewall : séparation des accès aux services des restrictions d'accès

Ajouté par Emmanuel GARETTE il y a plus de 10 ans. Mis à jour il y a environ 10 ans.

Statut:
Fermé
Priorité:
Normal
Catégorie:
-
Début:
Echéance:
17/01/2014
% réalisé:

100%

Temps passé:
Distribution:
EOLE 2.4

Description

L'activation d'un serveur devrait rendre accessible ce service (soit par NAT soit en ouvrant firewall sur ce port).

Par ailleurs il faudrait pouvoir restreindre l'accès à des services pour une classe d'utilisateur.


Demandes liées

Lié à Documentations - Tâche #6313: Documenter la gestion du pare-feu en 2.4 Fermé 20/01/2015
Lié à eole-common - Evolution #6276: Prise en compte de scripts firewall additionnels Fermé 11/10/2013
Lié à eole-common - Evolution #6781: pouvoir ajouter des règles de pare-feu facilement Fermé 17/01/2014
Lié à eole-annuaire - Evolution #6959: Balises liées au firewall commentées dans 20_annuaire.xml Fermé 17/01/2014
Lié à eole-ltsp-server - Tâche #4773: Mettre à jour / ajouter les règles de pare-feu pour eole-ltsp Fermé 29/04/2016
Lié à Gaspacho Agent - Tâche #9770: .fw à transformer dans le dico 21_gaspacho-agent.xml Fermé 21/05/2015
Copié vers eole-common - Tâche #7698: eole-firewall bloque les conteneurs Fermé 19/03/2014 21/03/2014

Révisions associées

Révision 47a7c808 (diff)
Ajouté par Emmanuel GARETTE il y a plus de 10 ans

Il est maintenant possible de définir n'importe quel type d'objet tiramisu (et pas seulement les symlink)
Ajout de service_access (ref #5723)

Révision 283a9876 (diff)
Ajouté par Emmanuel GARETTE il y a plus de 10 ans

ouvre le firewall (ref #5723)

Révision ae09bb26 (diff)
Ajouté par Emmanuel GARETTE il y a plus de 10 ans

prise en compte des balises service_access pour eole-firewall (ref #5723)

Révision a8c00c47 (diff)
Ajouté par Emmanuel GARETTE il y a plus de 10 ans

la génération de hosts.allow et nat_rules.sh est maintenant fait par un template (ref #5723)

Révision cca63cfd (diff)
Ajouté par Emmanuel GARETTE il y a plus de 10 ans

problème dans la dtd (ref #5723)

Révision c51c4dca (diff)
Ajouté par Emmanuel GARETTE il y a plus de 10 ans

ajout de service_restriction (ref #5723)

Révision c15424cd (diff)
Ajouté par Emmanuel GARETTE il y a plus de 10 ans

ouvre.firewall est maintenant un template. Cela permet de reconstruire les règles de NAT lorsqu'on ouvre le firewall.

tmpl/nat_rules.sh gère maintenant tous les cas (sur le maitre, dans le conteneur, avec ou sans NAT, ...)

ref #5723

Révision 2e9e059b (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

- Finalisation de la gestion du firewall mais désactivé par défaut
- Utilisation de run-part pour exécuter les scripts dans /usr/share/eole/bastion/data/ (fixes #6781) (fixes #6276)

ref #5723

Révision 052a2819 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

Voir commit precedent
ref #5723

Révision ba387293 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

Gestion des balises firewall ref #5723

Révision 48bb1fcc (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision d7012882 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

ajoute le support de 'activate' pour les access_restriction (ref #5723)

Révision 6bb6df8e (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

support de 'activate' + ne pas prendre en compte les restrictions avec variable desactivee (ref #5723)

Révision 5f41acd0 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision 1dd5924b (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision 29c1130a (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision 63ae45f7 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision f92d9c09 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

mise à jour des règles de firewall (fixes #5723) (fixes #6959)

Révision 5e4a72db (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

ajout du support de service_accessslist + copie des requires du service vers les balises service_* (ref #5723)

Révision 3a56e2f9 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

ajout du support de service_accessslist (ref #5723)

Révision 60258f86 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

retrait de *list inutile (ref #5723)

Révision c4cf8f50 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision ad3caacf (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

pour la balise ip, le type etait network_type, pas assez clair, remplacé par ip_type (ref #5723)

Révision 15ffb350 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

pour la balise ip, le type etait network_type, pas assez clair, remplacé par ip_type (ref #5723)

Révision b1dc44b1 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

support du protocole dans le port (ref #5723)

Révision b860d8ca (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

pour la balise ip, le type etait network_type, pas assez clair, remplacé par ip_type (ref #5723)

Révision a54c61af (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision 415b6dbf (diff)
Ajouté par Fabrice Barconnière il y a environ 10 ans

Ajout echo-request et chmod +x 00-static_rules
ref #5723 @1h

Révision 4c9933fb (diff)
Ajouté par Fabrice Barconnière il y a environ 10 ans

Adaptation firewall à run-parts
ref #5723 @30m

Révision 2a2eb1f3 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

ne pas généré de règle si le port/tcpwrapper est une variable et la variable n'existe pas (ref #5723)

Révision 36f43024 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

ne pas appliquer de règle de firewall si le firewall est désactive (ref #5723)

Révision 0076e23b (diff)
Ajouté par Fabrice Barconnière il y a environ 10 ans

redefine à oui variable activer_firewall
ref #5723 @15m

Révision 875e496e (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision 0e1c6b07 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)
remplacement de hidden_if_(not_)in par des disabled_if_(not_)in

Révision 38f8ec1e (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

avoir le droit d'avoir plusieurs restriction puor la même ip (ref #5723)

Révision 57e0639e (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

gestion des doublons de rèlge : le dernier a raison (ref #5723)

Révision 0316a9e3 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)
remplacement des hidden_*_in par disabled_*_in

Révision c2cb6385 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723) + remplacement des hidden_*_in en disabled_*_in

Révision 407aed17 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision 64208cf5 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision e6b545e0 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723) + remplacement des hidden_*_in en disabled_*_in

Révision 19d20178 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision d2c70b7a (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723) + remplacement des hidden_*_in en disabled_*_in

Révision ad97eb7e (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision 0fd74a6c (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision 86de3c72 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision b8233819 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

pouvoir utiliser une variable pour interface (ref #5723)

Révision cfe543c0 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision d1ce6c11 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision 66bc7405 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723) + remplacement des hidden_*_in en disabled_*_in

Révision 381d48c5 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

suppression du fichier .fw inutile (ref #5723)

Révision 3ec4f29f (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision 224d7f4e (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

suppression du fichier .fw inutile (ref #5723)

Révision 0a68f310 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

conversion du .fw en balise (ref #5723)

Révision 81fbd456 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

support des interfaces 'auto' (ref #5723)

Révision 789d2c4d (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

ajout de la fonction eosfunc get_interface_from_ip (ref #5723)

Révision 174d4876 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

lightsquid_port est lié à eole-proxy, pas ead (ref #5723)

Révision 77430af1 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

lightsquid_port est lié à eole-proxy, pas ead (ref #5723)

Révision e82a884b (diff)
Ajouté par Joël Cuissinat il y a environ 10 ans

Conversion du .fw en balises (ref #5723, ref #7110 @10m)

Révision eea8dd3d (diff)
Ajouté par Joël Cuissinat il y a environ 10 ans

Correction syntaxe des balises de firewall

ref #5723, ref #7110 @5m

Révision 4da109a2 (diff)
Ajouté par Emmanuel GARETTE il y a environ 10 ans

creole.dtd : ajout de service_accesslist|service_restrictionlist à target (ref #5723)

Révision 3b12f69a (diff)
Ajouté par Joël Cuissinat il y a environ 10 ans

  • tmpl/50-nat_rules : cal_interface => calc_interface

Ref #5723 @10m
Ref #7144

Révision 98d20d56 (diff)
Ajouté par Fabrice Barconnière il y a environ 10 ans

dicos/25_nginx.xml : correction mauvaises fins de balise
ref #5723 @30m

Historique

#1 Mis à jour par Emmanuel GARETTE il y a plus de 10 ans

Proposition :

rajouter le port/tcpwrapper/protocol dans la balise service.

Par exemple :

<service port="80" tcpwrapper="httpd">apache2</service>

Puis pouvoir rajouter des règles de firewall type :

<firewall service='apache2' ....>

#2 Mis à jour par Daniel Dehennin il y a plus de 10 ans

Voici une idée de balisage pour les services :

<services>

  <!-- New service -->
  <service>

    <name>
    bidule
    </name>

    <tcpwrapper>
      bidule
    </tcpwrapper>

    <ports>
      <port>42</port>
      <port>4242</port>
    </ports>

  </service>

  <service>
    <name>
      chose
    </name>

    <ports>
      <!--
      <port-start/end /> are exclusive with <port />
      -->
      <port-start>43</port-start>
      <port-end>48</port-end>
    </ports>

  </service>

  <!-- Redefine a service -->
  <service>

    <name>
    truc
    </name>

    <!--
    Delete any tcpwrapper settings
    Just define an empty element
    -->
    <tcpwrapper />

  </service>
</services>

Embarquer des sous éléments au lieu d’attributs permet d’intégrer plus de choses, par exemple pour les variables on pourrait y mettre l’aide et les contraintes ;-)

#3 Mis à jour par Emmanuel GARETTE il y a plus de 10 ans

Le problème c'est que cela casse la compatibilité avec la 2.3.

Je propose la solution suivante :

- pas de modification de la balise <service/>
- ajout de la base <service_access/> suivante :

<service_access name="nom_du_service">
    <ports>...</ports>
    <tcpwrappers>...</tcpwrappers>
</service>

#4 Mis à jour par Emmanuel GARETTE il y a plus de 10 ans

  • Tracker changé de Anomalie à Evolution
  • % réalisé changé de 0 à 40
    <containers>
        <container name="proxy" id='20'>
            <service method='upstart'>squid3</service>
            <service_access service='squid3'>
                <port type="SymLinkOption">test_port</port>
                <port>3129</port>
            </service_access>
            <service_restriction service='squid3'>
                <ip interface='eth0'>192.168.1.1</ip>
                <ip interface='eth1' netmask='netmask_admin_eth0' type_netmask='SymLinkOption' type_ip='SymLinkOption'>ip_admin_eth0</ip>
            </service_restriction>
        </container>
    </containers>

La déclaration se fait donc en 3 temps :

- déclaration du service en tant que tel :
- déclaration des accès (port + tcpwrapper)
- déclaration des autorisations (0/0 sinon)

Cela génère 3 templates :

- hosts.allow pour tcpwrapper
- nat_rules.sh pour restreindre les accès au niveau iptables
- ouvre.firewall pour ajouter uniquement les règles de nat

Reste à faire :

- valider le fonctionnement ;
- lancer le script avec les règles de firewall.

#5 Mis à jour par Joël Cuissinat il y a plus de 10 ans

  • Version cible changé de Eole 2.4-dev-3 à Eole 2.4-alpha

#6 Mis à jour par Joël Cuissinat il y a plus de 10 ans

  • Version cible Eole 2.4-alpha supprimé

#7 Mis à jour par Emmanuel GARETTE il y a environ 10 ans

  • Version cible mis à Eole 2.4-beta3

#8 Mis à jour par Joël Cuissinat il y a environ 10 ans

  • Version cible changé de Eole 2.4-beta3 à Eole 2.4-RC2

#9 Mis à jour par Joël Cuissinat il y a environ 10 ans

  • Assigné à mis à Emmanuel GARETTE
  • Version cible changé de Eole 2.4-RC2 à Eole 2.4-RC1

#10 Mis à jour par Emmanuel GARETTE il y a environ 10 ans

  • Statut changé de Nouveau à Résolu
  • % réalisé changé de 40 à 100

#11 Mis à jour par Fabrice Barconnière il y a environ 10 ans

  • Echéance mis à 17/01/2014
  • Version cible changé de Eole 2.4-RC1 à Eole 2.4-beta3

paquet refait

#12 Mis à jour par Gilles Grandgérard il y a environ 10 ans

  • Assigné à changé de Emmanuel GARETTE à Gilles Grandgérard

#13 Mis à jour par Gilles Grandgérard il y a environ 10 ans

  • Statut changé de Résolu à Fermé

incomplet en bêta 3, se poursuit en RC1 sous forme de demandes particulières.
Les évolutions liées à cette demande sont validées par les demandes suivantes (RC1)

Formats disponibles : Atom PDF