Project

General

Profile

Evolution #5723

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

Added by Emmanuel GARETTE almost 8 years ago. Updated about 7 years ago.

Status:
Fermé
Priority:
Normal
Category:
-
Start date:
Due date:
01/17/2014
% Done:

100%

Spent time:
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.


Related issues

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

Associated revisions

Revision 47a7c808 (diff)
Added by Emmanuel GARETTE almost 8 years ago

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)

Revision 283a9876 (diff)
Added by Emmanuel GARETTE almost 8 years ago

ouvre le firewall (ref #5723)

Revision ae09bb26 (diff)
Added by Emmanuel GARETTE almost 8 years ago

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

Revision a8c00c47 (diff)
Added by Emmanuel GARETTE almost 8 years ago

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

Revision cca63cfd (diff)
Added by Emmanuel GARETTE almost 8 years ago

problème dans la dtd (ref #5723)

Revision c51c4dca (diff)
Added by Emmanuel GARETTE over 7 years ago

ajout de service_restriction (ref #5723)

Revision c15424cd (diff)
Added by Emmanuel GARETTE over 7 years ago

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

Revision 2e9e059b (diff)
Added by Emmanuel GARETTE over 7 years ago

- 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

Revision 052a2819 (diff)
Added by Emmanuel GARETTE over 7 years ago

Voir commit precedent
ref #5723

Revision ba387293 (diff)
Added by Emmanuel GARETTE over 7 years ago

Gestion des balises firewall ref #5723

Revision 48bb1fcc (diff)
Added by Emmanuel GARETTE over 7 years ago

conversion du .fw en balise (ref #5723)

Revision d7012882 (diff)
Added by Emmanuel GARETTE over 7 years ago

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

Revision 6bb6df8e (diff)
Added by Emmanuel GARETTE over 7 years ago

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

Revision 5f41acd0 (diff)
Added by Emmanuel GARETTE over 7 years ago

conversion du .fw en balise (ref #5723)

Revision 1dd5924b (diff)
Added by Emmanuel GARETTE over 7 years ago

conversion du .fw en balise (ref #5723)

Revision 29c1130a (diff)
Added by Emmanuel GARETTE over 7 years ago

conversion du .fw en balise (ref #5723)

Revision 63ae45f7 (diff)
Added by Emmanuel GARETTE over 7 years ago

conversion du .fw en balise (ref #5723)

Revision f92d9c09 (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision 5e4a72db (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision 3a56e2f9 (diff)
Added by Emmanuel GARETTE about 7 years ago

ajout du support de service_accessslist (ref #5723)

Revision 60258f86 (diff)
Added by Emmanuel GARETTE about 7 years ago

retrait de *list inutile (ref #5723)

Revision c4cf8f50 (diff)
Added by Emmanuel GARETTE about 7 years ago

conversion du .fw en balise (ref #5723)

Revision ad3caacf (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision 15ffb350 (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision b1dc44b1 (diff)
Added by Emmanuel GARETTE about 7 years ago

support du protocole dans le port (ref #5723)

Revision b860d8ca (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision a54c61af (diff)
Added by Emmanuel GARETTE about 7 years ago

conversion du .fw en balise (ref #5723)

Revision 415b6dbf (diff)
Added by Fabrice Barconnière about 7 years ago

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

Revision 4c9933fb (diff)
Added by Fabrice Barconnière about 7 years ago

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

Revision 2a2eb1f3 (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision 36f43024 (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision 0076e23b (diff)
Added by Fabrice Barconnière about 7 years ago

redefine à oui variable activer_firewall
ref #5723 @15m

Revision 875e496e (diff)
Added by Emmanuel GARETTE about 7 years ago

conversion du .fw en balise (ref #5723)

Revision 0e1c6b07 (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision 38f8ec1e (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision 57e0639e (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision 0316a9e3 (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision c2cb6385 (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision 407aed17 (diff)
Added by Emmanuel GARETTE about 7 years ago

conversion du .fw en balise (ref #5723)

Revision 64208cf5 (diff)
Added by Emmanuel GARETTE about 7 years ago

conversion du .fw en balise (ref #5723)

Revision e6b545e0 (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision 19d20178 (diff)
Added by Emmanuel GARETTE about 7 years ago

conversion du .fw en balise (ref #5723)

Revision d2c70b7a (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision ad97eb7e (diff)
Added by Emmanuel GARETTE about 7 years ago

conversion du .fw en balise (ref #5723)

Revision 0fd74a6c (diff)
Added by Emmanuel GARETTE about 7 years ago

conversion du .fw en balise (ref #5723)

Revision 86de3c72 (diff)
Added by Emmanuel GARETTE about 7 years ago

conversion du .fw en balise (ref #5723)

Revision b8233819 (diff)
Added by Emmanuel GARETTE about 7 years ago

pouvoir utiliser une variable pour interface (ref #5723)

Revision cfe543c0 (diff)
Added by Emmanuel GARETTE about 7 years ago

conversion du .fw en balise (ref #5723)

Revision d1ce6c11 (diff)
Added by Emmanuel GARETTE about 7 years ago

conversion du .fw en balise (ref #5723)

Revision 66bc7405 (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision 381d48c5 (diff)
Added by Emmanuel GARETTE about 7 years ago

suppression du fichier .fw inutile (ref #5723)

Revision 3ec4f29f (diff)
Added by Emmanuel GARETTE about 7 years ago

conversion du .fw en balise (ref #5723)

Revision 224d7f4e (diff)
Added by Emmanuel GARETTE about 7 years ago

suppression du fichier .fw inutile (ref #5723)

Revision 0a68f310 (diff)
Added by Emmanuel GARETTE about 7 years ago

conversion du .fw en balise (ref #5723)

Revision 81fbd456 (diff)
Added by Emmanuel GARETTE about 7 years ago

support des interfaces 'auto' (ref #5723)

Revision 789d2c4d (diff)
Added by Emmanuel GARETTE about 7 years ago

ajout de la fonction eosfunc get_interface_from_ip (ref #5723)

Revision 174d4876 (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision 77430af1 (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision e82a884b (diff)
Added by Joël Cuissinat about 7 years ago

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

Revision eea8dd3d (diff)
Added by Joël Cuissinat about 7 years ago

Correction syntaxe des balises de firewall

ref #5723, ref #7110 @5m

Revision 4da109a2 (diff)
Added by Emmanuel GARETTE about 7 years ago

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

Revision 3b12f69a (diff)
Added by Joël Cuissinat about 7 years ago

  • tmpl/50-nat_rules : cal_interface => calc_interface

Ref #5723 @10m
Ref #7144

Revision 98d20d56 (diff)
Added by Fabrice Barconnière about 7 years ago

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

History

#1 Updated by Emmanuel GARETTE almost 8 years ago

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 Updated by Daniel Dehennin almost 8 years ago

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 Updated by Emmanuel GARETTE almost 8 years ago

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 Updated by Emmanuel GARETTE over 7 years ago

  • Tracker changed from Anomalie to Evolution
  • % Done changed from 0 to 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 Updated by Joël Cuissinat over 7 years ago

  • Target version changed from Eole 2.4-dev-3 to Eole 2.4-alpha

#6 Updated by Joël Cuissinat over 7 years ago

  • Target version deleted (Eole 2.4-alpha)

#7 Updated by Emmanuel GARETTE over 7 years ago

  • Target version set to Eole 2.4-beta3

#8 Updated by Joël Cuissinat over 7 years ago

  • Target version changed from Eole 2.4-beta3 to Eole 2.4-RC2

#9 Updated by Joël Cuissinat about 7 years ago

  • Assigned To set to Emmanuel GARETTE
  • Target version changed from Eole 2.4-RC2 to Eole 2.4-RC1

#10 Updated by Emmanuel GARETTE about 7 years ago

  • Status changed from Nouveau to Résolu
  • % Done changed from 40 to 100

#11 Updated by Fabrice Barconnière about 7 years ago

  • Due date set to 01/17/2014
  • Target version changed from Eole 2.4-RC1 to Eole 2.4-beta3

paquet refait

#12 Updated by Gilles Grandgérard about 7 years ago

  • Assigned To changed from Emmanuel GARETTE to Gilles Grandgérard

#13 Updated by Gilles Grandgérard about 7 years ago

  • Status changed from Résolu to 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)

Also available in: Atom PDF