PDA

View Full Version : iptables dopo reboot


_YTS_
12-04-2004, 19:29
ciao raga
premetto che sto lavorando da knoppix 3.3 su hd;
allora ho letto un paio di guide sul avvio delle regole salvate con il comando /etc/init.d/iptables save active,
ora il mio problema è che al reboot della macchina le rules non si caricano in automatico,le devo caricare io o con iptables-restore < active o con /etc/init.d/iptables load active, il che mi infastidisce non poco..... :muro:

ora se qualcuno fosse cosi gentile da spiegarmi le motivazioni oppure il modo di risolvere che sono sicuro è semplice ma bastardo dentro :D
tnx all

_YTS_

NA01
12-04-2004, 19:37
devi mettere il comando negli script di avvio.
nella slack ad esempio lo puoi mettere in /etc/rc.d/rc.S
su debby se mi ricordo bene invece dovevi usare un sistema che io trovavo mooolto scomodo e non mi ricordo come funzi.
guarda se hai anche te il file rc.S (nel qual caso metti il comando in fondo al file), altrimenti mi sa che devi cercarti le procedure per la tua distro

ciao!

_YTS_
12-04-2004, 19:57
tnx del reply
ho sotto /etc/

ivari /etc/rc.boot /etc/rc0.d /etc/rc1.d /etc/rc2.d /etc/rc3.d /etc/rc4.d /etc/rc5.d /etc/rc6.d

ma niente di rc.S.

io cerco ancora nel frattempo spero in altri aiutini
tnx ancora

_YTS_

_YTS_
12-04-2004, 22:23
credo che io debba creare un nuovo script di avvio per il firewall
in modo tale che esso mi carichi le regole all avvio ma.......

non so come si fa :muro:

una mano o un link da cui spulciare?
ciao

_YTS_

NA01
12-04-2004, 22:33
mettilo nel file rc.X
X sta per il numero del runlevel a cui vuoi attivarlo


ciao

_YTS_
13-04-2004, 16:59
mettilo nel file rc.X

eh ma questo mettilo in particolare cosa significa?

cmq si ho vari rc.X ne frattempo spulcio
tnx

_YTS_

dennyv
13-04-2004, 17:11
Knoppix ha gli script di avvio del tipo System V, mentre Slack è BSD-like, è normale che non ci sia rc.S, cmq nn mi ricordo bene come si usa il SysV lo usavo tempo fa con la RedHat, cmq prova ad usare un editor per gli script di avvio, per esempio c'è ne uno in kde (ksysv)!

Ciaoo

_YTS_
13-04-2004, 17:22
il mio problema non è usare l editor o altro....
è proprio il capire come mettere o come far capire al sistema di caricare le regole che ho chiamato "active" al boot della macchina.

spulcio...
ciao

_YTS_

Paolo-82
13-04-2004, 19:54
Per farti capire ti posto le istruzioni che ho seguito io per eseguire all'avvio il comando startmodem (eseguito tramite lo script rc.adsl).
Spero che il procedimento valga anche per il tuo script!
Ciao!


Domanda 5.0 : E' possibile eseguire startmodem durante il boot?

Risposta : Certamente si, usando ad esempio init.d , oppure /etc/ppp/ppp_on_boot per
gli utenti Debian.

Come rendere possibile l'uso di init.d:

Prerequisiti:
- driver ECIADSL installato e configurato
- sorgenti di ECIADSL, ottenibile all'indirizzo:
http://eciadsl.flashtux.org/download.php

Copia il file rc.adsl in /etc/init.d: 'cp rc.adsl /etc/init.d'
(il file rc.adsl è disponibile nella versione >= 0.7 (o in CVS))

Per Debian basta eseguire da root: 'update-rc.d rc.adsl defaults 15'

Per le altre distribuzioni seguire le seguenti istruzioni:

In /etc/rc.d ogni directory rc*.d corrisponde ad un livello init. Ad
esempio init level 5 è quello che porta al login grafico (è il default sui
sistemi Linux standard, a volte è il 3), quindi /etc/rc.d/rc5.d corrisponde
a questo livello.

Troverai altre informazioni riguardo i livelli init con:
> man inittab
oppure guarda nel file /etc/inittab.

Per sapere quale livello init viene raggiunto al boot cerca una linea simile
alla seguente nel file /etc/inittab:
id:5:initdefault:
Qui, il livello di default è 5.
Per le operazioni che seguono supponiamo che il livello al boot sia 5.

Bisogna sapere che, quando il sistema entra in un init level, richiama tutti
i file K* del livello precedente, poi richiama tutti i file S* del nuovo
livello. Tutti i file K* ed S* si trovano in /etc/rc.d/rc<init level>.d
ai quali appartengono.
In realtà questi file S* e K* sono dei link simbolici e puntano agli script,
conservati (il più delle volte) in /etc/init.d.

Ogni file S* è del tipo: Sxxyyyyy, dove xx è un numero di due cifre e yyyyy
è il nome di un servizio (il nome usa una notazione descrittiva e può
essere deciso a piacere).
Tutti i file Sxxyyyyy vengono richiamati seguendo il valore xx (in ordine
crescente), poi seguendo il nome del servizio (yyyyy, in ordine alfabetico
crescente).

Ad esempio:
> ls /etc/rc.d/rc5.d
mostra
S01foo
S15bar
S99dummy
K10makemyday
K80whatthefuck
(fai attenzione, è solo un esempio).
Quindi quando si entra in init level 5 verrà richiamato S01foo, S15bar e poi
S99dummy.

Quando si lascia init level 5 viene fatto lo stesso per i file K*. Ma a
seconda del sistema l'ordine sarà lo stesso (ordine crescente di xx) oppure
al contrario (ordine decrescente di xx).

Ora che sai in che modo funziona puoi creare i relativi link simbolici a
/etc/init.d in /etc/rc.d/rc5.d:
> ln -s /etc/init.d/rc.adsl /etc/rc.d/rc5.d/S90adsl
> ln -s /etc/init.d/rc.adsl /etc/rc.d/rc5.d/K90adsl

Prima di creare questi link nota che S90 ha una funzione particolare, i
file S90* vengono richiamati dopo tutti gli altri servizi di rete.
Naturalmente fai attenzione anche a K90. Secondo alcuni sistemi (ordine
inverso) può essere meglio usare K00, semplicemente pensa al modo migliore
di ordinare la disattivazione delle connessione.

Una volta che tutti i link simbolici sono stati creati puoi testarli
eseguendo il reboot del sistema.
Puoi testarli anche senza eseguire un reboot: chiudi la sessione X11, apri
una sessione di root in console, poi:
> init 3
poi
> init 5
Capito che fa? Significa lasciare init level 5 per l'init level 3, poi
ritornare nuovamente a init level 5. Verranno richiamati i relativi file S*
e K*.

_YTS_
13-04-2004, 20:33
grazie Paolo del tuo intervento :D

proverò ad usare l init.d come mi hai descritto.

_YTS_