Eseguire comandi all'avvio.

18 risposte [Ultimo messaggio]
Ritratto di quite212
quite212
(Junior)
Offline
Junior
Iscritto: 20/07/2006
Messaggi: 19

Ciao a tutti! Sto provando a creare uno script per fare in modo che il computer all'avvio mi esegua 2 semplicissimi comandi per avviare il firewall che mi sono fatto da solo!

Ho una suse linux 10.3. Questa ha un suo firewall ed ovviamente lo avvia automaticamente al boot. Il firewall di suse usa iptables, ed anche io ho usato iptables per il mio firewall. Ho salvato le regole su un file ed ogni volta che mi connetto devo eseguire a mano il restore...apppunto perchè non so come creare script in init.d.

Praticamente i 2 comandi da dare sono:

#iptables restore percorso_nome_file
#ulogd

Io avevo pensato ad una cosa simile...ma nn ho ancora provato per paura di combinare qualcosa di cattivo

1 #!/bin/bash
2 # Corretta intestazione di uno script Bash.
3
4 DIR_RESTORE=/usr/src/
#la directory dove sta il file con le regole di iptables
5 cd $DIR_RESTORE
6 iptables-restore miofirewall
imposta le mie regole
7 ulogd
fa partire il demone per fare il loggin del traffico droppato
8
9 EXIT
esce...

Il mio dubbio più grande è che il comando iptables-restore va eseguito come root...funzionerà?

Cosa ne pensate? una aiutino please..

PS: che scemo che sono...avevo già aperto un topic un mesetto fa con un problema simile...se me ne accorgevo prima avrei postato lì...sorry.

Ritratto di ferdybassi
ferdybassi
(Guru)
Offline
Guru
Iscritto: 11/09/2005
Messaggi: 2668

Ma perchè non aggiungi le regole di iptables direttamente nella configurazione del firewall di suse in Yast?
Ciao ciao

Amministratore di
www.it-opensuse.org

Ritratto di quite212
quite212
(Junior)
Offline
Junior
Iscritto: 20/07/2006
Messaggi: 19

Ciao, grazie per la risposta.

Non posso perchè sto facendo la tesi su iptables e devo fare un discorso non limitato a suse 10.3...

Ritratto di robermann79
robermann79
(Monster)
Offline
Monster
Iscritto: 07/02/2007
Messaggi: 342

per eseguire un comando subito dopo il boot puoi creare uno script chiamato after.local, al seguente percorso:

<br />/etc/init.d/after.local<br />

Ecco un esempio del contenuto:
<br />#! /bin/sh<br />#<br /># /etc/init.d/after.local<br />#<br />#<br /># Here you should add things, that should happen directly<br /># after run level is reached.<br />#<br />/usr/sbin/ddclient &amp;<br />

ciao
rob

Ritratto di quite212
quite212
(Junior)
Offline
Junior
Iscritto: 20/07/2006
Messaggi: 19

Cioè, a me m'è venuta in mente questa coss leggendo una guida di iptables

Durante l’avvio le impostazioni di iptables possono essere ripristinato automaticamente tramite uno dei seguenti metodi:

· Uno script shell che esegue in successione tutti i comandi iptables necessari. Ha il vantaggio di permettere commenti tra le regole e poter usare variabili, cicli e impostare regole sulla base di parametri non fissi. Spesso lo si richiama da /ect/rc.d/rc.local , ma sarebbe meglio applicarlo appena vengono attivate le interfacce di rete.

· Uno scripr di init.d che tramite iptables-restore ripristina una configurazione precedentemente salvata. E’ la soluzione utilizzata da molte distribuzioni, dove il file di configurazione del firewall non è altro che l’output di un comando come iptables-save > /ect/sysconfig/iptables. Ha il vantaggio di applicare elenchi di regole in modo molto più rapido
Che cosa mi consigli di fare? Sempre la stessa cosa?

Ritratto di robermann79
robermann79
(Monster)
Offline
Monster
Iscritto: 07/02/2007
Messaggi: 342

Quote:

Che cosa mi consigli di fare? Sempre la stessa cosa?

Mah, per quel che so, after.local sulla suse sostituisce rc.local e sta dentro init.d Smile

Per cui potresti avviare lo script che invoca iptables-restore da dentro after.local, anche se credo che per i paranoici della sicurezza il firewall dovrebbe essere configurato un po' prima nella sequenza di boot (e quindi crearti qualche regola all'interno di init.d, un file che inizi con numero opportuno). Qui ci voglio i guru del forum Laughing

ciao
rob

Ritratto di quite212
quite212
(Junior)
Offline
Junior
Iscritto: 20/07/2006
Messaggi: 19

Quote:

robermann79 ha scritto:

Mah, per quel che so, after.local sulla suse sostituisce rc.local e sta dentro init.d Smile

Ecco perchè non trovavo rc.local! Ho scoperto un altri mistero di suse.....thanks!

Quote:

Per cui potresti avviare lo script che invoca iptables-restore da dentro after.local, anche se credo che per i paranoici della sicurezza il firewall dovrebbe essere configurato un po' prima nella sequenza di boot (e quindi crearti qualche regola all'interno di init.d, un file che inizi con numero opportuno). Qui ci voglio i guru del forum Laughing

ciao
rob

Hehe!Comunque suse attiva il suo firewall prima del mio! Quindi prima della sequenza di boot ci dovrebbe essere già quello di suse attivo!VAbbè....cmq sono cose che per ora nn mi interessano...voglio solo laurearmi!Mi manca solo sto script e poi dovrei stare a posto Big Grin

Ritratto di orion
orion
(Guru)
Offline
Guru
Iscritto: 11/07/2006
Messaggi: 2919

E tu disabilitalo (tramite yast).

Oppure, piu` semplicemente, i primi comandi del tuo script diventano iptables -F<br />iptables -P INPUT ACCEPT<br />iptables -P FORWARD ACCEPT<br />iptables -P OUTPUT ACCEPT

openSUSE 12.1 on Acer Aspire 1810tz - LXDE ultima versione dal repo x11:/lxde

Ritratto di quite212
quite212
(Junior)
Offline
Junior
Iscritto: 20/07/2006
Messaggi: 19

Quote:

orion ha scritto:
E tu disabilitalo (tramite yast).

Oppure, piu` semplicemente, i primi comandi del tuo script diventano iptables -F<br />iptables -P INPUT ACCEPT<br />iptables -P FORWARD ACCEPT<br />iptables -P OUTPUT ACCEPT

Ma teoricamente non è un problema che si il firewall di suse si attiva rpima del mio, perchè il mio firewall comincia proprio con la cancellazione delle regole base di suse! Big Grin

Comunque è ancora tutto da provare..poi dopo vi faccio sapere! ^^

Ritratto di quite212
quite212
(Junior)
Offline
Junior
Iscritto: 20/07/2006
Messaggi: 19

Rob, ma after.local, devo crearlo io...?perchè non c'è un file/cartella che si chiami già così...
Pensavo già ci fosse e bisognasse editarlo in qualche modo...oppure che fosse una cartella all'interno della quale mettere il mio script..

Ritratto di robermann79
robermann79
(Monster)
Offline
Monster
Iscritto: 07/02/2007
Messaggi: 342

si', se non c'e' gia' devi crearlo tu