Projet

Général

Profil

Tâche #20848

Scénario #16703: Ne pas utiliser de CreoleGet dans les scripts de démarrage du réseau

Amonecole : Le redémarrage du service bastion ne restaure pas les règles iptables dans les conteneurs

Ajouté par Fabrice Barconnière il y a presque 7 ans. Mis à jour il y a presque 7 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Début:
24/04/2017
Echéance:
% réalisé:

100%

Temps estimé:
1.00 h
Temps passé:
Restant à faire (heures):
0.0

Description

Je ne pense pas que cela soit lié à l'upgrade mais je suis tombé dessus avec un Amonecole 2.5.2 upgradé en 2.6.1 :

---------------------------------------------------------------------------------------------------------------------------------------
                                                          Reconfiguration OK                                                           
---------------------------------------------------------------------------------------------------------------------------------------
root@amonecole:~# /usr/share/eole/diagnose/04-zfirewall 
*** Pare-feu
.       Génération des règles => Ok (13:55:35 20/06/17)
.                      maitre => Ok
.                      reseau => Erreur
.                    internet => Erreur
.                         bdd => Erreur
.                     partage => Erreur
.                       IPSet => Ok

La commande bastion regen règle le problème.
/usr/share/eole/posttemplate/00-eole-common reconfigure ne régénère peut-être pas le cache correctement.

Révisions associées

Révision 4baa7dd3 (diff)
Ajouté par Daniel Dehennin il y a presque 7 ans

Restarting bastion service does not restore rules in containers

- “service bastion stop” use “ferme.firewall” which now close the
firewall in containers

- “service bastion start” restore the rules from the cache on the
master and then run “service bastion start” in all containers

- “service bastion restart” is just a “service bastion stop && service
bastion start”, this result in the rules not restored in containers
since systemd consider the service as running even if the rules are
cleaned by “ferme.firewall”.

  • bastion/bastion (stop): When container mode is active we stop the
    service in containers too.

Ref: #20848

Historique

#1 Mis à jour par Fabrice Barconnière il y a presque 7 ans

  • Description mis à jour (diff)

#2 Mis à jour par Fabrice Barconnière il y a presque 7 ans

J'ai trouvé le coupable :

root@amonecole:~# /usr/share/eole/diagnose/04-zfirewall 
*** Pare-feu
.       Génération des règles => Ok (14:21:00 20/06/17)
.                      maitre => Ok
.                      reseau => Ok
.                    internet => Ok
.                         bdd => Ok
.                     partage => Ok
.                       IPSet => Ok

root@amonecole:~# CreoleService bastion restart
Restart Systemd service bastion                                                                                                [  OK  ]
root@amonecole:~# /usr/share/eole/diagnose/04-zfirewall 
*** Pare-feu
.       Génération des règles => Ok (14:21:00 20/06/17)
.                      maitre => Ok
.                      reseau => Erreur
.                    internet => Erreur
.                         bdd => Erreur
.                     partage => Erreur
.                       IPSet => Ok

#3 Mis à jour par Fabrice Barconnière il y a presque 7 ans

root@amonecole:~# CreoleService bastion restart -c all
root - cannot start disabled service bastion

#4 Mis à jour par Fabrice Barconnière il y a presque 7 ans

Test Sur un Amonecole natif, pas de problème avant cette mise à jour :

root@amonecole:~# Query-Auto -C
Mise à jour le mardi 20 juin 2017 14:34:05
*** amonecole 2.6.1 (00000003) ***

Maj-Auto - (VERSION CANDIDATE) - Augmenter le niveau de mise à jour peut empêcher de revenir au niveau de mise à jour stable.
Voulez-vous continuer ? [oui/non]
[non] : o
Configuration du dépôt Ubuntu avec la source test-eole.ac-dijon.fr
Configuration du dépôt EOLE avec la source test-eole.ac-dijon.fr
Configuration du dépôt Envole avec la source test-eole.ac-dijon.fr
Action update pour root                                                                                                              
Action update pour le conteneur reseau                                                                                               
Action update pour le conteneur internet                                                                                             
Action update pour le conteneur bdd                                                                                                  
Action update pour le conteneur partage                                                                                              
Action list-upgrade pour root
Action list-upgrade pour le conteneur reseau                                                                                         
Action list-upgrade pour le conteneur internet                                                                                       
Action list-upgrade pour le conteneur bdd                                                                                            
Action list-upgrade pour le conteneur partage                                                                                        
0 nouveau, 26 mis à jour, 0 à enlever
Paquets à mettre à jour : 
    eole-common-pkg (2.6.1-104) (root, bdd, internet, partage, reseau)
    eole-db (2.6.1-3) (root)
    eole-lxc-container-apps (2.6.1-104) (bdd, internet, partage, reseau)
    eole-lxc-container-pkg (2.6.1-104) (bdd, internet, partage, reseau)
    eole-lxc-controller (2.6.1-104) (root)
    eole-resolvconf (2.6.1-104) (root, bdd, internet, partage, reseau)
    eole-server (2.6.1-104) (root)
    eole-ssmtp-pkg (2.6.1-104) (root, bdd, internet, partage)
    python-eoledb (2.6.1-3) (root)

C'est après cette mise à jour que le problème apparaît.
Ce n'est donc pas lié à l'upgrade.

