<tr class="field">
<th class="field-name">Version:</th>
- <td class="field-body">0.6</td>
+ <td class="field-body">0.7</td>
</tr>
</tbody>
</table>
"#gestione-regole-rules" id="id83" name=
"id83">7.8 Gestione regole
(rules)</a></li>
+
+ <li>
+ <a class="reference internal" href=
+ "#salvataggio-regole" id="id84" name=
+ "id84">7.9 Salvataggio regole</a>
+
+ <ul class="auto-toc">
+ <li><a class="reference internal" href=
+ "#iptables-save" id="id85" name=
+ "id85">7.9.1 Iptables-save</a></li>
+
+ <li><a class="reference internal" href=
+ "#iptables-restore" id="id86" name=
+ "id86">7.9.2 Iptables-restore</a></li>
+ </ul>
+ </li>
</ul>
</li>
- <li><a class="reference internal" href="#note" id="id84"
- name="id84">8 NOTE</a></li>
+ <li><a class="reference internal" href="#note" id="id87"
+ name="id87">8 NOTE</a></li>
</ul>
</div>
resolv.conf per conoscere l'ubicazione del DNS.</p>
<p>/etc/resolv.conf:</p>
- <pre class="literal-block">
-- ``nameserver``: indica il nameserver da utilizzare, indicato con l'indirizzo ip.
-- ``domain``: indica il nome di dominio della rete attuale, vedi voce sucessiva.
+ <blockquote>
+ <ul class="simple">
+ <li><tt class="docutils literal"><span class=
+ "pre">nameserver</span></tt>: indica il nameserver da
+ utilizzare, indicato con l'indirizzo ip.</li>
-- ``search``: nome di dominio usato dalla rete sul quale cercare gli hosts. Ad esempio se impostato su ``piffa.net`` pingando l'host ``bender`` viene automaticamente fatto un tentativo di ricerca per ``bender.piffa.net``.
-</pre>
+ <li><tt class="docutils literal"><span class=
+ "pre">domain</span></tt>: indica il nome di dominio
+ della rete attuale, vedi voce sucessiva.</li>
+
+ <li><tt class="docutils literal"><span class=
+ "pre">search</span></tt>: nome di dominio usato dalla
+ rete sul quale cercare gli hosts. Ad esempio se
+ impostato su <tt class="docutils literal"><span class=
+ "pre">piffa.net</span></tt> pingando l'host <tt class=
+ "docutils literal"><span class="pre">bender</span></tt>
+ viene automaticamente fatto un tentativo di ricerca per
+ <tt class="docutils literal"><span class=
+ "pre">bender.piffa.net</span></tt>.</li>
+ </ul>
+ </blockquote>
<p>Si veda anche la pagina man di resolv.conf.</p>
regole esistenti</dd>
</dl>
</div>
+
+ <div class="section" id="salvataggio-regole">
+ <h2><a class="toc-backref" href=
+ "#id84">7.9 Salvataggio regole</a></h2>
+
+ <p>Il comando <tt class="docutils literal"><span class=
+ "pre">iptables</span></tt> serve per interagire con il
+ framework <tt class="docutils literal"><span class=
+ "pre">Netfilter</span></tt> ch gestisce il firewall di
+ Linux al livello del kernel. Questo comporta, in modo
+ analogo a quando avvene col comando <tt class=
+ "docutils literal"><span class="pre">ifconfig</span></tt>,
+ che i cambiameti impostati siano in <em>tempo reale,
+ RAM</em>, non persistenti nel sistema: al boot sucessivo
+ del sistema tutto tornera' alle impostazioni di base (in
+ questo caso <em>nulle</em>, con policy di default settate
+ su <tt class="docutils literal"><span class=
+ "pre">ACCEPT</span></tt> per tutto).</p>
+
+ <p>Le varie invocazioni di iptables potrebbero essere
+ richiamate da degli scripts dedicati, ma fortunatamente e'
+ stata predisposta una apposita utility per gestire questi
+ scripts in modo da avere a disposizione un <em>formato
+ standard</em> per il salvataggio e il ripristino delle
+ regole del firewall.</p>
+
+ <p>Altro problema: decidere quando attivare / disattivare
+ queste regole. Utilizzare i <em>runlevels</em> non e' una
+ soluzione adeguata: le regole del firewall sono legate
+ all'attivita' delle schede di rete (e un host con diverse
+ schede di rete puo' attivarle a secondo delle esigenze di
+ routing, partenza di servizi es file_sharing per un
+ back-up...): il sistema operativo Debian permette di legare
+ l'esecuzione di comandi alla attivazione di una device di
+ rete (<tt class="docutils literal"><span class=
+ "pre">up</span></tt>), dopo la sua attivazione (<tt class=
+ "docutils literal"><span class="pre">post-up</span></tt>,
+ utile per devices che richiedono un certo tempo per
+ inizializzarsi: come un tunnel o una connessione punto a
+ punto), prima della sua attivazione (<tt class=
+ "docutils literal"><span class="pre">pre-up</span></tt>).
+ Allo stesso modo sono disponibili eventi analoghi per
+ accompagnare la disattivazione dei device di rete: si veda
+ la pagina man di <tt class="docutils literal"><span class=
+ "pre">interfaces</span></tt>.</p>
+
+ <p>Nel nostro caso avremo per una possibile scheda
+ <tt class="docutils literal"><span class=
+ "pre">eth0</span></tt>:</p>
+
+ <p><tt class="docutils literal"><span class=
+ "pre">/etc/network/interfaces</span></tt></p>
+ <pre class="literal-block">
+iface eth1 inet static
+ up /sbin/iptables-restore /root/firewall/basic_fw
+ # Seguno i soliti parametri della scheda di rete
+ address 10.10.208.21
+</pre>
+
+ <div class="section" id="iptables-save">
+ <h3><a class="toc-backref" href=
+ "#id85">7.9.1 Iptables-save</a></h3>
+
+ <p>Per salvare le regole di iptables attualmente presenti
+ nel kernel si usi il comando:</p>
+ <pre class="literal-block">
+# iptables-save >> /root/firewall/basic_fw
+</pre>
+
+ <p>Il contenuto del file dovrebbe essere
+ <em>comprensibile</em>: sostanzialmente sono regole di
+ iptables, senza il comando iptables ripetuto, suddivisi
+ per le varie tabelle. Potete comunque correggere
+ eventuali parametri con un edito di testo.</p>
+
+ <p>Se non avete un'idea migliore potreste voler tenere
+ gli script dei firewall in una cartella <tt class=
+ "docutils literal"><span class=
+ "pre">~/firewall</span></tt> nella home directory
+ dell'utente <tt class="docutils literal"><span class=
+ "pre">root</span></tt>.</p>
+ </div>
+
+ <div class="section" id="iptables-restore">
+ <h3><a class="toc-backref" href=
+ "#id86">7.9.2 Iptables-restore</a></h3>
+
+ <p>Per ripristinare un set di regole prcedentemente
+ salvate con <tt class="docutils literal"><span class=
+ "pre">iptables-save</span></tt> si utilizzi <tt class=
+ "docutils literal"><span class=
+ "pre">iptables-restore</span></tt>. Se questo deve essere
+ fatto in modalita' <em>non interattiva</em>, ad esempio
+ deve essere eseguito dal demone che si occupa di
+ inizializzare le schede di rete, oppure un <em>cron</em>
+ o altro, e' buona norma richiamare i percorsi completi
+ sia dei comandi che dei file:</p>
+ <pre class="literal-block">
+/sbin/iptables-restore /root/firewall/basic_fw
+</pre>
+ </div>
+ </div>
</div>
<div class="section" id="note">
<h1><a class="toc-backref" href=
- "#id84">8 NOTE</a></h1>
+ "#id87">8 NOTE</a></h1>
<ul class="simple">
<li>controllare apache</li>
:Author: Andrea Manni
:Copyright: GFDL
- :Version: 0.6
+ :Version: 0.7
Questa guida e' dedicata agli studenti delle lezioni di informatica tenute da Andrea nel lab208. Nella parte iniziale sono presenti alcuni richiami alle impostazioni di rete e di installazione del laboratorio 208 (lab208) dove generalmente si tengono le lezioni. Questi parametri non sono interessanti per chiunque si trovasse al di fuori della rete piffa.net .
Configurazione di Apache
----------------------------
-I file di configurazione di apache si trovano nella cartella: ``/etc/apache2`` e sono strutturati come descritto nel file ``/usr/share/doc/apache2/README.Debian.gz`` . Sostanzialmente lo schema e' il seguente:
+I file di configurazione di apache si trovano nella cartella: ``/etc/apache2`` e sono strutturati come descritto nel file
+``/usr/share/doc/apache2/README.Debian.gz`` . Sostanzialmente lo schema e' il seguente:
apache2.conf
File di configurazione principale del servizio.
Il file ``/etc/resolv.conf`` contiene le impostazioni sul dns usato dal sistema, in genere anche altre applicazioni che devono effettuare query DNS leggono resolv.conf per conoscere l'ubicazione del DNS.
-/etc/resolv.conf::
+/etc/resolv.conf:
- ``nameserver``: indica il nameserver da utilizzare, indicato con l'indirizzo ip.
+Salvataggio regole
+----------------------
+
+Il comando ``iptables`` serve per interagire con il framework ``Netfilter`` ch gestisce il firewall di Linux al livello del kernel. Questo comporta, in modo analogo a quando avvene col comando ``ifconfig``, che i cambiameti impostati siano in *tempo reale, RAM*, non persistenti nel sistema: al boot sucessivo del sistema tutto tornera' alle impostazioni di base (in questo caso *nulle*, con policy di default settate su ``ACCEPT`` per tutto).
+
+Le varie invocazioni di iptables potrebbero essere richiamate da degli scripts dedicati, ma fortunatamente e' stata predisposta una apposita utility per gestire questi scripts in modo da avere a disposizione un *formato standard* per il salvataggio e il ripristino delle regole del firewall.
+
+Altro problema: decidere quando attivare / disattivare queste regole. Utilizzare i *runlevels* non e' una soluzione adeguata: le regole del firewall sono legate all'attivita' delle schede di rete (e un host con diverse schede di rete puo' attivarle a secondo delle esigenze di routing, partenza di servizi es file_sharing per un back-up...): il sistema operativo Debian permette di legare l'esecuzione di comandi alla attivazione di una device di rete (``up``), dopo la sua attivazione (``post-up``, utile per devices che richiedono un certo tempo per inizializzarsi: come un tunnel o una connessione punto a punto), prima della sua attivazione (``pre-up``). Allo stesso modo sono disponibili eventi analoghi per accompagnare la disattivazione dei device di rete: si veda la pagina man di ``interfaces``.
+
+Nel nostro caso avremo per una possibile scheda ``eth0``:
+
+``/etc/network/interfaces`` ::
+
+ iface eth1 inet static
+ up /sbin/iptables-restore /root/firewall/basic_fw
+ # Seguno i soliti parametri della scheda di rete
+ address 10.10.208.21
+
+
+Iptables-save
+~~~~~~~~~~~~~~~
+
+Per salvare le regole di iptables attualmente presenti nel kernel si usi il comando::
+
+ # iptables-save >> /root/firewall/basic_fw
+
+Il contenuto del file dovrebbe essere *comprensibile*: sostanzialmente sono regole di iptables, senza il comando iptables ripetuto, suddivisi per le varie tabelle. Potete comunque correggere eventuali parametri con un edito di testo.
+
+
+Se non avete un'idea migliore potreste voler tenere gli script dei firewall in una cartella ``~/firewall`` nella home directory dell'utente ``root``.
+
+Iptables-restore
+~~~~~~~~~~~~~~~~~~~~
+
+Per ripristinare un set di regole prcedentemente salvate con ``iptables-save`` si utilizzi ``iptables-restore``. Se questo deve essere fatto in modalita' *non interattiva*, ad esempio deve essere eseguito dal demone che si occupa di inizializzare le schede di rete, oppure un *cron* o altro, e' buona norma richiamare i percorsi completi sia dei comandi che dei file::
+
+ /sbin/iptables-restore /root/firewall/basic_fw
+
NOTE
========