Plus précisément
J'ai un ensemble de règles iptables défini sur un serveur exécutant CentOS. Suis-je garanti / puis-je garantir / comment puis-je garantir que lorsque la mise en réseau est en ligne (soit au démarrage de la machine, soit après le redémarrage du service réseau), le jeu de règles iptables est déjà appliqué (et si iptables n'a pas pu démarrer ou n'a pas appliqué le jeu de règles l'interface réseau ne parviendra pas à apparaître)?
(Je sais que c'est une question noob, mais je n'ai jamais exécuté de serveur sur autre chose que des réseaux de confiance derrière un NAT DHCP masqué et un pare-feu, alors ... attendez-vous à des questions noob de noobs.)
Réponses:
Dès la sortie de la boîte, vous êtes assuré que iptables démarrera avant que l'interface ne soit lancée par l'ordre des scripts de démarrage. Regardez la ligne "chkconfig" dans chaque script de démarrage et vous verrez les niveaux d'exécution sur lesquels il est "activé", l'ordre de démarrage et l'ordre d'arrêt.
Vous n'êtes pas assuré que l'interface ne sera pas affichée si l'ensemble de règles iptables n'a pas été appliqué correctement (ou pas du tout).
Exemple:
chkconfig: 2345 08 92
Cette ligne indique que le service en question sera actif dans les niveaux d'exécution 2, 3, 4 et 5, et commencera à 8 et s'arrêtera à 92. Tout ce qui a une valeur "start" plus élevée ne démarrera qu'après la fin de ce script, mais ce script en erreur est considéré comme terminé et n'empêchera pas les scripts en aval de s'exécuter.
Veuillez noter que cette réponse s'applique à CentOS 6 et versions antérieures, pas nécessairement à CentOS 7. Je n'ai pas personnellement recherché 7 suffisamment pour répondre à cette question pour 7.
la source
systemctl list-dependencies --all
(je viens de regarder la page de manuel pour cela il y a 30 secondes).initscripts
package est mis à jour (par exemple une version errata). Je ne recommande vraiment pas de faire ça.Vous pouvez également utiliser l'option ifup-post dans centos:
Ce script s'exécute et après ce qui précède (ifup-route et ifup-aliases), il recherche ifup-local
Vous pouvez donc créer ce fichier et vous assurer qu'il appelle à nouveau iptables, par exemple en utilisant iptables-restore:
la source
Un petit addenda: pour vous assurer que les règles nécessaires seront là la prochaine fois que vous démarrerez le serveur, enregistrez-le avec
la source