#5 Mis à jour par Fabrice Barconnière il y a presque 7 ans

  • Tâche parente changé de #20668 à #16703

#6 Mis à jour par Daniel Dehennin il y a presque 7 ans

Fabrice Barconnière a écrit :

Test Sur un Amonecole natif, pas de problème avant cette mise à jour :
[...]

C'est après cette mise à jour que le problème apparaît.
Ce n'est donc pas lié à l'upgrade.

Cela vient probablement de #16175.

Avant ma modification, la fermeture du firewall n’était jamais effective à l’intérieure des conteneurs, maintenant si.

Du coup, si c’est ça il faut s’assurer que bastion ouvre les accès extérieurs à l’intérieur des conteneurs.

#7 Mis à jour par Scrum Master il y a presque 7 ans

  • Projet changé de creole à eole-common
  • Assigné à mis à Daniel Dehennin

#8 Mis à jour par Scrum Master il y a presque 7 ans

  • Statut changé de Nouveau à En cours

#9 Mis à jour par Daniel Dehennin il y a presque 7 ans

  • Sujet changé de Amonecole : erreur diagnose de bastion après reconfigure à Amonecole : Le redémarrage du service bastion ne restaure pas les règles iptables dans les conteneurs
  • % réalisé changé de 0 à 100
  • Restant à faire (heures) changé de 1.0 à 0.25

Nouveau paquet 2.6.1-105 et 2.6.2-12.

#10 Mis à jour par Daniel Dehennin il y a presque 7 ans

  • Statut changé de En cours à Résolu

#11 Mis à jour par Daniel Dehennin il y a presque 7 ans

Pour valider

  1. Démarrer un etb3.amonecole-2.6.1-instance-default
  2. Fermer le firewall dans les conteneurs : exécuter CreoleRun /usr/share/eole/firewall.stop all
  3. Redémarrer bastion : exécuter CreoleService bastion restart
  4. Exécuter /usr/share/eole/diagnose/04-zfirewall
  5. Constater les ERREURS
  6. Exécuter Maj-Auto -C
  7. Exécuter reconfigure
  8. Fermer le firewall dans les conteneurs : exécuter CreoleRun /usr/share/eole/firewall.stop all
  9. Redémarrer bastion : exécuter CreoleService bastion restart
  10. Exécuter /usr/share/eole/diagnose/04-zfirewall
  11. Constater les OK

#12 Mis à jour par Fabrice Barconnière il y a presque 7 ans

  • Restant à faire (heures) changé de 0.25 à 0.0

#13 Mis à jour par Fabrice Barconnière il y a presque 7 ans

Avant mise à jour :

root@amonecole:~# /usr/share/eole/diagnose/04-zfirewall
*** Pare-feu
.       Génération des règles => Ok (00:23:19 17/06/17)
.                      maitre => Ok
.                      reseau => Ok
.                    internet => Ok
.                         bdd => Ok
.                     partage => Ok
.                       IPSet => Ok

root@amonecole:~# CreoleRun /usr/share/eole/firewall.stop all
Exécution de la commande [/usr/share/eole/firewall.stop] dans le conteneur reseau

Exécution de la commande [/usr/share/eole/firewall.stop] dans le conteneur internet

Exécution de la commande [/usr/share/eole/firewall.stop] dans le conteneur bdd

Exécution de la commande [/usr/share/eole/firewall.stop] dans le conteneur partage

root@amonecole:~# CreoleService bastion restart
Restart Systemd service bastion                                                                                                [  OK  ]
root@amonecole:~# /usr/share/eole/diagnose/04-zfirewall
*** Pare-feu
.       Génération des règles => Ok (00:23:19 17/06/17)
.                      maitre => Ok
.                      reseau => Erreur
.                    internet => Erreur
.                         bdd => Erreur
.                     partage => Erreur
.                       IPSet => Ok

Après mise à jour :

---------------------------------------------------------------------------------------------------------------------------------------
                                                          Reconfiguration OK                                                           
---------------------------------------------------------------------------------------------------------------------------------------
root@amonecole:~# /usr/share/eole/diagnose/04-zfirewall
*** Pare-feu
.       Génération des règles => Ok (08:13:42 22/06/17)
.                      maitre => Ok
.                      reseau => Ok
.                    internet => Ok
.                         bdd => Ok
.                     partage => Ok
.                       IPSet => Ok

root@amonecole:~# CreoleRun /usr/share/eole/firewall.stop all
Exécution de la commande [/usr/share/eole/firewall.stop] dans le conteneur reseau

Exécution de la commande [/usr/share/eole/firewall.stop] dans le conteneur internet

Exécution de la commande [/usr/share/eole/firewall.stop] dans le conteneur bdd

Exécution de la commande [/usr/share/eole/firewall.stop] dans le conteneur partage

root@amonecole:~# CreoleService bastion restart
Restart Systemd service bastion                                                                                                [  OK  ]
root@amonecole:~# /usr/share/eole/diagnose/04-zfirewall
*** Pare-feu
.       Génération des règles => Ok (08:13:42 22/06/17)
.                      maitre => Ok
.                      reseau => Ok
.                    internet => Ok
.                         bdd => Ok
.                     partage => Ok
.                       IPSet => Ok

#14 Mis à jour par Fabrice Barconnière il y a presque 7 ans

  • Statut changé de Résolu à Fermé

Formats disponibles : Atom PDF