Script demarrage contenant des commande root
allergen
-
Allergen -
Allergen -
Bonjour,
J'essai de lancer un script d'iptables au demarrage.
Mais iptables doit etre executer en root. Ca pose un probleme non?
J'ai lis mes reles iptables dans un script dans /etc/init.d
chmod +x sur le script
et j'ai mis a jour les rcX.d avec la commande update-rc.d nomDuScript defaults 99
Malgrés tout ca le script n'est pas lancé et les iptables ne sont pas mise comme il faut a pres le demarrage.
Faut il une comande special pour executer en root?
-----------
PS j'ai essayer aussi les comande iptables-save et restore mais elle ont besoin qu on se log en root pour le lancer.
Les script de demarrage ne se lance pas en root?
J'essai de lancer un script d'iptables au demarrage.
Mais iptables doit etre executer en root. Ca pose un probleme non?
J'ai lis mes reles iptables dans un script dans /etc/init.d
chmod +x sur le script
et j'ai mis a jour les rcX.d avec la commande update-rc.d nomDuScript defaults 99
Malgrés tout ca le script n'est pas lancé et les iptables ne sont pas mise comme il faut a pres le demarrage.
Faut il une comande special pour executer en root?
-----------
PS j'ai essayer aussi les comande iptables-save et restore mais elle ont besoin qu on se log en root pour le lancer.
Les script de demarrage ne se lance pas en root?
A voir également:
- Script demarrage contenant des commande root
- Forcer demarrage pc - Guide
- Invite de commande - Guide
- Ordinateur lent au démarrage - Guide
- Reinitialiser pc au demarrage - Guide
- Problème démarrage windows 10 - Guide
5 réponses
salut
Ce n'est pas des sarcasmes, c'est juste pour savoir si tu maitrises ce que tu fais.
Les script init.d sont lancés par root, il n'y a donc rien à faire de particulier pour lancer les commandes à l'intérieur.
Toutefois, on prendra le soin d'appeler les commandes par leur chemin absolu ( /sbin/chkrootkit par ex. )
ton script doit être dans rc5.d et s'appeler S00xxxxxxxxxx, avec 00 le numero de démarrage de ce script. Il doit s'appeler K00xxxxxxxxx pour s'xecuter à l'arret.
Ce n'est pas des sarcasmes, c'est juste pour savoir si tu maitrises ce que tu fais.
Les script init.d sont lancés par root, il n'y a donc rien à faire de particulier pour lancer les commandes à l'intérieur.
Toutefois, on prendra le soin d'appeler les commandes par leur chemin absolu ( /sbin/chkrootkit par ex. )
ton script doit être dans rc5.d et s'appeler S00xxxxxxxxxx, avec 00 le numero de démarrage de ce script. Il doit s'appeler K00xxxxxxxxx pour s'xecuter à l'arret.
#!/bin/bash
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -P INPUT DROP
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
J'ai mis ce script, il fonctionne tres bien lorsque je l'execute en console.
Mais il ne s'éxécute pas au démarrage
(update-rc.d iptables-start defaults 99) il est mis en K pour rc0 , 1 et 6 les autres en S .
Merci
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -P INPUT DROP
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
J'ai mis ce script, il fonctionne tres bien lorsque je l'execute en console.
Mais il ne s'éxécute pas au démarrage
(update-rc.d iptables-start defaults 99) il est mis en K pour rc0 , 1 et 6 les autres en S .
Merci
salut, passe un ligne echo " demarrage script manuel" pour voir ensuite avec dmesg si le script a été lancé . A priori çadevrait être bon. Mais es tu sur que ta distrib ne lance pas elle meme un truc pour le pare feu ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Oki j'essaie ca de suite.
Si ca ce pourrait bien, parce que justement le parfeu est initialisé d 'un facon qui ne me plait pas du tout.
Merci
Si ca ce pourrait bien, parce que justement le parfeu est initialisé d 'un facon qui ne me plait pas du tout.
Merci
ces trucs la jeles trouve foireux , ils se ferme en cours de route.
J'ai reussi a faire fonctionner le script mais alors je ne comprend pas trop. Tout a changé alors qu on me sugere de rajouer des sleep (pas pour etre plus propre :D) mais pour mieux voir les trace au demarrage. Et avec ca fonctionne. Dur a comprendre...
Ca marche pas
[code]#!/bin/bash
IPT=/sbin/iptables
echo "Demarrage Iptable-Start manuel"
case "$1" in
start)
$IPT -F
etc etc
[/code]
ca marche
[code]
#!/bin/bash
IPT=/sbin/iptables
sleep 4
echo "################################################## #########################"
sleep 4
echo "Demarrage Iptable-Start manuel"
case "$1" in
start)
$IPT -F
etc etc etc...
[/code]
Merci
J'ai reussi a faire fonctionner le script mais alors je ne comprend pas trop. Tout a changé alors qu on me sugere de rajouer des sleep (pas pour etre plus propre :D) mais pour mieux voir les trace au demarrage. Et avec ca fonctionne. Dur a comprendre...
Ca marche pas
[code]#!/bin/bash
IPT=/sbin/iptables
echo "Demarrage Iptable-Start manuel"
case "$1" in
start)
$IPT -F
etc etc
[/code]
ca marche
[code]
#!/bin/bash
IPT=/sbin/iptables
sleep 4
echo "################################################## #########################"
sleep 4
echo "Demarrage Iptable-Start manuel"
case "$1" in
start)
$IPT -F
etc etc etc...
[/code]
Merci
dans le script il faut donc utiliserr /sbin/iptables -A ACCEPT etc etc ?
J'ai vu queque forum qui mettait en garde sur des possibles variables d'environnement a ajouter au script.
Merci de ton aide