]> git.piffa.net Git - doc/.git/blob - servizi.html
Recuperato il pezzo di apache,
[doc/.git] / servizi.html
1 <?xml version="1.0" encoding="utf-8"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
3
4 <html lang="it">
5 <head>
6   <meta name="generator" content=
7   "HTML Tidy for Linux/x86 (vers 6 November 2007), see www.w3.org">
8   <meta http-equiv="Content-Type" content=
9   "text/html; charset=iso-8859-1">
10   <meta name="generator" content=
11   "Docutils 0.5: http://docutils.sourceforge.net/">
12
13   <title>Servizi passo a passo</title>
14   <style type="text/css">
15
16   /*
17   :Author: David Goodger (goodger@python.org)
18   :Id: $Id: html4css1.css 5196 2007-06-03 20:25:28Z wiemann $
19   :Copyright: This stylesheet has been placed in the public domain.
20
21   Default cascading style sheet for the HTML output of Docutils.
22
23   See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
24   customize this style sheet.
25   */
26
27   /* used to remove borders from tables and images */
28   .borderless, table.borderless td, table.borderless th {
29   border: 0 }
30
31   table.borderless td, table.borderless th {
32   /* Override padding for "table.docutils td" with "! important".
33      The right padding separates the table cells. */
34   padding: 0 0.5em 0 0 ! important }
35
36   .first {
37   /* Override more specific margin styles with "! important". */
38   margin-top: 0 ! important }
39
40   .last, .with-subtitle {
41   margin-bottom: 0 ! important }
42
43   .hidden {
44   display: none }
45
46   a.toc-backref {
47   text-decoration: none ;
48   color: black }
49
50   blockquote.epigraph {
51   margin: 2em 5em ; }
52
53   dl.docutils dd {
54   margin-bottom: 0.5em }
55
56   /* Uncomment (and remove this text!) to get bold-faced definition list terms
57   dl.docutils dt {
58   font-weight: bold }
59   */
60
61   div.abstract {
62   margin: 2em 5em }
63
64   div.abstract p.topic-title {
65   font-weight: bold ;
66   text-align: center }
67
68   div.admonition, div.attention, div.caution, div.danger, div.error,
69   div.hint, div.important, div.note, div.tip, div.warning {
70   margin: 2em ;
71   border: medium outset ;
72   padding: 1em }
73
74   div.admonition p.admonition-title, div.hint p.admonition-title,
75   div.important p.admonition-title, div.note p.admonition-title,
76   div.tip p.admonition-title {
77   font-weight: bold ;
78   font-family: sans-serif }
79
80   div.attention p.admonition-title, div.caution p.admonition-title,
81   div.danger p.admonition-title, div.error p.admonition-title,
82   div.warning p.admonition-title {
83   color: red ;
84   font-weight: bold ;
85   font-family: sans-serif }
86
87   /* Uncomment (and remove this text!) to get reduced vertical space in
88    compound paragraphs.
89   div.compound .compound-first, div.compound .compound-middle {
90   margin-bottom: 0.5em }
91
92   div.compound .compound-last, div.compound .compound-middle {
93   margin-top: 0.5em }
94   */
95
96   div.dedication {
97   margin: 2em 5em ;
98   text-align: center ;
99   font-style: italic }
100
101   div.dedication p.topic-title {
102   font-weight: bold ;
103   font-style: normal }
104
105   div.figure {
106   margin-left: 2em ;
107   margin-right: 2em }
108
109   div.footer, div.header {
110   clear: both;
111   font-size: smaller }
112
113   div.line-block {
114   display: block ;
115   margin-top: 1em ;
116   margin-bottom: 1em }
117
118   div.line-block div.line-block {
119   margin-top: 0 ;
120   margin-bottom: 0 ;
121   margin-left: 1.5em }
122
123   div.sidebar {
124   margin: 0 0 0.5em 1em ;
125   border: medium outset ;
126   padding: 1em ;
127   background-color: #ffffee ;
128   width: 40% ;
129   float: right ;
130   clear: right }
131
132   div.sidebar p.rubric {
133   font-family: sans-serif ;
134   font-size: medium }
135
136   div.system-messages {
137   margin: 5em }
138
139   div.system-messages h1 {
140   color: red }
141
142   div.system-message {
143   border: medium outset ;
144   padding: 1em }
145
146   div.system-message p.system-message-title {
147   color: red ;
148   font-weight: bold }
149
150   div.topic {
151   margin: 2em }
152
153   h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
154   h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
155   margin-top: 0.4em }
156
157   h1.title {
158   text-align: center }
159
160   h2.subtitle {
161   text-align: center }
162
163   hr.docutils {
164   width: 75% }
165
166   img.align-left {
167   clear: left }
168
169   img.align-right {
170   clear: right }
171
172   ol.simple, ul.simple {
173   margin-bottom: 1em }
174
175   ol.arabic {
176   list-style: decimal }
177
178   ol.loweralpha {
179   list-style: lower-alpha }
180
181   ol.upperalpha {
182   list-style: upper-alpha }
183
184   ol.lowerroman {
185   list-style: lower-roman }
186
187   ol.upperroman {
188   list-style: upper-roman }
189
190   p.attribution {
191   text-align: right ;
192   margin-left: 50% }
193
194   p.caption {
195   font-style: italic }
196
197   p.credits {
198   font-style: italic ;
199   font-size: smaller }
200
201   p.label {
202   white-space: nowrap }
203
204   p.rubric {
205   font-weight: bold ;
206   font-size: larger ;
207   color: maroon ;
208   text-align: center }
209
210   p.sidebar-title {
211   font-family: sans-serif ;
212   font-weight: bold ;
213   font-size: larger }
214
215   p.sidebar-subtitle {
216   font-family: sans-serif ;
217   font-weight: bold }
218
219   p.topic-title {
220   font-weight: bold }
221
222   pre.address {
223   margin-bottom: 0 ;
224   margin-top: 0 ;
225   font-family: serif ;
226   font-size: 100% }
227
228   pre.literal-block, pre.doctest-block {
229   margin-left: 2em ;
230   margin-right: 2em }
231
232   span.classifier {
233   font-family: sans-serif ;
234   font-style: oblique }
235
236   span.classifier-delimiter {
237   font-family: sans-serif ;
238   font-weight: bold }
239
240   span.interpreted {
241   font-family: sans-serif }
242
243   span.option {
244   white-space: nowrap }
245
246   span.pre {
247   white-space: pre }
248
249   span.problematic {
250   color: red }
251
252   span.section-subtitle {
253   /* font-size relative to parent (h1..h6 element) */
254   font-size: 80% }
255
256   table.citation {
257   border-left: solid 1px gray;
258   margin-left: 1px }
259
260   table.docinfo {
261   margin: 2em 4em }
262
263   table.docutils {
264   margin-top: 0.5em ;
265   margin-bottom: 0.5em }
266
267   table.footnote {
268   border-left: solid 1px black;
269   margin-left: 1px }
270
271   table.docutils td, table.docutils th,
272   table.docinfo td, table.docinfo th {
273   padding-left: 0.5em ;
274   padding-right: 0.5em ;
275   vertical-align: top }
276
277   table.docutils th.field-name, table.docinfo th.docinfo-name {
278   font-weight: bold ;
279   text-align: left ;
280   white-space: nowrap ;
281   padding-left: 0 }
282
283   h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
284   h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
285   font-size: 100% }
286
287   ul.auto-toc {
288   list-style-type: none }
289
290   </style>
291 </head>
292
293 <body>
294   <div class="document" id="servizi-passo-a-passo">
295     <h1 class="title">Servizi passo a passo</h1>
296
297     <h2 class="subtitle" id=
298     "appunti-sulla-installazione-e-configurazione-dei-servizi">
299     Appunti sulla installazione e configurazione dei servizi</h2>
300
301     <blockquote>
302       <table class="docutils field-list" frame="void" rules="none">
303         <col class="field-name">
304         <col class="field-body">
305
306         <tbody valign="top">
307           <tr class="field">
308             <th class="field-name">Author:</th>
309
310             <td class="field-body">Andrea Manni</td>
311           </tr>
312
313           <tr class="field">
314             <th class="field-name">Copyright:</th>
315
316             <td class="field-body">GFDL</td>
317           </tr>
318
319           <tr class="field">
320             <th class="field-name">Version:</th>
321
322             <td class="field-body">0.2</td>
323           </tr>
324         </tbody>
325       </table>
326     </blockquote>
327
328     <p>Questa guida e' dedicata agli studenti delle lezioni di
329     informatica tenute da Andrea nel lab208. Nella parte iniziale
330     sono presenti alcuni richiami alle impostazioni tipiche di rete
331     e di installazione del laboratorio 208 (lab208) dove
332     generalmente si tengono le lezioni. Questi parametri non sono
333     interessanti per chiunque si trovasse al di fuori della rete
334     piffa.net .</p>
335
336     <div class="contents topic" id="indice">
337       <p class="topic-title first">Indice</p>
338
339       <ul class="simple">
340         <li>
341           <a class="reference internal" href=
342           "#configurazione-sistema" id="id5" name=
343           "id5">Configurazione sistema</a>
344
345           <ul>
346             <li><a class="reference internal" href=
347             "#solo-per-uso-interno" id="id6" name="id6">Solo per
348             uso interno</a></li>
349
350             <li><a class="reference internal" href="#rete" id="id7"
351             name="id7">Rete</a></li>
352
353             <li><a class="reference internal" href=
354             "#bash-completion" id="id8" name="id8">Bash
355             completion</a></li>
356
357             <li><a class="reference internal" href="#vim" id="id9"
358             name="id9">Vim</a></li>
359
360             <li><a class="reference internal" href="#vnc" id="id10"
361             name="id10">VNC</a></li>
362
363             <li><a class="reference internal" href=
364             "#lista-dei-pacchetti-di-base" id="id11" name=
365             "id11">Lista dei pacchetti di base</a></li>
366
367             <li>
368               <a class="reference internal" href=
369               "#apt-configurazione" id="id12" name="id12">Apt
370               configurazione</a>
371
372               <ul>
373                 <li><a class="reference internal" href=
374                 "#sources-list" id="id13" name=
375                 "id13">sources.list</a></li>
376
377                 <li><a class="reference internal" href=
378                 "#etc-apt-apt-conf" id="id14" name=
379                 "id14">/etc/apt/apt.conf</a></li>
380               </ul>
381             </li>
382           </ul>
383         </li>
384
385         <li><a class="reference internal" href="#servizi" id="id15"
386         name="id15">Servizi</a></li>
387
388         <li><a class="reference internal" href="#squid" id="id16"
389         name="id16">Squid</a></li>
390
391         <li><a class="reference internal" href="#apache" id="id17"
392         name="id17">Apache</a></li>
393
394         <li><a class="reference internal" href="#dnsmasq" id="id18"
395         name="id18">DNSmasq</a></li>
396
397         <li>
398           <a class="reference internal" href="#samba" id="id19"
399           name="id19">Samba</a>
400
401           <ul>
402             <li><a class="reference internal" href=
403             "#creazione-utenti" id="id20" name="id20">Creazione
404             Utenti</a></li>
405
406             <li><a class="reference internal" href=
407             "#creare-la-condivisione" id="id21" name="id21">Creare
408             la condivisione</a></li>
409
410             <li><a class="reference internal" href=
411             "#configurazione-dell-applicativo-samba-vero-e-proprio"
412             id="id22" name="id22">Configurazione dell'applicativo
413             Samba vero e proprio.</a></li>
414
415             <li><a class="reference internal" href=
416             "#testare-il-servizio" id="id23" name="id23">Testare il
417             Servizio</a></li>
418           </ul>
419         </li>
420
421         <li><a class="reference internal" href="#note" id="id24"
422         name="id24">NOTE</a></li>
423       </ul>
424     </div>
425
426     <p>Generato con: <a class="reference external" href=
427     "http://docutils.sourceforge.net/rst.html">http://docutils.sourceforge.net/rst.html</a></p>
428
429     <div class="section" id="configurazione-sistema">
430       <h1><a class="toc-backref" href="#id5">Configurazione
431       sistema</a></h1>
432
433       <div class="section" id="solo-per-uso-interno">
434         <h2><a class="toc-backref" href="#id6">Solo per uso
435         interno</a></h2>
436
437         <p>Impostazioni di base per la configurazione del sistema
438         operativo e della rete nel laboratorio 208 facente parte
439         della rete piffa.net .</p>
440       </div>
441
442       <div class="section" id="rete">
443         <h2><a class="toc-backref" href="#id7">Rete</a></h2>
444
445         <p>Parametri della rete attualmente in uso:</p>
446
447         <table border="1" class="docutils">
448           <colgroup>
449             <col width="45%">
450             <col width="55%">
451           </colgroup>
452
453           <tbody valign="top">
454             <tr>
455               <td colspan="2">Parametri della rete</td>
456             </tr>
457
458             <tr>
459               <td>rete</td>
460
461               <td>10.10.208.0/24</td>
462             </tr>
463
464             <tr>
465               <td>netmask</td>
466
467               <td>255.255.255.0</td>
468             </tr>
469
470             <tr>
471               <td>broadcast</td>
472
473               <td>10.10.208.255</td>
474             </tr>
475
476             <tr>
477               <td>gateway</td>
478
479               <td>10.10.208.254</td>
480             </tr>
481
482             <tr>
483               <td>gateway</td>
484
485               <td>10.10.208.250 persistente</td>
486             </tr>
487
488             <tr>
489               <td>DNS</td>
490
491               <td>10.10.208.254</td>
492             </tr>
493
494             <tr>
495               <td>DNS</td>
496
497               <td>10.10.208.250 persistente</td>
498             </tr>
499           </tbody>
500         </table>
501       </div>
502
503       <div class="section" id="bash-completion">
504         <h2><a class="toc-backref" href="#id8">Bash
505         completion</a></h2>
506
507         <p>Abilitare /etc/bash_completion nel file <tt class=
508         "docutils literal"><span class=
509         "pre">/etc/bash.bashrc</span></tt> oppure <tt class=
510         "docutils literal"><span class=
511         "pre">~/.bashrc</span></tt></p>
512         <pre class="literal-block">
513 . /etc/bash_completion
514 </pre>
515
516         <p>Il file <tt class="docutils literal"><span class=
517         "pre">/etc/bash_completion</span></tt> deve essere ,ente
518         nel sistema, in caso contrario installare il pacchetto:
519         <tt class="docutils literal"><span class=
520         "pre">bash-completion</span></tt></p>
521       </div>
522
523       <div class="section" id="vim">
524         <h2><a class="toc-backref" href="#id9">Vim</a></h2>
525
526         <p>Sara' opportuno installare la versione completa
527         dell'editor vim tramite il pacchetto vim e modificare il
528         file di configurazione generale <tt class=
529         "docutils literal"><span class=
530         "pre">/etc/vim/vimrc</span></tt></p>
531         <pre class="literal-block">
532 " All system-wide defaults are set in $VIMRUNTIME/debian.vim (usually just
533 " /usr/share/vim/vimcurrent/debian.vim) and sourced by the call to :runtime
534 " you can find below.  If you wish to change any of those settings, you should
535 " do it in this file (/etc/vim/vimrc), since debian.vim will be overwritten
536 " everytime an upgrade of the vim packages is performed.  It is recommended to
537 " make changes after sourcing debian.vim since it alters the value of the
538 " 'compatible' option.
539
540 " This line should not be removed as it ensures that various options are
541 " properly set to work with the Vim-related packages available in Debian.
542 runtime! debian.vim
543
544 " Uncomment the next line to make Vim more Vi-compatible
545 " NOTE: debian.vim sets 'nocompatible'.  Setting 'compatible' changes numerous
546 " options, so any other options should be set AFTER setting 'compatible'.
547 "set compatible
548
549 " Vim5 and later versions support syntax highlighting. Uncommenting the next
550 " line enables syntax highlighting by default.
551 syntax on
552
553 " If using a dark background within the editing area and syntax highlighting
554 " turn on this option as well
555 set background=dark
556
557 " Uncomment the following to have Vim jump to the last position when
558 " reopening a file
559
560 if has("autocmd")
561   au BufReadPost * if line("'\"") &gt; 0 &amp;&amp; line("'\"") &lt;= line("$")
562     \| exe "normal! g'\"" | endif
563 endif
564
565 " Uncomment the following to have Vim load indentation rules and plugins
566 " according to the detected filetype.
567 if has("autocmd")
568   filetype plugin indent on
569 endif
570
571 " The following are commented out as they cause vim to behave a lot
572 " differently from regular Vi. They are highly recommended though.
573 set showcmd             " Show (partial) command in status line.
574 "set showmatch          " Show matching brackets.
575 set ignorecase          " Do case insensitive matching
576 "set smartcase          " Do smart case matching
577 "set incsearch          " Incremental search
578 set autowrite           " Automatically save before commands like :next and :make
579 "set hidden             " Hide buffers when they are abandoned
580 "set mouse=a            " Enable mouse usage (all modes) in terminals
581
582 " Source a global configuration file if available
583 " XXX Deprecated, please move your changes here in /etc/vim/vimrc
584 if filereadable("/etc/vim/vimrc.local")
585   source /etc/vim/vimrc.local
586 endif
587 </pre>
588       </div>
589
590       <div class="section" id="vnc">
591         <h2><a class="toc-backref" href="#id10">VNC</a></h2>
592
593         <p>Scaricare il pacchetto <tt class=
594         "docutils literal"><span class=
595         "pre">xtightvncviewer</span></tt> e lo script <tt class=
596         "docutils literal"><span class="pre">guarda.sh</span></tt>
597         che deve essere reso eseguibile in una posizione
598         (collocazione nel <em>path</em> degli utenti, es <tt class=
599         "docutils literal"><span class="pre">echo</span>
600         <span class="pre">$PATH</span></tt> per visualizzare
601         l'attuale path ) comoda per gli utenti.</p>
602
603         <p>Procedura:</p>
604         <pre class="literal-block">
605 su root
606 cd /bin
607 wget http://debian.piffa.net/guarda.sh
608 chmod +x guarda.sh
609 exit
610 </pre>
611
612         <p>Si noti che non e' possibile lanciare un applicativo sul
613         server grafico di un utente da una shell in cui si e'
614         loggati come altro utente, anchee se root. E' quindi
615         necessario essere l'utente di sistema che si e' loggato
616         inizialmente nella sessione grafica per poter lanciare lo
617         script guarda.sh .</p>
618
619         <p>Controllare con <tt class=
620         "docutils literal"><span class="pre">whoami</span></tt> di
621         essere l'utente normale (es <tt class=
622         "docutils literal"><span class="pre">utente</span>
623         <span class="pre">|</span> <span class=
624         "pre">studente</span> <span class="pre">|</span>
625         <span class="pre">proprio</span> <span class=
626         "pre">nome</span></tt> ), in caso si sia assunta una altra
627         <tt class="docutils literal"><span class=
628         "pre">id</span></tt> si apra un altra shell o si esca da
629         quella attuale con <tt class=
630         "docutils literal"><span class="pre">exit</span></tt> .</p>
631       </div>
632
633       <div class="section" id="lista-dei-pacchetti-di-base">
634         <h2><a class="toc-backref" href="#id11">Lista dei pacchetti
635         di base</a></h2>
636
637         <p>I pacchetti installati generalmente <a class=
638         "footnote-reference" href="#id2" id="id1" name=
639         "id1">[1]</a> per poter seguire le lezioni sono:</p>
640         <pre class="literal-block">
641 kde-core kdm kde-i18n-it xorg vim less xtightvncviewer
642 </pre>
643
644         <table class="docutils footnote" frame="void" id="id2"
645         rules="none">
646           <colgroup>
647             <col class="label">
648             <col>
649           </colgroup>
650
651           <tbody valign="top">
652             <tr>
653               <td class="label"><a class="fn-backref" href=
654               "#id1">[1]</a></td>
655
656               <td><tt class="docutils literal"><span class=
657               "pre">kde-core</span></tt> e' piu' leggero del
658               pacchetto <tt class="docutils literal"><span class=
659               "pre">kde</span></tt></td>
660             </tr>
661           </tbody>
662         </table>
663       </div>
664
665       <div class="section" id="apt-configurazione">
666         <h2><a class="toc-backref" href="#id12">Apt
667         configurazione</a></h2>
668
669         <p>Vediamo i due file principali di apt:</p>
670
671         <ul class="simple">
672           <li><tt class="docutils literal"><span class=
673           "pre">/etc/apt/sources.list</span></tt></li>
674
675           <li><tt class="docutils literal"><span class=
676           "pre">/etc/apt/apt.conf</span></tt></li>
677         </ul>
678
679         <div class="section" id="sources-list">
680           <h3><a class="toc-backref" href=
681           "#id13">sources.list</a></h3>
682
683           <p>Questo file contiene i sorgenti da cui <em>apt</em>
684           preleva i pacchetti da installare tramite <em>dpkg</em>,
685           vengono quindi precisati i metodi (ad es. http / ftp /
686           cdrom / file), la release che si vuole tracciare (es
687           <tt class="docutils literal"><span class=
688           "pre">stable,</span> <span class="pre">testing,</span>
689           <span class="pre">unstable</span></tt> oppure i
690           corrispondenti release name es: <tt class=
691           "docutils literal"><span class="pre">Lenny,</span>
692           <span class="pre">Squeeze,</span> <span class=
693           "pre">Sid</span></tt>), i rami di interesse (es:
694           <tt class="docutils literal"><span class=
695           "pre">main</span></tt> che e' l'archivio principale,
696           <tt class="docutils literal"><span class=
697           "pre">non-free</span></tt> per il software non libero,
698           <tt class="docutils literal"><span class=
699           "pre">contrib</span></tt> per i pacchetti non realizzati
700           dai manutentori ufficiali).</p>
701
702           <p>Gli archivi sono generalmente:</p>
703
704           <ul class="simple">
705             <li><tt class="docutils literal"><span class=
706             "pre">deb</span></tt> per pacchetti Debian binari</li>
707
708             <li><tt class="docutils literal"><span class=
709             "pre">deb-src</span></tt> per i pacchetti sorgenti
710             (quindi da compilare, come il kernel) degli stessi
711             pacchetti binari. In genere se non compilate spesso
712             potete evitare di tracciare i sorgenti per risparmiare
713             tempo e banda.</li>
714           </ul>
715
716           <p><tt class="docutils literal"><span class=
717           "pre">/etc/apt/sources.list</span></tt></p>
718           <pre class="literal-block">
719 # esempio di accesso a un CDROM:
720 # cdrom:[Debian GNU/Linux 5.0.1 _Lenny_ - Official i386 kde-CD Binary-1 20090$
721
722 # Archivio principale debian via http su piffa.net,
723 # non funziona al difuori dell'aula dei corsi
724 deb http://debian.piffa.net/debian/ Lenny main
725 # deb http://debian.piffa.net/debian/ Lenny  non-free contrib
726
727 # Mirror da kernel.org da usare a casa:
728 deb http://mirrors.eu.kernel.org/debian/ Lenny main
729
730 # Security dal sito principale
731 deb http://security.debian.org/ Lenny/updates main
732 deb-src http://security.debian.org/ Lenny/updates main
733
734 # Debian volatile per le cose soggette a cambiamenti non legati
735 # a dinamiche di sicurezza
736 deb http://volatile.debian.org/debian-volatile Lenny/volatile main
737 deb-src http://volatile.debian.org/debian-volatile Lenny/volatile main
738
739 # Esempio di accesso a un filesystem locale contenente i pacchetti:
740 # deb file:/mnt/mirror Sid main non-free contrib
741 </pre>
742         </div>
743
744         <div class="section" id="etc-apt-apt-conf">
745           <h3><a class="toc-backref" href=
746           "#id14">/etc/apt/apt.conf</a></h3>
747
748           <p>Questo file contiene le opzioni di apt, come ad
749           esempio il proxy:</p>
750           <pre class="literal-block">
751 Acquire::http::Proxy "http://10.10.208.254:3128"
752 </pre>
753         </div>
754       </div>
755     </div>
756
757     <div class="section" id="servizi">
758       <h1><a class="toc-backref" href="#id15">Servizi</a></h1>
759     </div>
760
761     <div class="section" id="squid">
762       <h1><a class="toc-backref" href="#id16">Squid</a></h1>
763     </div>
764
765     <div class="section" id="apache">
766       <h1><a class="toc-backref" href="#id17">Apache</a></h1>
767     </div>
768
769     <div class="section" id="dnsmasq">
770       <h1><a class="toc-backref" href="#id18">DNSmasq</a></h1>
771     </div>
772
773     <div class="section" id="samba">
774       <h1><a class="toc-backref" href="#id19">Samba</a></h1>
775
776       <p>Samba e' un progetto libero che fornisce servizi di
777       condivisione di file e stampanti a client SMB/CIFS.</p>
778
779       <p>Samba e' liberamente disponibile, al contrario di altre
780       implementazioni SMB/CIFS, e permette di ottenere
781       interoperabilitÃ&nbsp; tra Linux, Unix, Mac OS X e
782       Windows.</p>
783
784       <p>Samba e' un software che può girare su piattaforme che
785       non siano Microsoft Windows, per esempio, UNIX, Linux, IBM
786       System 390, OpenVMS e altri sistemi operativi. Samba utilizza
787       il protocollo TCP/IP utilizzando i servizi offerti sul server
788       ospite. Quando correttamente configurato, permette di
789       interagire con client o server Microsoft Windows come se
790       fosse un file e print server Microsoft agendo da Primary
791       Domain Controller (PDC) o come Backup Domain Controller, può
792       inoltre prendere parte ad un dominio Active Directory.</p>
793
794       <p>Pacchetti da installare per utilizzare Samba in modalita'
795       client <a class="footnote-reference" href="#id4" id="id3"
796       name="id3">[2]</a></p>
797       <pre class="literal-block">
798 samba-client
799 </pre>
800
801       <p>Pacchetti da installare per utilizzare Samba in modalita'
802       server:</p>
803       <pre class="literal-block">
804 samba smbfs smbclient
805 </pre>
806
807       <table class="docutils footnote" frame="void" id="id4" rules=
808       "none">
809         <colgroup>
810           <col class="label">
811           <col>
812         </colgroup>
813
814         <tbody valign="top">
815           <tr>
816             <td class="label"><a class="fn-backref" href=
817             "#id3">[2]</a></td>
818
819             <td>Anche se nato per le i sistemi Windows, Samba puo'
820             essere usato anche per montare cartelle sotto GNU/Linux
821             come alternativa a NFS. Per la condivisione di
822             stampanti sarebbe invece opportuno intervenire
823             direttamente su <tt class=
824             "docutils literal"><span class=
825             "pre">CUPS</span></tt>.</td>
826           </tr>
827         </tbody>
828       </table>
829
830       <p>Durante la prima installazione viene chiesto il nome del
831       gruppo di appartenenza, il default per Windows e' <tt class=
832       "docutils literal"><span class="pre">WORKGROUP</span></tt>.
833       In aula usiamo invece <tt class=
834       "docutils literal"><span class="pre">208</span></tt> .</p>
835
836       <p>Se necessario per riconfigurare Samba si usi il
837       comando:</p>
838       <pre class="literal-block">
839 dpkg-reconfigure samba-common
840 </pre>
841
842       <p>Quando si utilizza Samba bisogna tener conto di 3 livelli
843       di password (e generalmente volete usare <em>sempre la stessa
844       password</em> per ognuno di questi) e delle differenze tra le
845       modalita' di autenticazione (e quindi anche di criptaggio
846       delle passwords) usate da sistemi GNU/Linux e Windows:</p>
847
848       <dl class="docutils">
849         <dt>1 Sistema *Unix ( GNU/Linux )</dt>
850
851         <dd>E' la password dell'utente di sistema che viene usata
852         sul sistema operativo su cui gira il software Samba. E'
853         importante tenere conto anche delle <em>user-id</em> e
854         <em>group-id</em> degli utenti che dovranno fisicamente
855         scrivere sui file system. Se un utente non puo' scrivere in
856         una certa posizione del file system (ad esempio nella
857         cartella <tt class="docutils literal"><span class=
858         "pre">/mnt/condivisione</span></tt> che sara' stata
859         necessariamente creata inizialmente dall'utente <tt class=
860         "docutils literal"><span class="pre">root</span></tt>) per
861         mancanza di privilegi allora neanche Samba potra' farlo nel
862         momento in mette a disposizione la risorsa all'utente. Se
863         si montano file-system dedicati per le condivisioni
864         controllare i permessi e propieta' dei <em>punti di
865         mount*</em>. Queste passwords sono salvate nel solito file
866         /etc/shadow (richiamato da /etc/passwd).</dd>
867
868         <dt>2 Password per l'applicativo Samba</dt>
869
870         <dd>Samba deve essere compatibile con Windows e quindi
871         utilizzare un sistema di criptazione delle password diverso
872         da /etc/shadow.a Le password per Samba possono essere
873         gestite ad esempio col comando <tt class=
874         "docutils literal"><span class="pre">smbpasswd</span></tt>
875         e vengono generalmente salvate all'interno di <tt class=
876         "docutils literal"><span class=
877         "pre">/var/lib/samba/passdb.tdb</span></tt> .</dd>
878
879         <dt>3 Password per Windows.</dt>
880
881         <dd>Gli utenti Windows effettuano il log-in alla partenza
882         della sessione di Windows. Se si avra' l'accortezza di
883         usare sempre stessa password data precedentemente anche a
884         Windows (o viceversa impostare la password per GNU/Linux /
885         Samba uguale a quella di Windows) l'utente potra' accedere
886         automaticamente alle condivisioni a lui disponibili.</dd>
887       </dl>
888
889       <div class="section" id="creazione-utenti">
890         <h2><a class="toc-backref" href="#id20">Creazione
891         Utenti</a></h2>
892
893         <p>Creiamo per primo l'utente sotto GNU/Linux, facendo
894         attenzione a <em>non dargli una shell di sistema</em>. Gli
895         utenti Windows che accedono al server solo per le
896         condivisioni non hanno bisogno di poter eseguire comandi
897         sul server!</p>
898
899         <p>Creazione di un utente denominato sambo:</p>
900         <pre class="literal-block">
901 adduser --shell /bin/false sambo
902 </pre>
903
904         <p>Nel file <tt class="docutils literal"><span class=
905         "pre">/etc/passwd</span></tt> avremo qualcosa come:</p>
906         <pre class="literal-block">
907 sambo:x:1001:1001:Sambo utente Samba!,,,:/home/sambo:/bin/false
908 </pre>
909
910         <p>Aggiunta dell'utente al database delle password per
911         Samba e generazione della sua password:</p>
912
913         <blockquote>
914           smbpasswd -a sambo
915         </blockquote>
916
917         <p>Se successivamente si vorra' modificare la password di
918         un utente gia' esistente si usi:</p>
919
920         <blockquote>
921           smbpasswd sambo
922         </blockquote>
923
924         <p>La password sotto Windows verra' modificata sul sistema
925         Windows.</p>
926       </div>
927
928       <div class="section" id="creare-la-condivisione">
929         <h2><a class="toc-backref" href="#id21">Creare la
930         condivisione</a></h2>
931
932         <p>La condivisione altro non e' che una cartella sul server
933         che viene resa disponibile sui client negoziando l'accesso
934         in base all'autenticazione tramite user-name / password. Si
935         decida se fisicamente debba risiedere nella home di un
936         utente (nel caso quest'ultimo ne sia l'unico fruitore) o in
937         una cartella in /mnt/ nel caso piu' utenti accedano a
938         questa. Nel secondo caso si gestiscano gli accessi sotto
939         GNU/Linux tramite i gruppi.</p>
940
941         <p>Creazione della risorsa sambo_share nella home
942         dell'utente sambo:</p>
943         <pre class="literal-block">
944 # mkdir /home/sambo/sambo_share
945 # chown sambo:sambo /home/sambo/sambo_share/
946 </pre>
947
948         <p>Bisognerebbe notare i permessi di esecuzione del
949         file-system che ospita la cartella. Se i file che saranno
950         contenuti nella condivisione saranno da usarsi sotto
951         Windows non c'e' motivo che questi siano eseguibili sotto
952         GNU/Linux. Si potrebbe avere quindi, ipotizzando una
953         condivisione in /mnt/share che consista in un file system
954         dedicato:</p>
955
956         <p>In /etc/fstab</p>
957         <pre class="literal-block">
958 /dev/hda10       /mnt/share      ext3    rw,nosuid,noexec  0  3
959 </pre>
960
961         <p>Si noti anche l'uso di <em>nosuid</em> per evitare la
962         possibilita' di eseguire programmi con credenziali diverse
963         da quelle originali.</p>
964       </div>
965
966       <div class="section" id=
967       "configurazione-dell-applicativo-samba-vero-e-proprio">
968         <h2><a class="toc-backref" href="#id22">Configurazione
969         dell'applicativo Samba vero e proprio.</a></h2>
970
971         <p>Avendo preparato gli utenti (ancora una volta: non si
972         dia una shell completa a un utente che serve solo per Samba
973         o la posta elettronica) e la cartella sul file system si
974         puo' procedere a configurare la condivisione su Samba.</p>
975
976         <p>/etc/samba/smb.conf riga ~235 , Share Definitions (in
977         vim si usi 235gg ):</p>
978         <pre class="literal-block">
979 [sambo_share]
980         # Percorso della cartella condivisa
981         path = /home/sambo/sambo_share
982         # Se gli utenti possono scrivere / modificare file
983         writable = yes
984         # Negoziazione degli accessi su base utenti / passwords
985         valid users = sambo
986         # Altri parametri opzionali di interesse
987         # Se posso vedere la condivisione da esplora risorse
988         # anche se non ho i privilegi per accedervi.
989         browseable = yes
990         # Commento indicativo della risorsa
991         comment = Condivisione per Sambo
992 </pre>
993
994         <p>Dopo aver salvato il file si puo' fare un primo
995         controllo tramite l'utility testparm , che controlla la
996         sintassi del file di configurazione di Samba. Se questo non
997         rileva problemi si puo' procedere a un /etc/samba#
998         /etc/init.d/samba restart .</p>
999       </div>
1000
1001       <div class="section" id="testare-il-servizio">
1002         <h2><a class="toc-backref" href="#id23">Testare il
1003         Servizio</a></h2>
1004
1005         <p>Come testare il servizio</p>
1006
1007         <p>es:</p>
1008         <pre class="literal-block">
1009 smbclient -U sambo -L localhost
1010 </pre>
1011
1012         <p>Questo comando permette di esplorare la risorsa
1013         qualificandosi come utente, in questo modo potete testare
1014         il corretto funzionamento dell'autenticazione. Si provi
1015         inizialmente a sbagliare la password deliberatamente, poi a
1016         inserirla correttamente: dovrebbero essere visibili le
1017         risorse disponibili al solo utente sambo: la suo /home e la
1018         cartella samba_share:</p>
1019         <pre class="literal-block">
1020 Sharename       Type      Comment
1021 ---------       ----      -------
1022 sambo_share     Disk      Condivisione per Sambo
1023 print$          Disk      Printer Drivers
1024 IPC$            IPC       IPC Service (base server)
1025 sambo           Disk      Home Directories
1026 </pre>
1027
1028         <p>In alternativa e' possibile montare realmente la
1029         condivisone anche su GNU/Linux tramite un client per samba
1030         e testare il corretto funzionamento:</p>
1031         <pre class="literal-block">
1032 mount -t smbfs //localhost/sambo_share /mnt/sambo_mount/ --verbose -o user=sambo
1033 </pre>
1034       </div>
1035     </div>
1036
1037     <div class="section" id="note">
1038       <h1><a class="toc-backref" href="#id24">NOTE</a></h1>
1039
1040       <ul class="simple">
1041         <li>controllato fino alla riga 289</li>
1042
1043         <li>definizioni degli applicativi prese direttamente da
1044         wikipedia</li>
1045       </ul>
1046
1047       <p>sintassi: in <tt class="docutils literal"><span class=
1048       "pre">monospace</span></tt> :</p>
1049
1050       <ul class="simple">
1051         <li>nomi di files</li>
1052
1053         <li>comandi</li>
1054
1055         <li>pacchetti</li>
1056       </ul>
1057     </div>
1058   </div>
1059 </body>
1060 </html>