<style type="text/css">
/*
- :Author: David Goodger (goodger@python.org)
- :Id: $Id: html4css1.css 5196 2007-06-03 20:25:28Z wiemann $
- :Copyright: This stylesheet has been placed in the public domain.
-
- Default cascading style sheet for the HTML output of Docutils.
-
- See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
- customize this style sheet.
+ Author: Peter Parente
+ Date: 2008/01/22
+ Version: 1.0
+ Copyright: This stylesheet has been placed in the public domain - free to edit and use for all uses.
*/
- /* used to remove borders from tables and images */
- .borderless, table.borderless td, table.borderless th {
- border: 0 }
-
- table.borderless td, table.borderless th {
- /* Override padding for "table.docutils td" with "! important".
- The right padding separates the table cells. */
- padding: 0 0.5em 0 0 ! important }
+ body {
+ font: 100% sans-serif;
+ background: #ffffff;
+ color: black;
+ margin: 2em;
+ padding: 0em 2em;
+ }
- .first {
- /* Override more specific margin styles with "! important". */
- margin-top: 0 ! important }
+ p.topic-title {
+ font-weight: bold;
+ }
- .last, .with-subtitle {
- margin-bottom: 0 ! important }
+ table.docinfo {
+ text-align: left;
+ margin: 2em 0em;
+ }
- .hidden {
- display: none }
+ a[href] {
+ color: #436976;
+ background-color: transparent;
+ }
a.toc-backref {
- text-decoration: none ;
- color: black }
-
- blockquote.epigraph {
- margin: 2em 5em ; }
-
- dl.docutils dd {
- margin-bottom: 0.5em }
-
- /* Uncomment (and remove this text!) to get bold-faced definition list terms
- dl.docutils dt {
- font-weight: bold }
- */
-
- div.abstract {
- margin: 2em 5em }
-
- div.abstract p.topic-title {
- font-weight: bold ;
- text-align: center }
-
- div.admonition, div.attention, div.caution, div.danger, div.error,
- div.hint, div.important, div.note, div.tip, div.warning {
- margin: 2em ;
- border: medium outset ;
- padding: 1em }
-
- div.admonition p.admonition-title, div.hint p.admonition-title,
- div.important p.admonition-title, div.note p.admonition-title,
- div.tip p.admonition-title {
- font-weight: bold ;
- font-family: sans-serif }
-
- div.attention p.admonition-title, div.caution p.admonition-title,
- div.danger p.admonition-title, div.error p.admonition-title,
- div.warning p.admonition-title {
- color: red ;
- font-weight: bold ;
- font-family: sans-serif }
-
- /* Uncomment (and remove this text!) to get reduced vertical space in
- compound paragraphs.
- div.compound .compound-first, div.compound .compound-middle {
- margin-bottom: 0.5em }
-
- div.compound .compound-last, div.compound .compound-middle {
- margin-top: 0.5em }
- */
-
- div.dedication {
- margin: 2em 5em ;
- text-align: center ;
- font-style: italic }
-
- div.dedication p.topic-title {
- font-weight: bold ;
- font-style: normal }
-
- div.figure {
- margin-left: 2em ;
- margin-right: 2em }
-
- div.footer, div.header {
- clear: both;
- font-size: smaller }
-
- div.line-block {
- display: block ;
- margin-top: 1em ;
- margin-bottom: 1em }
-
- div.line-block div.line-block {
- margin-top: 0 ;
- margin-bottom: 0 ;
- margin-left: 1.5em }
-
- div.sidebar {
- margin: 0 0 0.5em 1em ;
- border: medium outset ;
- padding: 1em ;
- background-color: #ffffee ;
- width: 40% ;
- float: right ;
- clear: right }
+ text-decoration: none;
+ }
+
+ h1 a[href] {
+ color: #003a6b;
+ text-decoration: none;
+ background-color: transparent;
+ }
+
+ a.strong {
+ font-weight: bold;
+ }
+
+ img {
+ margin: 0;
+ border: 0;
+ }
+
+ p {
+ margin: 0.5em 0 1em 0;
+ line-height: 1.5em;
+ }
+
+ p a:visited {
+ color: purple;
+ background-color: transparent;
+ }
+
+ p a:active {
+ color: red;
+ background-color: transparent;
+ }
+
+ a:hover {
+ text-decoration: none;
+ }
+
+ p img {
+ border: 0;
+ margin: 0;
+ }
- div.sidebar p.rubric {
- font-family: sans-serif ;
- font-size: medium }
-
- div.system-messages {
- margin: 5em }
-
- div.system-messages h1 {
- color: red }
-
- div.system-message {
- border: medium outset ;
- padding: 1em }
-
- div.system-message p.system-message-title {
- color: red ;
- font-weight: bold }
-
- div.topic {
- margin: 2em }
-
- h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
- h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
- margin-top: 0.4em }
+ p.rubric {
+ font-weight: bold;
+ font-style: italic;
+ }
h1.title {
- text-align: center }
+ color: #003a6b;
+ font-size: 250%;
+ margin-bottom: 0em;
+ }
h2.subtitle {
- text-align: center }
-
- hr.docutils {
- width: 75% }
-
- img.align-left {
- clear: left }
-
- img.align-right {
- clear: right }
+ color: #003a6b;
+ border-bottom: 0px;
+ }
+
+ h1, h2, h3, h4, h5, h6 {
+ color: #555;
+ background-color: transparent;
+ margin: 0em;
+ padding-top: 0.5em;
+ }
+
+ h1 {
+ font-size: 160%;
+ margin-bottom: 0.5em;
+ border-bottom: 2px solid #aaa;
+ }
+
+ h2 {
+ font-size: 140%;
+ margin-bottom: 0.5em;
+ border-bottom: 1px solid #aaa;
+ }
+
+ h3 {
+ font-size: 130%;
+ margin-bottom: 0.5em;
+ }
+
+ h4 {
+ font-size: 110%;
+ font-weight: bold;
+ margin-bottom: 0.5em;
+ }
+
+ h5 {
+ font-size: 105%;
+ font-weight: bold;
+ margin-bottom: 0.5em;
+ }
+
+ h6 {
+ font-size: 100%;
+ font-weight: bold;
+ margin-bottom: 0.5em;
+ }
+
+ dt {
+ font-style: italic;
+ }
+
+ dd {
+ margin-bottom: 1.5em;
+ }
+
+ div.admonition, div.note, div.tip, div.caution, div.important {
+ margin: 2em 2em;
+ padding: 0em 1em;
+ border-top: 1px solid #aaa;
+ border-left: 1px solid #aaa;
+ border-bottom: 2px solid #555;
+ border-right: 2px solid #555;
+ }
+
+ div.important {
+ background: transparent url('../images/important.png') 10px 2px no-repeat;
+ }
+
+ div.caution {
+ background: transparent url('../images/caution.png') 10px 2px no-repeat;
+ }
+
+ div.note {
+ background: transparent url('../images/note.png') 10px 2px no-repeat;
+ }
+
+ div.tip {
+ background: transparent url('../images/tip.png') 10px 2px no-repeat;
+ }
+
+ div.admonition-example {
+ background: transparent url('../images/tip.png') 10px 2px no-repeat;
+ }
+
+ div.admonition-critical-example {
+ background: transparent url('../images/important.png') 10px 2px no-repeat;
+ }
+
+ p.admonition-title {
+ font-weight: bold;
+ border-bottom: 1px solid #aaa;
+ padding-left: 30px;
+ }
- ol.simple, ul.simple {
- margin-bottom: 1em }
-
- ol.arabic {
- list-style: decimal }
-
- ol.loweralpha {
- list-style: lower-alpha }
-
- ol.upperalpha {
- list-style: upper-alpha }
-
- ol.lowerroman {
- list-style: lower-roman }
-
- ol.upperroman {
- list-style: upper-roman }
-
- p.attribution {
- text-align: right ;
- margin-left: 50% }
+ table.docutils {
+ text-align: left;
+ border: 1px solid gray;
+ border-collapse: collapse;
+ width: 100%;
+ margin: 1.5em 0em;
+ }
- p.caption {
- font-style: italic }
+ table.docutils caption {
+ font-style: italic;
+ }
- p.credits {
- font-style: italic ;
- font-size: smaller }
+ table.docutils td, table.docutils th {
+ padding: 0.25em 0.5em;
+ }
- p.label {
- white-space: nowrap }
+ table.docutils th {
+ background-color: #dddddd;
+ }
- p.rubric {
- font-weight: bold ;
- font-size: larger ;
- color: maroon ;
- text-align: center }
+ div.sidebar {
+ width: 33%;
+ float: right;
+ margin: 0em 2em;
+ padding: 0em 1em;
+ border-top: 1px solid #aaa;
+ border-left: 1px solid #aaa;
+ border-bottom: 2px solid #555;
+ border-right: 2px solid #555;
+ }
p.sidebar-title {
- font-family: sans-serif ;
- font-weight: bold ;
- font-size: larger }
+ margin-bottom: 0em;
+ color: #003a6b;
+ border-bottom: 1px solid #aaa;
+ font-weight: bold;
+ }
p.sidebar-subtitle {
- font-family: sans-serif ;
- font-weight: bold }
-
- p.topic-title {
- font-weight: bold }
-
- pre.address {
- margin-bottom: 0 ;
- margin-top: 0 ;
- font-family: serif ;
- font-size: 100% }
-
- pre.literal-block, pre.doctest-block {
- margin-left: 2em ;
- margin-right: 2em }
-
- span.classifier {
- font-family: sans-serif ;
- font-style: oblique }
-
- span.classifier-delimiter {
- font-family: sans-serif ;
- font-weight: bold }
-
- span.interpreted {
- font-family: sans-serif }
-
- span.option {
- white-space: nowrap }
-
- span.pre {
- white-space: pre }
-
- span.problematic {
- color: red }
-
- span.section-subtitle {
- /* font-size relative to parent (h1..h6 element) */
- font-size: 80% }
-
- table.citation {
- border-left: solid 1px gray;
- margin-left: 1px }
-
- table.docinfo {
- margin: 2em 4em }
-
- table.docutils {
- margin-top: 0.5em ;
- margin-bottom: 0.5em }
-
- table.footnote {
- border-left: solid 1px black;
- margin-left: 1px }
-
- table.docutils td, table.docutils th,
- table.docinfo td, table.docinfo th {
- padding-left: 0.5em ;
- padding-right: 0.5em ;
- vertical-align: top }
-
- table.docutils th.field-name, table.docinfo th.docinfo-name {
- font-weight: bold ;
- text-align: left ;
- white-space: nowrap ;
- padding-left: 0 }
-
- h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
- h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
- font-size: 100% }
-
- ul.auto-toc {
- list-style-type: none }
+ margin-top: 0em;
+ font-style: italic;
+ color: #003a6b;
+ }
</style>
</head>
<tr class="field">
<th class="field-name">Version:</th>
- <td class="field-body">0.5</td>
+ <td class="field-body">0.7</td>
</tr>
</tbody>
</table>
"id7">1.1 Solo per uso
interno</a></li>
- <li><a class="reference internal" href="#rete" id="id8"
- name="id8">1.2 Rete</a></li>
+ <li>
+ <a class="reference internal" href="#rete" id="id8"
+ name="id8">1.2 Rete</a>
+
+ <ul class="auto-toc">
+ <li><a class="reference internal" href=
+ "#interfaces" id="id9" name=
+ "id9">1.2.1 interfaces</a></li>
+ </ul>
+ </li>
<li><a class="reference internal" href=
- "#bash-completion" id="id9" name=
- "id9">1.3 Bash completion</a></li>
+ "#bash-completion" id="id10" name=
+ "id10">1.3 Bash completion</a></li>
- <li><a class="reference internal" href="#vim" id="id10"
- name="id10">1.4 Vim</a></li>
+ <li><a class="reference internal" href="#vim" id="id11"
+ name="id11">1.4 Vim</a></li>
- <li><a class="reference internal" href="#vnc" id="id11"
- name="id11">1.5 VNC</a></li>
+ <li><a class="reference internal" href="#vnc" id="id12"
+ name="id12">1.5 VNC</a></li>
<li><a class="reference internal" href=
- "#lista-dei-pacchetti-di-base" id="id12" name=
- "id12">1.6 Lista dei pacchetti di
+ "#lista-dei-pacchetti-di-base" id="id13" name=
+ "id13">1.6 Lista dei pacchetti di
base</a></li>
<li>
<a class="reference internal" href=
- "#apt-configurazione" id="id13" name=
- "id13">1.7 Apt configurazione</a>
+ "#apt-configurazione" id="id14" name=
+ "id14">1.7 Apt configurazione</a>
<ul class="auto-toc">
<li><a class="reference internal" href=
- "#sources-list" id="id14" name=
- "id14">1.7.1 sources.list</a></li>
+ "#sources-list" id="id15" name=
+ "id15">1.7.1 sources.list</a></li>
<li><a class="reference internal" href=
- "#etc-apt-apt-conf" id="id15" name=
- "id15">1.7.2 /etc/apt/apt.conf</a></li>
+ "#etc-apt-apt-conf" id="id16" name=
+ "id16">1.7.2 /etc/apt/apt.conf</a></li>
</ul>
</li>
</ul>
</li>
<li>
- <a class="reference internal" href="#squid" id="id16"
- name="id16">2 Squid</a>
+ <a class="reference internal" href="#squid" id="id17"
+ name="id17">2 Squid</a>
<ul class="auto-toc">
<li>
<a class="reference internal" href=
- "#configurazione-squid-conf" id="id17" name=
- "id17">2.1 Configurazione:
+ "#configurazione-squid-conf" id="id18" name=
+ "id18">2.1 Configurazione:
squid.conf</a>
<ul class="auto-toc">
<li><a class="reference internal" href="#cache-dir"
- id="id18" name=
- "id18">2.1.1 Cache_dir</a></li>
+ id="id19" name=
+ "id19">2.1.1 Cache_dir</a></li>
<li><a class="reference internal" href=
- "#tag-maximum-object-size" id="id19" name=
- "id19">2.1.2 TAG:
+ "#tag-maximum-object-size" id="id20" name=
+ "id20">2.1.2 TAG:
maximum_object_size</a></li>
<li><a class="reference internal" href=
- "#tag-cache-mem" id="id20" name=
- "id20">2.1.3 TAG:
+ "#tag-cache-mem" id="id21" name=
+ "id21">2.1.3 TAG:
cache_mem</a></li>
<li><a class="reference internal" href=
- "#tag-minimum-object-size" id="id21" name=
- "id21">2.1.4 TAG:
+ "#tag-minimum-object-size" id="id22" name=
+ "id22">2.1.4 TAG:
minimum_object_size</a></li>
</ul>
</li>
<li>
<a class="reference internal" href=
- "#negoziazione-degli-accesi-al-servizio" id="id22"
- name="id22">2.2 Negoziazione degli
+ "#negoziazione-degli-accesi-al-servizio" id="id23"
+ name="id23">2.2 Negoziazione degli
accesi al servizio</a>
<ul class="auto-toc">
<li><a class="reference internal" href=
- "#acl-e-http-access" id="id23" name=
- "id23">2.2.1 ACL e http
+ "#acl-e-http-access" id="id24" name=
+ "id24">2.2.1 ACL e http
access</a></li>
</ul>
</li>
<li>
<a class="reference internal" href="#testare-squid"
- id="id24" name="id24">2.3 Testare
+ id="id25" name="id25">2.3 Testare
Squid</a>
<ul class="auto-toc">
<li><a class="reference internal" href=
- "#client-wgetrc" id="id25" name=
- "id25">2.3.1 Client:
+ "#client-wgetrc" id="id26" name=
+ "id26">2.3.1 Client:
~/.wgetrc</a></li>
<li><a class="reference internal" href=
- "#server-access-log" id="id26" name=
- "id26">2.3.2 Server:
+ "#server-access-log" id="id27" name=
+ "id27">2.3.2 Server:
access.log</a></li>
</ul>
</li>
</li>
<li>
- <a class="reference internal" href="#apache" id="id27"
- name="id27">3 Apache</a>
+ <a class="reference internal" href="#apache" id="id28"
+ name="id28">3 Apache</a>
<ul class="auto-toc">
<li><a class="reference internal" href=
- "#pacchetti-da-installare" id="id28" name=
- "id28">3.1 Pacchetti da
+ "#pacchetti-da-installare" id="id29" name=
+ "id29">3.1 Pacchetti da
installare::</a></li>
<li><a class="reference internal" href=
- "#configurazione-di-apache" id="id29" name=
- "id29">3.2 Configurazione di
+ "#configurazione-di-apache" id="id30" name=
+ "id30">3.2 Configurazione di
Apache</a></li>
<li><a class="reference internal" href="#apache-conf"
- id="id30" name=
- "id30">3.3 apache.conf</a></li>
+ id="id31" name=
+ "id31">3.3 apache.conf</a></li>
<li>
<a class="reference internal" href=
- "#installazione-di-php" id="id31" name=
- "id31">3.4 Installazione di PHP</a>
+ "#installazione-di-php" id="id32" name=
+ "id32">3.4 Installazione di PHP</a>
<ul class="auto-toc">
<li><a class="reference internal" href=
- "#test-del-modulo-php" id="id32" name=
- "id32">3.4.1 Test del modulo
+ "#test-del-modulo-php" id="id33" name=
+ "id33">3.4.1 Test del modulo
php</a></li>
<li><a class="reference internal" href=
- "#installazione-del-supporto-per-mysql" id="id33"
- name="id33">3.4.2 Installazione
+ "#installazione-del-supporto-per-mysql" id="id34"
+ name="id34">3.4.2 Installazione
del supporto per Mysql</a></li>
<li><a class="reference internal" href=
- "#phpmyadmin" id="id34" name=
- "id34">3.4.3 phpmyadmin</a></li>
+ "#phpmyadmin" id="id35" name=
+ "id35">3.4.3 phpmyadmin</a></li>
<li><a class="reference internal" href=
"#installazione-del-supporto-per-postgresql" id=
- "id35" name=
- "id35">3.4.4 Installazione del
+ "id36" name=
+ "id36">3.4.4 Installazione del
supporto per Postgresql</a></li>
<li><a class="reference internal" href=
- "#phppgadmin" id="id36" name=
- "id36">3.4.5 phppgadmin</a></li>
+ "#phppgadmin" id="id37" name=
+ "id37">3.4.5 phppgadmin</a></li>
</ul>
</li>
<li>
<a class="reference internal" href="#virtual-hosts"
- id="id37" name="id37">3.5 Virtual
+ id="id38" name="id38">3.5 Virtual
hosts</a>
<ul class="auto-toc">
<li><a class="reference internal" href=
- "#gestione-dns" id="id38" name=
- "id38">3.5.1 Gestione DNS</a></li>
+ "#gestione-dns" id="id39" name=
+ "id39">3.5.1 Gestione DNS</a></li>
<li><a class="reference internal" href=
- "#virtual-host" id="id39" name=
- "id39">3.5.2 Virtual host</a></li>
+ "#virtual-host" id="id40" name=
+ "id40">3.5.2 Virtual host</a></li>
</ul>
</li>
<li>
<a class="reference internal" href=
- "#negoziazione-accessi" id="id40" name=
- "id40">3.6 Negoziazione accessi</a>
+ "#negoziazione-accessi" id="id41" name=
+ "id41">3.6 Negoziazione accessi</a>
<ul class="auto-toc">
<li><a class="reference internal" href=
- "#limiti-su-base-ip" id="id41" name=
- "id41">3.6.1 Limiti su base
+ "#limiti-su-base-ip" id="id42" name=
+ "id42">3.6.1 Limiti su base
ip</a></li>
</ul>
</li>
<li>
<a class="reference internal" href=
- "#user-authentication" id="id42" name=
- "id42">3.7 User Authentication</a>
+ "#user-authentication" id="id43" name=
+ "id43">3.7 User Authentication</a>
<ul class="auto-toc">
<li><a class="reference internal" href=
- "#definire-la-cartella" id="id43" name=
- "id43">3.7.1 Definire la
+ "#definire-la-cartella" id="id44" name=
+ "id44">3.7.1 Definire la
cartella</a></li>
<li><a class="reference internal" href=
- "#creazione-del-database-delle-passwords" id="id44"
- name="id44">3.7.2 Creazione del
+ "#creazione-del-database-delle-passwords" id="id45"
+ name="id45">3.7.2 Creazione del
database delle passwords</a></li>
<li><a class="reference internal" href="#id3" id=
- "id45" name=
- "id45">3.7.3 Configurazione di
+ "id46" name=
+ "id46">3.7.3 Configurazione di
Apache</a></li>
</ul>
</li>
<li><a class="reference internal" href="#cavets" id=
- "id46" name="id46">3.8 Cavets</a></li>
+ "id47" name="id47">3.8 Cavets</a></li>
</ul>
</li>
<li>
<a class="reference internal" href="#domain-name-system"
- id="id47" name="id47">4 Domain Name
+ id="id48" name="id48">4 Domain Name
System</a>
<ul class="auto-toc">
<li><a class="reference internal" href=
- "#nomi-di-dominio" id="id48" name=
- "id48">4.1 Nomi di dominio</a></li>
+ "#nomi-di-dominio" id="id49" name=
+ "id49">4.1 Nomi di dominio</a></li>
<li><a class="reference internal" href=
- "#tipologie-di-record" id="id49" name=
- "id49">4.2 Tipologie di
+ "#tipologie-di-record" id="id50" name=
+ "id50">4.2 Tipologie di
record</a></li>
<li><a class="reference internal" href="#utilizzo" id=
- "id50" name=
- "id50">4.3 Utilizzo</a></li>
+ "id51" name=
+ "id51">4.3 Utilizzo</a></li>
<li><a class="reference internal" href=
- "#risoluzione-dei-nomi-di-dominio" id="id51" name=
- "id51">4.4 Risoluzione dei nomi di
+ "#risoluzione-dei-nomi-di-dominio" id="id52" name=
+ "id52">4.4 Risoluzione dei nomi di
dominio</a></li>
- <li><a class="reference internal" href="#dig" id="id52"
- name="id52">4.5 Dig</a></li>
+ <li><a class="reference internal" href="#dig" id="id53"
+ name="id53">4.5 Dig</a></li>
+
+ <li><a class="reference internal" href="#resolv-conf"
+ id="id54" name=
+ "id54">4.6 resolv.conf</a></li>
+
+ <li><a class="reference internal" href="#etc-hosts" id=
+ "id55" name=
+ "id55">4.7 /etc/hosts</a></li>
+
+ <li><a class="reference internal" href="#hostname" id=
+ "id56" name=
+ "id56">4.8 Hostname</a></li>
</ul>
</li>
- <li><a class="reference internal" href="#dnsmasq" id="id53"
- name="id53">5 DNSmasq</a></li>
+ <li>
+ <a class="reference internal" href="#dnsmasq" id="id57"
+ name="id57">5 DNSmasq</a>
+
+ <ul class="auto-toc">
+ <li><a class="reference internal" href=
+ "#configurazione" id="id58" name=
+ "id58">5.1 Configurazione</a></li>
+
+ <li><a class="reference internal" href="#dhcp" id=
+ "id59" name="id59">5.2 DHCP</a></li>
+
+ <li><a class="reference internal" href="#dns-cache" id=
+ "id60" name="id60">5.3 DNS
+ cache</a></li>
+
+ <li><a class="reference internal" href="#dhcpd" id=
+ "id61" name="id61">5.4 DHCPd</a></li>
+ </ul>
+ </li>
<li>
- <a class="reference internal" href="#samba" id="id54"
- name="id54">6 Samba</a>
+ <a class="reference internal" href="#samba" id="id62"
+ name="id62">6 Samba</a>
<ul class="auto-toc">
<li><a class="reference internal" href="#pacchetti" id=
- "id55" name=
- "id55">6.1 Pacchetti</a></li>
+ "id63" name=
+ "id63">6.1 Pacchetti</a></li>
<li><a class="reference internal" href=
- "#passwords-e-autenticazione" id="id56" name=
- "id56">6.2 Passwords e
+ "#passwords-e-autenticazione" id="id64" name=
+ "id64">6.2 Passwords e
autenticazione</a></li>
<li><a class="reference internal" href=
- "#creazione-utenti" id="id57" name=
- "id57">6.3 Creazione Utenti</a></li>
+ "#creazione-utenti" id="id65" name=
+ "id65">6.3 Creazione Utenti</a></li>
<li>
<a class="reference internal" href=
- "#creare-la-condivisione" id="id58" name=
- "id58">6.4 Creare la
+ "#creare-la-condivisione" id="id66" name=
+ "id66">6.4 Creare la
condivisione</a>
<ul class="auto-toc">
<li><a class="reference internal" href=
"#sicurezza-permessi-di-esecuzione-sul-server" id=
- "id59" name=
- "id59">6.4.1 Sicurezza: permessi
+ "id67" name=
+ "id67">6.4.1 Sicurezza: permessi
di esecuzione sul server</a></li>
</ul>
</li>
<li><a class="reference internal" href=
"#configurazione-dell-applicativo-samba-vero-e-proprio"
- id="id60" name=
- "id60">6.5 Configurazione
+ id="id68" name=
+ "id68">6.5 Configurazione
dell'applicativo Samba vero e proprio.</a></li>
<li><a class="reference internal" href=
- "#testare-il-servizio" id="id61" name=
- "id61">6.6 Testare il
+ "#testare-il-servizio" id="id69" name=
+ "id69">6.6 Testare il
Servizio</a></li>
</ul>
</li>
<li>
- <a class="reference internal" href="#firewall" id="id62"
- name="id62">7 Firewall</a>
+ <a class="reference internal" href=
+ "#server-di-posta-postfix" id="id70" name=
+ "id70">7 Server di posta: Postfix</a>
+
+ <ul class="auto-toc">
+ <li>
+ <a class="reference internal" href="#imap-e-pop" id=
+ "id71" name="id71">7.1 Imap e
+ pop</a>
+
+ <ul class="auto-toc">
+ <li><a class="reference internal" href=
+ "#web-client" id="id72" name=
+ "id72">7.1.1 Web client</a></li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+
+ <li>
+ <a class="reference internal" href="#firewall" id="id73"
+ name="id73">8 Firewall</a>
<ul class="auto-toc">
<li><a class="reference internal" href="#links" id=
- "id63" name="id63">7.1 Links</a></li>
+ "id74" name="id74">8.1 Links</a></li>
<li><a class="reference internal" href="#ipfilter" id=
- "id64" name=
- "id64">7.2 Ipfilter</a></li>
+ "id75" name=
+ "id75">8.2 Ipfilter</a></li>
<li>
<a class="reference internal" href=
- "#progettazione-di-un-firewall" id="id65" name=
- "id65">7.3 Progettazione di un
+ "#progettazione-di-un-firewall" id="id76" name=
+ "id76">8.3 Progettazione di un
firewall</a>
<ul class="auto-toc">
<li><a class="reference internal" href=
- "#collocazione" id="id66" name=
- "id66">7.3.1 Collocazione</a></li>
+ "#collocazione" id="id77" name=
+ "id77">8.3.1 Collocazione</a></li>
<li><a class="reference internal" href=
- "#policy-di-default" id="id67" name=
- "id67">7.3.2 Policy di
+ "#policy-di-default" id="id78" name=
+ "id78">8.3.2 Policy di
default</a></li>
<li><a class="reference internal" href="#hardware"
- id="id68" name=
- "id68">7.3.3 Hardware</a></li>
+ id="id79" name=
+ "id79">8.3.3 Hardware</a></li>
</ul>
</li>
<li><a class="reference internal" href=
"#percorso-dei-pacchetti-tra-tabelle-e-catene" id=
- "id69" name="id69">7.4 Percorso dei
+ "id80" name="id80">8.4 Percorso dei
pacchetti tra tabelle e catene</a></li>
<li>
<a class="reference internal" href=
- "#concetti-di-base" id="id70" name=
- "id70">7.5 Concetti di base</a>
+ "#concetti-di-base" id="id81" name=
+ "id81">8.5 Concetti di base</a>
<ul class="auto-toc">
<li><a class="reference internal" href=
- "#tabelle-catene-regole" id="id71" name=
- "id71">7.5.1 Tabelle, catene,
+ "#tabelle-catene-regole" id="id82" name=
+ "id82">8.5.1 Tabelle, catene,
regole</a></li>
<li><a class="reference internal" href="#match" id=
- "id72" name=
- "id72">7.5.2 Match</a></li>
+ "id83" name=
+ "id83">8.5.2 Match</a></li>
<li><a class="reference internal" href="#targets"
- id="id73" name=
- "id73">7.5.3 Targets</a></li>
+ id="id84" name=
+ "id84">8.5.3 Targets</a></li>
</ul>
</li>
<li><a class="reference internal" href=
- "#tabella-filter" id="id74" name=
- "id74">7.6 Tabella Filter</a></li>
+ "#tabella-filter" id="id85" name=
+ "id85">8.6 Tabella Filter</a></li>
<li><a class="reference internal" href=
- "#flush-automatico-per-macchine-remote" id="id75" name=
- "id75">7.7 Flush automatico per
+ "#flush-automatico-per-macchine-remote" id="id86" name=
+ "id86">8.7 Flush automatico per
macchine remote</a></li>
<li><a class="reference internal" href=
- "#gestione-regole-rules" id="id76" name=
- "id76">7.8 Gestione regole
+ "#gestione-regole-rules" id="id87" name=
+ "id87">8.8 Gestione regole
(rules)</a></li>
+
+ <li>
+ <a class="reference internal" href=
+ "#salvataggio-regole" id="id88" name=
+ "id88">8.9 Salvataggio regole</a>
+
+ <ul class="auto-toc">
+ <li><a class="reference internal" href=
+ "#iptables-save" id="id89" name=
+ "id89">8.9.1 Iptables-save</a></li>
+
+ <li><a class="reference internal" href=
+ "#iptables-restore" id="id90" name=
+ "id90">8.9.2 Iptables-restore</a></li>
+ </ul>
+ </li>
+
+ <li>
+ <a class="reference internal" href="#esempi" id=
+ "id91" name="id91">8.10 Esempi</a>
+
+ <ul class="auto-toc">
+ <li><a class="reference internal" href=
+ "#bloccare-i-ping-dall-esterno" id="id92" name=
+ "id92">8.10.1 Bloccare i ping
+ dall'esterno</a></li>
+
+ <li><a class="reference internal" href=
+ "#masquerading-snat" id="id93" name=
+ "id93">8.10.2 Masquerading
+ (sNAT)</a></li>
+
+ <li><a class="reference internal" href=
+ "#brute-force" id="id94" name=
+ "id94">8.10.3 Brute force</a></li>
+ </ul>
+ </li>
</ul>
</li>
- <li><a class="reference internal" href="#note" id="id77"
- name="id77">8 NOTE</a></li>
+ <li><a class="reference internal" href="#note" id="id95"
+ name="id95">9 NOTE</a></li>
</ul>
</div>
trasparente, quindi fate pure come se non ci fosse ;) .
Questo in attesa che si sappia se sara' nuovamente
utilizzabile il vecchio server Bender.</p>
+
+ <div class="section" id="interfaces">
+ <h3><a class="toc-backref" href=
+ "#id9">1.2.1 interfaces</a></h3>
+
+ <p>Segue un esempio del file di configurazione della
+ scheda di rete con configurazione statica:</p>
+
+ <p>/etc/network/interfaces:</p>
+ <pre class="literal-block">
+# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
+
+# The loopback interface
+iface lo inet loopback
+
+# La prima scheda di rete (se si chiama eth0)
+# (network, broadcast and gateway sono optional)
+iface etho inet static
+ # esempio con dhcp
+ # iface etho inet dhcp
+address 10.10.208.101
+netmask 255.255.255.0
+network 10.10.208.0
+broadcast 10.10.208.255
+gateway 10.10.208.254
+
+# Quali interfaccie devono partire automaticamente:
+auto lo eth0
+</pre>
+
+ <p>Controllare il nome della propia scheda di rete: a
+ volte <em>udev</em> rinomina la prima scheda a <tt class=
+ "docutils literal"><span class="pre">eth1</span></tt>,
+ oppure potreste avere piu' di una scheda di rete (anche
+ un'interfaccia <em>firewire</em> puo' essere
+ automaticamente abilitata come scheda di rete).</p>
+
+ <p>Se si usano <em>schede di rete virtuali</em> ( eth0:1
+ , eth0:1 , ...) ricordarsi che queste dipendono dalla
+ scheda fisica a cui sono associate: abbattere con
+ <tt class="docutils literal"><span class=
+ "pre">ifconfig</span> <span class="pre">down</span>
+ <span class="pre">eth0</span></tt> la scheda principale
+ fara' cadere anche queste. Tornando ad attivare la schda
+ principale con <tt class="docutils literal"><span class=
+ "pre">ifconfig</span> <span class="pre">eth0</span>
+ <span class="pre">up</span></tt> la virtuale tornera'
+ attiva: nel caso voleste disabilitarla dovrete quindi
+ sempre abbattere manualmente la scheda virtuale
+ <em>prima</em> della scheda reale.</p>
+ </div>
</div>
<div class="section" id="bash-completion">
<h2><a class="toc-backref" href=
- "#id9">1.3 Bash completion</a></h2>
+ "#id10">1.3 Bash completion</a></h2>
<p>Il completamento automatico della shell (che si attiva
premendo il tasto tab una o due volte mentre si sta
<div class="section" id="vim">
<h2><a class="toc-backref" href=
- "#id10">1.4 Vim</a></h2>
+ "#id11">1.4 Vim</a></h2>
<p>Vim e' l'editor di testo preferito dai sistemisti,
quindi sara' conveniente impostare fin da subito alcune
<div class="section" id="vnc">
<h2><a class="toc-backref" href=
- "#id11">1.5 VNC</a></h2>
+ "#id12">1.5 VNC</a></h2>
<p>I Virtual Network Computing (o VNC) sono software di
controllo remoto e servono per amministrare il proprio
<div class="section" id="lista-dei-pacchetti-di-base">
<h2><a class="toc-backref" href=
- "#id12">1.6 Lista dei pacchetti di
+ "#id13">1.6 Lista dei pacchetti di
base</a></h2>
<p>I pacchetti installati generalmente <a class=
<div class="section" id="apt-configurazione">
<h2><a class="toc-backref" href=
- "#id13">1.7 Apt configurazione</a></h2>
+ "#id14">1.7 Apt configurazione</a></h2>
<p>Vediamo i due file principali di apt:</p>
<div class="section" id="sources-list">
<h3><a class="toc-backref" href=
- "#id14">1.7.1 sources.list</a></h3>
+ "#id15">1.7.1 sources.list</a></h3>
<p>Questo file contiene i sorgenti da cui <em>apt</em>
preleva i pacchetti da installare tramite <em>dpkg</em>,
<div class="section" id="etc-apt-apt-conf">
<h3><a class="toc-backref" href=
- "#id15">1.7.2 /etc/apt/apt.conf</a></h3>
+ "#id16">1.7.2 /etc/apt/apt.conf</a></h3>
<p>Questo file contiene le opzioni di apt, come ad
esempio il proxy:</p>
<div class="section" id="squid">
<h1><a class="toc-backref" href=
- "#id16">2 Squid</a></h1>
+ "#id17">2 Squid</a></h1>
<p>Squid e' un proxy cache http (ma anche FTP e https)
robusto e strutturato, puo' essere usato sia in reti
<div class="section" id="configurazione-squid-conf">
<h2><a class="toc-backref" href=
- "#id17">2.1 Configurazione:
+ "#id18">2.1 Configurazione:
squid.conf</a></h2>
<p>Segue un estratto delle direttive principali viste in
<div class="section" id="cache-dir">
<h3><a class="toc-backref" href=
- "#id18">2.1.1 Cache_dir</a></h3>
+ "#id19">2.1.1 Cache_dir</a></h3>
<p>Cache dir serve per impostare dimensione e percorso
della cache creata sul supporto di storaggio. Essendo la
<p>Se si modifica la struttura del filesytem della cache
di Squid, ad esempio variando il numero delle directory,
puo' essere opportuno rigenerare la struttura della cache
- di squid (per lo meno se si <em>aumenta il numero delle
- directory di primo o secondo livello). Tipicamente e'
- opportuno cancellare (se si ha *ridotto</em> il numero
- delle diectory) la vecchia cache e poi generare una nuova
- struttura. Se si vuole <em>star nel sicuro</em> ogni
- volta che si modifica l'impostazione delle directory
+ di squid (per lo meno se si <em>aumenta</em> il numero
+ delle directory di primo o secondo livello). Tipicamente
+ e' consigliabile cancellare (se si ha <em>ridotto</em> il
+ numero delle diectory) la vecchia cache e poi generare
+ una nuova struttura. Se si vuole <em>star nel sicuro</em>
+ ogni volta che si modifica l'impostazione delle directory
<em>si svuoti la vecchia cache e se ne generi una
nuova</em></p>
<pre class="literal-block">
<div class="section" id="tag-maximum-object-size">
<h3><a class="toc-backref" href=
- "#id19">2.1.2 TAG:
+ "#id20">2.1.2 TAG:
maximum_object_size</a></h3>
<p>Questa direttiva imposta la dimensione massima degli
<div class="section" id="tag-cache-mem">
<h3><a class="toc-backref" href=
- "#id20">2.1.3 TAG: cache_mem</a></h3>
+ "#id21">2.1.3 TAG: cache_mem</a></h3>
<p><em>Cache_mem</em> imposta quanta memoria RAM venga
utilizzata per la cache di Squid. Questo dipendera' dalla
<div class="section" id="tag-minimum-object-size">
<h3><a class="toc-backref" href=
- "#id21">2.1.4 TAG:
+ "#id22">2.1.4 TAG:
minimum_object_size</a></h3>
<p>Questo parametro imposta la dimensione minima degli
<div class="section" id=
"negoziazione-degli-accesi-al-servizio">
<h2><a class="toc-backref" href=
- "#id22">2.2 Negoziazione degli accesi al
+ "#id23">2.2 Negoziazione degli accesi al
servizio</a></h2>
<p>Squid e' uno di quei servizi soggetto a problemi di tipo
<div class="section" id="acl-e-http-access">
<h3><a class="toc-backref" href=
- "#id23">2.2.1 ACL e http access</a></h3>
+ "#id24">2.2.1 ACL e http access</a></h3>
<p>Si proceda a creare una <tt class=
"docutils literal"><span class="pre">ACL</span></tt> di
<div class="section" id="testare-squid">
<h2><a class="toc-backref" href=
- "#id24">2.3 Testare Squid</a></h2>
+ "#id25">2.3 Testare Squid</a></h2>
<p>Configurato squid e' fondamentale testarne il corretto
funzionamento per assicurarsi di non aver creato un
<div class="section" id="client-wgetrc">
<h3><a class="toc-backref" href=
- "#id25">2.3.1 Client: ~/.wgetrc</a></h3>
+ "#id26">2.3.1 Client: ~/.wgetrc</a></h3>
<p>Nel file <tt class="docutils literal"><span class=
"pre">.wgetrc</span></tt> (si noti il punto iniziale: e'
<div class="section" id="server-access-log">
<h3><a class="toc-backref" href=
- "#id26">2.3.2 Server:
+ "#id27">2.3.2 Server:
access.log</a></h3>
<p>Si puo' controllare il corretto funzionamento del
<div class="section" id="apache">
<h1><a class="toc-backref" href=
- "#id27">3 Apache</a></h1>
+ "#id28">3 Apache</a></h1>
<p>Apache HTTP Server, o piu' comunemente Apache, e' il nome
dato alla piattaforma server Web modulare piu' diffusa (ma
<div class="section" id="pacchetti-da-installare">
<h2><a class="toc-backref" href=
- "#id28">3.1 Pacchetti da
+ "#id29">3.1 Pacchetti da
installare::</a></h2>
<blockquote>
<div class="section" id="configurazione-di-apache">
<h2><a class="toc-backref" href=
- "#id29">3.2 Configurazione di
+ "#id30">3.2 Configurazione di
Apache</a></h2>
<p>I file di configurazione di apache si trovano nella
<div class="section" id="apache-conf">
<h2><a class="toc-backref" href=
- "#id30">3.3 apache.conf</a></h2>
+ "#id31">3.3 apache.conf</a></h2>
<p>File di configurazione del servizio Apache, contiene le
impostazioni generiche (ad esempio utilizzo della RAM e
<div class="section" id="installazione-di-php">
<h2><a class="toc-backref" href=
- "#id31">3.4 Installazione di PHP</a></h2>
+ "#id32">3.4 Installazione di PHP</a></h2>
<p>Pacchetti da installare: <tt class=
"docutils literal"><span class="pre">php5</span>
<div class="section" id="test-del-modulo-php">
<h3><a class="toc-backref" href=
- "#id32">3.4.1 Test del modulo
+ "#id33">3.4.1 Test del modulo
php</a></h3>
<p>Creare nella cartella <tt class=
<div class="section" id=
"installazione-del-supporto-per-mysql">
<h3><a class="toc-backref" href=
- "#id33">3.4.2 Installazione del supporto
+ "#id34">3.4.2 Installazione del supporto
per Mysql</a></h3>
<p>Installare i pacchetti:</p>
<div class="section" id="phpmyadmin">
<h3><a class="toc-backref" href=
- "#id34">3.4.3 phpmyadmin</a></h3>
+ "#id35">3.4.3 phpmyadmin</a></h3>
<p>L'interfaccia web Phpmyadmin non richede
necessariamente la presenza di un database Mysql locale,
<div class="section" id=
"installazione-del-supporto-per-postgresql">
<h3><a class="toc-backref" href=
- "#id35">3.4.4 Installazione del supporto
+ "#id36">3.4.4 Installazione del supporto
per Postgresql</a></h3>
<p>Installare i pacchetti:</p>
<div class="section" id="phppgadmin">
<h3><a class="toc-backref" href=
- "#id36">3.4.5 phppgadmin</a></h3>
+ "#id37">3.4.5 phppgadmin</a></h3>
<p>L'interfaccia web Phppgadmin per il database server
PostgreSQL non richede necessariamente la presenza di un
<div class="section" id="virtual-hosts">
<h2><a class="toc-backref" href=
- "#id37">3.5 Virtual hosts</a></h2>
+ "#id38">3.5 Virtual hosts</a></h2>
<blockquote>
<ul class="simple">
<div class="section" id="gestione-dns">
<h3><a class="toc-backref" href=
- "#id38">3.5.1 Gestione DNS</a></h3>
+ "#id39">3.5.1 Gestione DNS</a></h3>
<p>Prima di tutto per poter impostare i virtual hosts
dovete avere un server DNS che risolva i vostri nomi di
<div class="section" id="virtual-host">
<h3><a class="toc-backref" href=
- "#id39">3.5.2 Virtual host</a></h3>
+ "#id40">3.5.2 Virtual host</a></h3>
<p>Esempio di Virtual host:</p>
<pre class="literal-block">
<div class="section" id="negoziazione-accessi">
<h2><a class="toc-backref" href=
- "#id40">3.6 Negoziazione accessi</a></h2>
+ "#id41">3.6 Negoziazione accessi</a></h2>
<p>Tipicamente quando si installa un server web il proprio
desiderio e' di dare accesso ai materiali disponibili al
<div class="section" id="limiti-su-base-ip">
<h3><a class="toc-backref" href=
- "#id41">3.6.1 Limiti su base ip</a></h3>
+ "#id42">3.6.1 Limiti su base ip</a></h3>
<p>La forma piu' semplice di restrizine degli accessi e'
su base degli indirizzi IP dei client: tipicamente i siti
<div class="section" id="user-authentication">
<h2><a class="toc-backref" href=
- "#id42">3.7 User Authentication</a></h2>
+ "#id43">3.7 User Authentication</a></h2>
<p>A volte conviene negoziare gli accessi ad un area di un
sito tramite autenticazione basata sull'accopiata <em>nome
<div class="section" id="definire-la-cartella">
<h3><a class="toc-backref" href=
- "#id43">3.7.1 Definire la
+ "#id44">3.7.1 Definire la
cartella</a></h3>
<p>Decidere quale sara' il <em>path</em> della cartella
<div class="section" id=
"creazione-del-database-delle-passwords">
<h3><a class="toc-backref" href=
- "#id44">3.7.2 Creazione del database
+ "#id45">3.7.2 Creazione del database
delle passwords</a></h3>
<p>Un modo semplice per gestire una database di
<div class="section" id="id3">
<h3><a class="toc-backref" href=
- "#id45">3.7.3 Configurazione di
+ "#id46">3.7.3 Configurazione di
Apache</a></h3>
<p>Ora possiamo passare alla configurazione vera e
<div class="section" id="cavets">
<h2><a class="toc-backref" href=
- "#id46">3.8 Cavets</a></h2>
+ "#id47">3.8 Cavets</a></h2>
<p>Problemi di cache:</p>
<div class="section" id="domain-name-system">
<h1><a class="toc-backref" href=
- "#id47">4 Domain Name System</a></h1>
+ "#id48">4 Domain Name System</a></h1>
<p>Domain Name System (spesso indicato con DNS) e' un
servizio utilizzato per la risoluzione di nomi di host in
<div class="section" id="nomi-di-dominio">
<h2><a class="toc-backref" href=
- "#id48">4.1 Nomi di dominio</a></h2>
+ "#id49">4.1 Nomi di dominio</a></h2>
<p>Un nome a dominio e' costituito da una serie di stringhe
separate da punti, ad esempio it.wikipedia.org. A
<div class="section" id="tipologie-di-record">
<h2><a class="toc-backref" href=
- "#id49">4.2 Tipologie di record</a></h2>
+ "#id50">4.2 Tipologie di record</a></h2>
<p>Ad un nome DNS possono corrispondere diversi tipi di
informazioni. Per questo motivo, esistono diversi tipi di
<div class="section" id="utilizzo">
<h2><a class="toc-backref" href=
- "#id50">4.3 Utilizzo</a></h2>
+ "#id51">4.3 Utilizzo</a></h2>
<p>I computer vengono identificati in rete grazie agli
indirizzi <em>IP</em>, questi pero' non sono comodi per gli
<div class="section" id="risoluzione-dei-nomi-di-dominio">
<h2><a class="toc-backref" href=
- "#id51">4.4 Risoluzione dei nomi di
+ "#id52">4.4 Risoluzione dei nomi di
dominio</a></h2>
<p>Ci sono vari strumenti per interrogare i server DNS e
<div class="section" id="dig">
<h2><a class="toc-backref" href=
- "#id52">4.5 Dig</a></h2>
+ "#id53">4.5 Dig</a></h2>
<p>Vediamo alcune opzioni utili nell'utilizzo di <tt class=
"docutils literal"><span class="pre">dig</span></tt> per
<p>...</p>
</blockquote>
+
+ <dl class="docutils">
+ <dt>dig @nome_dns</dt>
+
+ <dd>Permette di fare una query ad un server dns
+ particolare. Es: <tt class=
+ "docutils literal"><span class="pre">dig</span>
+ <span class="pre">@151.99.25.1</span> <span class=
+ "pre">www.google.it</span></tt></dd>
+
+ <dt>dig MX www.google.it</dt>
+
+ <dd>Chiede un campo in particolare, in questo caso il
+ campo MX</dd>
+
+ <dt>dig ANY www.google.it</dt>
+
+ <dd>Chiede tutti i campi, non solo i campi
+ <em>a</em></dd>
+
+ <dt>dig -x 74.125.43.104</dt>
+
+ <dd>Effettua una richiesta inversa: dall'ip al PTR
+ associato.</dd>
+ </dl>
+ </div>
+
+ <div class="section" id="resolv-conf">
+ <h2><a class="toc-backref" href=
+ "#id54">4.6 resolv.conf</a></h2>
+
+ <p>Il file <tt class="docutils literal"><span class=
+ "pre">/etc/resolv.conf</span></tt> 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.</p>
+
+ <p>/etc/resolv.conf:</p>
+
+ <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>
+
+ <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>
+
+ <p>Attenzione: se si usa un client DHCP o simile questo
+ file potra' essere riscritto automaticamente in base a
+ quanto ottenuto dal DHCP. Si veda la documentazione del
+ pacchtto <tt class="docutils literal"><span class=
+ "pre">resolvconf</span></tt>.</p>
+ </div>
+
+ <div class="section" id="etc-hosts">
+ <h2><a class="toc-backref" href=
+ "#id55">4.7 /etc/hosts</a></h2>
+
+ <p>Tabella statica per l'associazione tra IP e nomi di
+ dominio:</p>
+ <pre class="literal-block">
+# cat /etc/hosts
+</pre>
+
+ <blockquote>
+ 127.0.0.1 localhost.localdomain localhost 10.10.208.162
+ daniela daniela.piffa.net 10.10.208.254 mirror
+ mirror.piffa.net 91.191.138.15 thepiratebay.org
+ 192.168.0.11 chrome chrome.mydomain.com
+ </blockquote>
+
+ <p>Il contenuto e' un associazione tra un <em>IP</em> e
+ stringhe di testo (anche piu' di una es: <tt class=
+ "docutils literal"><span class="pre">mirror</span></tt> e
+ <tt class="docutils literal"><span class=
+ "pre">mirror.piffa.net</span></tt>), un record per
+ riga.</p>
+
+ <p>Il problema e' la gestione di questo file: quando gli
+ host cambiano IP si devono aggiornare i records, e c'e' poi
+ il problema di distribuire questo file tra i vari hosts
+ della propia LAN. Un metodo semplice per distribuire questo
+ file e' utilizzare <tt class=
+ "docutils literal"><span class="pre">Dnsmasq</span></tt>:
+ questo infatti legge e onora il file <tt class=
+ "docutils literal"><span class="pre">hosts</span></tt>
+ locale e lo <em>distribuisce</em> ai clients.</p>
+
+ <p>Modificare (riconducendola a un ip interno, cosi'
+ annullandola) la risoluzione di un nome di dominio e' un
+ modo drastico e funzionale per <em>annullarlo</em>
+ rendendolo indisponibile alla propia rete locale, ad
+ esempio aggiungere al file <tt class=
+ "docutils literal"><span class=
+ "pre">/etc/hosts</span></tt>:</p>
+ <pre class="literal-block">
+127.0.0.1 www.facebook.com
+</pre>
+
+ <p>Impedira' agli utenti della LAN di raggiungere
+ <em>facebook</em>, ora reindirizzato a i``localhost``.</p>
+ </div>
+
+ <div class="section" id="hostname">
+ <h2><a class="toc-backref" href=
+ "#id56">4.8 Hostname</a></h2>
+
+ <p>Ogni computer ha un <em>propio nome</em> visualizzabile
+ (e modificabile) con il comando <tt class=
+ "docutils literal"><span class=
+ "pre">hostname</span></tt>.</p>
+
+ <p>Per modificare in modo permanente il nome del computer
+ si modifichi il contenuto del file <tt class=
+ "docutils literal"><span class=
+ "pre">/etc/hostname</span></tt>.</p>
+
+ <p>Tipicamente si vuole mantenere una correlazione tra il
+ nome dell'host, o meglio la stringa con cui il server si
+ qualifica all'esterno, e il <em>PTR</em> dell'ip. Nel caso
+ di <em>servizi virtuali</em> ci sara' un <em>nome
+ server</em> principale associato al <em>PTR</em> condiviso.
+ Non e' automatico che un servizio, ad esempio un server di
+ posta, si qualifichi leggendo il contenuto di questo file e
+ magari aggiungendo come suffisso il dominio di cui fa parte
+ l'host: a volte questo parametro puo' essere specificato
+ nel file di configurazione del servizio:</p>
+ <pre class="literal-block">
+* Squid: ``visible_hostname``
+
+* Postfix: ``myhostname``
+</pre>
</div>
</div>
<div class="section" id="dnsmasq">
<h1><a class="toc-backref" href=
- "#id53">5 DNSmasq</a></h1>
+ "#id57">5 DNSmasq</a></h1>
<p>Dnsmasq puo' svolgere le funzioni di un DNS cache /
forwarder e un server DHCP caratterizzato dalla facilita' di
Molto utile per scopi didattici, sopratutto per testare
server SMTP impostando al volo i campi MX per nomi di dominio
fittizi.</p>
+
+ <div class="section" id="configurazione">
+ <h2><a class="toc-backref" href=
+ "#id58">5.1 Configurazione</a></h2>
+
+ <p>Vediamo alcune direttive di basi del file di
+ configurazione <tt class="docutils literal"><span class=
+ "pre">/etc/dnsmasq.conf</span></tt> utili per la
+ configurazione sia del DNS cache che per il DHCP
+ server:</p>
+
+ <dl class="docutils">
+ <dt>domain-needed</dt>
+
+ <dd>Non inoltrare query ai server DNS esterni per nomi
+ semplici (es andrea, portatile, pippo) che verranno
+ risolti solo in locale o causeranno direttamente una
+ risposta <em>not found</em> .</dd>
+
+ <dt>bogus-priv</dt>
+
+ <dd>Simile alla voce precedente ma per i reverse
+ look-up.</dd>
+
+ <dt>domain</dt>
+
+ <dd>Nome di dominio della rete da passare ai client.</dd>
+
+ <dt>expand_hosts</dt>
+
+ <dd>Aggiunge il <tt class="docutils literal"><span class=
+ "pre">nome</span> <span class="pre">host</span></tt> (
+ <tt class="docutils literal"><span class=
+ "pre">/etc/hostname</span></tt>) dei client al nome di
+ dominio per qualificarli in rete, senza bisogno di dover
+ comporre a un elenco statico di record nel file
+ <tt class="docutils literal"><span class=
+ "pre">/etc/hosts</span></tt> o nello stesso file di
+ configurazione di dnsmasq. Es: se un vostro client si
+ chiama <tt class="docutils literal"><span class=
+ "pre">chrome</span></tt> e il vostro dominio <tt class=
+ "docutils literal"><span class=
+ "pre">piffa.net</span></tt> dnsmasq rendera' disponibile
+ il campo <em>A</em> per il dominio <tt class=
+ "docutils literal"><span class=
+ "pre">chrome.piffa.net</span></tt> diretto all'ip che
+ verra' assegnato al client.</dd>
+ </dl>
+ </div>
+
+ <div class="section" id="dhcp">
+ <h2><a class="toc-backref" href=
+ "#id59">5.2 DHCP</a></h2>
+
+ <p>Per attivare il demone DHCP di dnsmaq basta aggiungere
+ al file di configurazione il <em>range</em> degli ip che si
+ vuole assegnare ai client con il <em>lease time</em> (tempo
+ di rilascio: quanto a lungo saranno validi gli ip
+ assegnati) espresso in ore.</p>
+
+ <p>Si faccia <em>attenzione</em>: in una rete puo' esseere
+ presente <strong>un solo server DHCP</strong>, o per meglio
+ dire qualunque server DHCP ascolta sul broadcast <tt class=
+ "docutils literal"><span class=
+ "pre">255.255.255.255</span></tt> e potrebbe rispondere a
+ un pacchetto di richesta DHCP. Quindi non fate partire
+ inavvertitamente un server DHCP in una rete gia' servita e
+ <strong>non vi azzardate ad andare in giro con un portatile
+ con un server DHCP attivo</strong> nelle reti altrui.
+ Questo vale anche per i laboratori di informatica dei corsi
+ di reti: non fate partire il vostro server DHCP se siete
+ collegati alla rete interna!</p>
+
+ <p>/etc/dnsmasq.conf (riga 118):</p>
+ <pre class="literal-block">
+dhcp-range=192.168.0.20,192.168.0.50,24h
+</pre>
+ </div>
+
+ <div class="section" id="dns-cache">
+ <h2><a class="toc-backref" href=
+ "#id60">5.3 DNS cache</a></h2>
+
+ <p>Aggiungere al file <tt class=
+ "docutils literal"><span class=
+ "pre">/etc/resolv.conif</span></tt> il nameserver localhost
+ in cima alla lista dei <em>nameserver</em> disponibili.
+ Dnsmasq usera' la propia cache e in caso non abbia
+ disponibile il <em>record DNS</em> richiesto fara' partire
+ una query al primo DNS:</p>
+ <pre class="literal-block">
+nameserver 127.0.0.1
+</pre>
+
+ <p>Questo pero' potrebbe essere problematico se un altro
+ servizio, ad esempio il DHCP client, riscrive il contenuto
+ del file <tt class="docutils literal"><span class=
+ "pre">/etc/resolv.conf</span></tt>. Per superare il
+ problema si aggiunga (riga 20) al file di configurazione
+ <tt class="docutils literal"><span class=
+ "pre">/etc/dhcp3/dhclient.conf</span></tt></p>
+ <pre class="literal-block">
+prepend domain-name-servers 127.0.0.1;
+</pre>
+
+ <p>Oppure potrebbe essere il nostro <em>PPP client</em>
+ (per la connessione ADSL) a intervenire sul file <tt class=
+ "docutils literal"><span class=
+ "pre">//etc/resolv.conf</span></tt>, si modifichi quindi
+ <tt class="docutils literal"><span class=
+ "pre">/etc/ppp/peers/dsl-provider</span></tt> commentando
+ <tt class="docutils literal"><span class=
+ "pre">usepeerdns</span></tt>. Se la vostra connessione ad
+ internet e' ADSL raramente dovreste aver bisogno di
+ cambiare i DNS una volta impostati (a meno che non usiate
+ un portatile!).</p>
+ </div>
+
+ <div class="section" id="dhcpd">
+ <h2><a class="toc-backref" href=
+ "#id61">5.4 DHCPd</a></h2>
+
+ <p>Dnsmasq puo' lavorare anche come DHCP server per la
+ vostra LAN.</p>
+ </div>
</div>
<div class="section" id="samba">
<h1><a class="toc-backref" href=
- "#id54">6 Samba</a></h1>
+ "#id62">6 Samba</a></h1>
<p>Samba e' un progetto libero che fornisce servizi di
condivisione di file e stampanti a client SMB/CIFS.</p>
<div class="section" id="pacchetti">
<h2><a class="toc-backref" href=
- "#id55">6.1 Pacchetti</a></h2>
+ "#id63">6.1 Pacchetti</a></h2>
<p>Pacchetti da installare per utilizzare Samba in
modalita' client <a class="footnote-reference" href="#id5"
<div class="section" id="passwords-e-autenticazione">
<h2><a class="toc-backref" href=
- "#id56">6.2 Passwords e
+ "#id64">6.2 Passwords e
autenticazione</a></h2>
<p>Per poter configurare Samba in modo che usi un sistema
<div class="section" id="creazione-utenti">
<h2><a class="toc-backref" href=
- "#id57">6.3 Creazione Utenti</a></h2>
+ "#id65">6.3 Creazione Utenti</a></h2>
<p>Creiamo per primo l'utente sotto GNU/Linux, facendo
attenzione a <em>non dargli una shell di sistema</em>. Gli
<div class="section" id="creare-la-condivisione">
<h2><a class="toc-backref" href=
- "#id58">6.4 Creare la
+ "#id66">6.4 Creare la
condivisione</a></h2>
<p>La condivisione altro non e' che una cartella sul server
<div class="section" id=
"sicurezza-permessi-di-esecuzione-sul-server">
<h3><a class="toc-backref" href=
- "#id59">6.4.1 Sicurezza: permessi di
+ "#id67">6.4.1 Sicurezza: permessi di
esecuzione sul server</a></h3>
<p>Bisognerebbe notare sul server i permessi di
<div class="section" id=
"configurazione-dell-applicativo-samba-vero-e-proprio">
<h2><a class="toc-backref" href=
- "#id60">6.5 Configurazione
+ "#id68">6.5 Configurazione
dell'applicativo Samba vero e proprio.</a></h2>
<p>Avendo preparato gli utenti (ancora una volta: non si
<div class="section" id="testare-il-servizio">
<h2><a class="toc-backref" href=
- "#id61">6.6 Testare il Servizio</a></h2>
+ "#id69">6.6 Testare il Servizio</a></h2>
<p>Come testare il servizio</p>
</div>
</div>
+ <div class="section" id="server-di-posta-postfix">
+ <h1><a class="toc-backref" href=
+ "#id70">7 Server di posta: Postfix</a></h1>
+
+ <p>Il server di posta che prenderemo in considerazione e'
+ Postfix, a seguire un estratto di un file do configurazione
+ <em>semplie</em> con l'abilizazione delle <em>Maildir</em>
+ nelle <tt class="docutils literal"><span class=
+ "pre">/home</span></tt> degli utenti per la consegna della
+ posta:</p>
+
+ <p><tt class="docutils literal"><span class=
+ "pre">/etc/postfix/main.cf</span></tt>:</p>
+ <pre class="literal-block">
+# ...segue dalla riga ~30
+myhostname = 162.piffa.net
+alias_maps = hash:/etc/aliases
+alias_database = hash:/etc/aliases
+myorigin = 162.piffa.net
+mydestination = 162.piffa.net, localhost
+# Se non avete un ip pubblico e statico, con un adeguato record PTR
+# dovrete usare un realy host per l'invio della posta
+relayhost = smtp.piffa.net
+mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
+
+# Per effettuare lo storaggio della posta nelle home directory degli utenti
+# in una Maildir invece che la Mailbox in /var/mail/utente
+# si disabiliti procmail
+#mailbox_command = procmail -a "$EXTENSION"
+
+# Storaggio della posta nella _cartella_ Maildir/ (si noti lo slash)
+# nella home dell'utente:
+home_mailbox = Maildir/
+mailbox_size_limit = 0
+recipient_delimiter = +
+inet_interfaces = all
+</pre>
+
+ <div class="section" id="imap-e-pop">
+ <h2><a class="toc-backref" href=
+ "#id71">7.1 Imap e pop</a></h2>
+
+ <p>Postfix e' un server SMTP, di conseguenza se volete che
+ i vostri utenti possano <em>scaricare</em> in locale la
+ posta generalemtne volete mettere a loro disposizione un
+ server <em>POP3</em> o ancora meglio <em>IMAP</em>. Oppure
+ entrambi.</p>
+
+ <dl class="docutils">
+ <dt>Pacchetti da installare</dt>
+
+ <dd>courier-imap courier-pop</dd>
+ </dl>
+
+ <p>i noti che IMAP necessita delle Maildir, non funziona
+ con le Mailbox in <tt class="docutils literal"><span class=
+ "pre">/var/mail/</span></tt> .</p>
+
+ <div class="section" id="web-client">
+ <h3><a class="toc-backref" href=
+ "#id72">7.1.1 Web client</a></h3>
+
+ <p>Per mettere a disposizione degli utenti un client web
+ per gestire la propia posta si installi il pacchetto:
+ <tt class="docutils literal"><span class=
+ "pre">squirrelmail</span></tt> . Ci sono tanti altri
+ client web disponibili: questo e' particolarmente
+ semplice. Naturalemte dovrete aver installato: <tt class=
+ "docutils literal"><span class="pre">php5</span>
+ <span class="pre">apache2</span></tt> .</p>
+
+ <p>L'interfaccia dovrebbe essere disponibile all'url:
+ <tt class="docutils literal"><span class=
+ "pre">http://localhost/squirrelmail</span></tt> . Se
+ cosi' non fosse assicuratevi che Apache abbia incluso il
+ file di configurazione di squirrelmail:</p>
+ <pre class="literal-block">
+cd /etc/apache2/conf.d/
+ln -s /etc/squirrelmail/apache.conf ./
+</pre>
+ </div>
+ </div>
+ </div>
+
<div class="section" id="firewall">
<h1><a class="toc-backref" href=
- "#id62">7 Firewall</a></h1>
+ "#id73">8 Firewall</a></h1>
<p>In Informatica, nell'ambito delle reti di computer, un
firewall (termine inglese dal significato originario di
<div class="section" id="links">
<h2><a class="toc-backref" href=
- "#id63">7.1 Links</a></h2>
+ "#id74">8.1 Links</a></h2>
<ul class="simple">
<li><a class="reference external" href=
<div class="section" id="ipfilter">
<h2><a class="toc-backref" href=
- "#id64">7.2 Ipfilter</a></h2>
+ "#id75">8.2 Ipfilter</a></h2>
<p>Link: <a class="reference external" href=
"http://iptables-tutorial.frozentux.net/iptables-tutorial.html#IPFILTERING">
<div class="section" id="progettazione-di-un-firewall">
<h2><a class="toc-backref" href=
- "#id65">7.3 Progettazione di un
+ "#id76">8.3 Progettazione di un
firewall</a></h2>
<p>Per implementare un firewall bisogna decidere un aio di
<div class="section" id="collocazione">
<h3><a class="toc-backref" href=
- "#id66">7.3.1 Collocazione</a></h3>
+ "#id77">8.3.1 Collocazione</a></h3>
<p>DMZ e MZ, internet, intranet, extranet. Frammentazione
della rete, decidere se diversi reparti di una azienda si
<div class="section" id="policy-di-default">
<h3><a class="toc-backref" href=
- "#id67">7.3.2 Policy di default</a></h3>
+ "#id78">8.3.2 Policy di default</a></h3>
<p>Drop o Accept: conseguenze per sicurezza, facilita' di
gestione.</p>
<div class="section" id="hardware">
<h3><a class="toc-backref" href=
- "#id68">7.3.3 Hardware</a></h3>
+ "#id79">8.3.3 Hardware</a></h3>
<p>Sostanzialmente potremmo distinquere due tipologie di
hardware:</p>
<div class="section" id=
"percorso-dei-pacchetti-tra-tabelle-e-catene">
<h2><a class="toc-backref" href=
- "#id69">7.4 Percorso dei pacchetti tra
+ "#id80">8.4 Percorso dei pacchetti tra
tabelle e catene</a></h2>
<p>link: <a class="reference external" href=
<div class="section" id="concetti-di-base">
<h2><a class="toc-backref" href=
- "#id70">7.5 Concetti di base</a></h2>
+ "#id81">8.5 Concetti di base</a></h2>
<div class="section" id="tabelle-catene-regole">
<h3><a class="toc-backref" href=
- "#id71">7.5.1 Tabelle, catene,
+ "#id82">8.5.1 Tabelle, catene,
regole</a></h3>
<p>Iptables lavora su 3 tabelle (tables) di default:</p>
<div class="section" id="match">
<h3><a class="toc-backref" href=
- "#id72">7.5.2 Match</a></h3>
+ "#id83">8.5.2 Match</a></h3>
<p>I Match di una regola (rule) servono a testare un
pacchetto per valutare se corrisponda a certe
<div class="section" id="targets">
<h3><a class="toc-backref" href=
- "#id73">7.5.3 Targets</a></h3>
+ "#id84">8.5.3 Targets</a></h3>
<p>Se un pacchetto soddisfa le condizioni del Match
<em>salta</em> (jump) su uno dei target possibili, in
<div class="section" id="tabella-filter">
<h2><a class="toc-backref" href=
- "#id74">7.6 Tabella Filter</a></h2>
+ "#id85">8.6 Tabella Filter</a></h2>
<p>E' quella implicita e predefinita (-t filter) Riguarda
le attività di filtraggio del traffico. Ha 3 catene
<div class="section" id=
"flush-automatico-per-macchine-remote">
<h2><a class="toc-backref" href=
- "#id75">7.7 Flush automatico per macchine
+ "#id86">8.7 Flush automatico per macchine
remote</a></h2>
<p>Se state provando una configurazione del firewall per
<div class="section" id="gestione-regole-rules">
<h2><a class="toc-backref" href=
- "#id76">7.8 Gestione regole
+ "#id87">8.8 Gestione regole
(rules)</a></h2>
<p>Il comando iptables viene usato per ogni attivitÃ
regole esistenti</dd>
</dl>
</div>
+
+ <div class="section" id="salvataggio-regole">
+ <h2><a class="toc-backref" href=
+ "#id88">8.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=
+ "#id89">8.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=
+ "#id90">8.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 class="section" id="esempi">
+ <h2><a class="toc-backref" href=
+ "#id91">8.10 Esempi</a></h2>
+
+ <p>Seguono alcuni esempi sull'uso di iptables, lo scenario
+ e' un computer con un paio di schede di rete fisiche una
+ delle quali collegata alla rete internet l'altra a una rete
+ privata per la LAN interna.</p>
+
+ <blockquote>
+ <ol class="arabic simple">
+ <li><tt class="docutils literal"><span class=
+ "pre">eth0</span></tt> scheda di rete principale sulla
+ rete privata interna 192.168.0.0/24</li>
+
+ <li><tt class="docutils literal"><span class=
+ "pre">eth1</span></tt> scheda di rete secondaria per la
+ connessione ad internet</li>
+
+ <li><tt class="docutils literal"><span class=
+ "pre">ppp0</span></tt> punto-a-punto per una
+ connessione ad internet</li>
+ </ol>
+ </blockquote>
+
+ <div class="section" id="bloccare-i-ping-dall-esterno">
+ <h3><a class="toc-backref" href=
+ "#id92">8.10.1 Bloccare i ping
+ dall'esterno</a></h3>
+
+ <p>Spesso gli script che attaccano
+ <em>automaticamente</em> le varie reti provano a fare un
+ ping per verificare quali IP sono on-line: bloccare il
+ traffico <tt class="docutils literal"><span class=
+ "pre">ICMP</span></tt> in ingresso puo' aiutare ad
+ evitare parte di questi attacchi:</p>
+ <pre class="literal-block">
+iptables -A INPUT -i ppp0 -p ICMP -j DROP
+</pre>
+ </div>
+
+ <div class="section" id="masquerading-snat">
+ <h3><a class="toc-backref" href=
+ "#id93">8.10.2 Masquerading
+ (sNAT)</a></h3>
+
+ <dl class="docutils">
+ <dt>Per attivare la network address translation (in
+ questo caso un SNAT) per la rete locale privata
+ sull'indirizzo ip del <em>modem</em>::</dt>
+
+ <dd>iptables -A POSTROUTING -s
+ 192.168.0.0/255.255.255.0 -o ppp0 -j MASQUERADE</dd>
+ </dl>
+
+ <p>Il <em>Masquerading</em> a differenza dello
+ <em>SNAT</em> puro (<tt class=
+ "docutils literal"><span class="pre">-j</span>
+ <span class="pre">SNAT</span> <span class=
+ "pre">--to-source</span> <span class=
+ "pre">propio_ip_pubblico</span> <span class=
+ "pre">)</span> <span class="pre">legge</span>
+ <span class="pre">l'indirizzo</span> <span class=
+ "pre">ip</span> <span class="pre">del</span> <span class=
+ "pre">device</span> <span class="pre">``ppp0</span></tt>.
+ In questo modo se l'IP cambia automaticamente si aggiorna
+ anche il source natting. Se avete un indirizzo IP statico
+ assegnato al vostro gateway potete invece usare lo SNAT
+ semplice.</p>
+ </div>
+
+ <div class="section" id="brute-force">
+ <h3><a class="toc-backref" href=
+ "#id94">8.10.3 Brute force</a></h3>
+
+ <dl class="docutils">
+ <dt>Per limitare attacchi di tipo brute force su
+ SSH::</dt>
+
+ <dd>
+ <p class="first">iptables -A INPUT -i ppp0 -p tcp -m
+ tcp --dport 22 -m state --state NEW -m recent
+ --update --seconds 3000 --hitcount 4 --name DEFAULT
+ --rsource -j DROP</p>
+
+ <p class="last">iptables -A INPUT -i ppp0 -p tcp -m
+ tcp --dport 22 -m state --state NEW -m recent --set
+ --name DEFAULT --rsource</p>
+ </dd>
+ </dl>
+ </div>
+ </div>
</div>
<div class="section" id="note">
<h1><a class="toc-backref" href=
- "#id77">8 NOTE</a></h1>
+ "#id95">9 NOTE</a></h1>
<ul class="simple">
<li>controllare apache</li>