From: root Date: Wed, 6 May 2009 17:14:14 +0000 (+0200) Subject: Modified servizi, checked 'till line 290 X-Git-Url: http://git.piffa.net/web?p=doc%2F.git;a=commitdiff_plain;h=26625bb1ce8eaf05ea31cb0a96a905a73391e9f0 Modified servizi, checked 'till line 290 --- diff --git a/servizi.html b/servizi.html index 6a45af6..f308882 100644 --- a/servizi.html +++ b/servizi.html @@ -1,120 +1,126 @@ - - - + + + + - - -Servizi passo a passo - + + -
-

Servizi passo a passo

-

Appunti sulla installazione e configurazione dei servizi

- -
- --- - - - - - - - -
Author:Andrea Manni
Copyright:GFDL
Version:0.2
-
- -

Generato con: http://docutils.sourceforge.net/rst.html

-
-

Configurazione sistema

-

Inpostazioni di base per la configurazione del sistema operativo

-
-

Rete

-

Parametri della rete attualmente in uso:

-
-============= ================
- rete         10.10.208.0/24
-============= ================
-netmask       255.255.255.0
-broadcast     10.10.208.255
-gateway       10.10.208.254
-gateway       10.10.208.250
-              persistente
-DNS           10.10.208.254
-DNS           10.10.208.250
-              persistente
-============= ================
-
-
-
-

Bash completion

-

Abilitare /etc/bash_completion nel file /etc/bash.bashrc oppure ~/.bashrc

-
+  
+

Servizi passo a passo

+ +

+ Appunti sulla installazione e configurazione dei servizi

+ +
+ + + + + + + + + + + + + + + + + + + + + + + +
Author:Andrea Manni
Copyright:GFDL
Version:0.2
+
+ +

Questa guida e' dedicata agli studenti delle lezioni di + informatica tenute da Andrea nel lab208. Nella parte iniziale + sono presenti alcuni richiami alle impostazioni tipiche di rete + e di installazione del laboratorio 208 (lab208) dove + generalmente si tengono le lezioni. Questi parametri non sono + interessanti per chiunque si trovasse al di fuori della rete + piffa.net .

+ + + +

Generato con: http://docutils.sourceforge.net/rst.html

+ +
+

Configurazione + sistema

+ +
+

Solo per uso + interno

+ +

Impostazioni di base per la configurazione del sistema + operativo e della rete nel laboratorio 208 facente parte + della rete piffa.net .

+
+ +
+

Rete

+ +

Parametri della rete attualmente in uso:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Parametri della rete
rete10.10.208.0/24
netmask255.255.255.0
broadcast10.10.208.255
gateway10.10.208.254
gateway10.10.208.250 persistente
DNS10.10.208.254
DNS10.10.208.250 persistente
+
+ +
+

Bash + completion

+ +

Abilitare /etc/bash_completion nel file /etc/bash.bashrc oppure ~/.bashrc

+
 . /etc/bash_completion
 
-

/etc/bash_completion deve essere pre istallato, nel caso che non sia disponibile installare il pacchetto: bash-completion

-
-
-

Vim

-

Sara' opportuno installare la versine completa dell'editor vim tramite il pacchetto vim e mnodificare il file di configurazione generale /etc/vim/vimrc

-
-" All system-wide defaults are set in $VIMRUNTIME/debian.vim (usually just
-" /usr/share/vim/vimcurrent/debian.vim) and sourced by the call to :runtime
-" you can find below.  If you wish to change any of those settings, you should
-" do it in this file (/etc/vim/vimrc), since debian.vim will be overwritten
-" everytime an upgrade of the vim packages is performed.  It is recommended to
-" make changes after sourcing debian.vim since it alters the value of the
-" 'compatible' option.
-
-" This line should not be removed as it ensures that various options are
-" properly set to work with the Vim-related packages available in Debian.
+
+        

Il file /etc/bash_completion deve essere ,ente + nel sistema, in caso contrario installare il pacchetto: + bash-completion

+
+ +
+

Vim

+ +

Sara' opportuno installare la versione completa + dell'editor vim tramite il pacchetto vim e modificare il + file di configurazione generale /etc/vim/vimrc

+
+" All system-wide defaults are set in $VIMRUNTIME/debian.vim (usually just
+" /usr/share/vim/vimcurrent/debian.vim) and sourced by the call to :runtime
+" you can find below.  If you wish to change any of those settings, you should
+" do it in this file (/etc/vim/vimrc), since debian.vim will be overwritten
+" everytime an upgrade of the vim packages is performed.  It is recommended to
+" make changes after sourcing debian.vim since it alters the value of the
+" 'compatible' option.
+
+" This line should not be removed as it ensures that various options are
+" properly set to work with the Vim-related packages available in Debian.
 runtime! debian.vim
 
-" Uncomment the next line to make Vim more Vi-compatible
-" NOTE: debian.vim sets 'nocompatible'.  Setting 'compatible' changes numerous
-" options, so any other options should be set AFTER setting 'compatible'.
-"set compatible
+" Uncomment the next line to make Vim more Vi-compatible
+" NOTE: debian.vim sets 'nocompatible'.  Setting 'compatible' changes numerous
+" options, so any other options should be set AFTER setting 'compatible'.
+"set compatible
 
-" Vim5 and later versions support syntax highlighting. Uncommenting the next
-" line enables syntax highlighting by default.
+" Vim5 and later versions support syntax highlighting. Uncommenting the next
+" line enables syntax highlighting by default.
 syntax on
 
-" If using a dark background within the editing area and syntax highlighting
-" turn on this option as well
+" If using a dark background within the editing area and syntax highlighting
+" turn on this option as well
 set background=dark
 
-" Uncomment the following to have Vim jump to the last position when
-" reopening a file
+" Uncomment the following to have Vim jump to the last position when
+" reopening a file
 
-if has("autocmd")
-  au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$")
-    \| exe "normal! g'\"" | endif
+if has("autocmd")
+  au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$")
+    \| exe "normal! g'\"" | endif
 endif
 
-" Uncomment the following to have Vim load indentation rules and plugins
-" according to the detected filetype.
-if has("autocmd")
+" Uncomment the following to have Vim load indentation rules and plugins
+" according to the detected filetype.
+if has("autocmd")
   filetype plugin indent on
 endif
 
-" The following are commented out as they cause vim to behave a lot
-" differently from regular Vi. They are highly recommended though.
-set showcmd             " Show (partial) command in status line.
-"set showmatch          " Show matching brackets.
-set ignorecase          " Do case insensitive matching
-"set smartcase          " Do smart case matching
-"set incsearch          " Incremental search
-set autowrite           " Automatically save before commands like :next and :make
-"set hidden             " Hide buffers when they are abandoned
-"set mouse=a            " Enable mouse usage (all modes) in terminals
-
-" Source a global configuration file if available
-" XXX Deprecated, please move your changes here in /etc/vim/vimrc
-if filereadable("/etc/vim/vimrc.local")
+" The following are commented out as they cause vim to behave a lot
+" differently from regular Vi. They are highly recommended though.
+set showcmd             " Show (partial) command in status line.
+"set showmatch          " Show matching brackets.
+set ignorecase          " Do case insensitive matching
+"set smartcase          " Do smart case matching
+"set incsearch          " Incremental search
+set autowrite           " Automatically save before commands like :next and :make
+"set hidden             " Hide buffers when they are abandoned
+"set mouse=a            " Enable mouse usage (all modes) in terminals
+
+" Source a global configuration file if available
+" XXX Deprecated, please move your changes here in /etc/vim/vimrc
+if filereadable("/etc/vim/vimrc.local")
   source /etc/vim/vimrc.local
 endif
 
-
-
-

VNC

-

Scaricare il pacchetto xtightvncviewer, e lo script guarda.sh che deve essere reso eseguibile in una posizione (nel senso di collocazione nel path degli utenti) comoda per gli utenti.

-

Procedura:

-
+      
+ +
+

VNC

+ +

Scaricare il pacchetto xtightvncviewer e lo script guarda.sh + che deve essere reso eseguibile in una posizione + (collocazione nel path degli utenti, es echo + $PATH per visualizzare + l'attuale path ) comoda per gli utenti.

+ +

Procedura:

+
 su root
 cd /bin
 wget http://debian.piffa.net/guarda.sh
 chmod +x guarda.sh
 exit
 
-

Si noti, per pieta' divina, che non e' possibile lanciare un applicativo grafico sul server grafico di un utente di sistema da una shell in cui si e' loggati come altro utente, in questo caso root. E' quindi necessario essere l'utente di sistema che si e' loggato inizialmente nella sessione grafica per poter lanciare lo script guarda.sh .

-
-
-

Lista dei pacchetti di base

-

I pacchetti installati generalemnte durante le lezioni sono:

-
+
+        

Si noti che non e' possibile lanciare un applicativo sul + server grafico di un utente da una shell in cui si e' + loggati come altro utente, anchee se root. E' quindi + necessario essere l'utente di sistema che si e' loggato + inizialmente nella sessione grafica per poter lanciare lo + script guarda.sh .

+ +

Controllare con whoami di + essere l'utente normale (es utente + | studente | + proprio nome ), in caso si sia assunta una altra + id si apra un altra shell o si esca da + quella attuale con exit .

+
+ +
+

Lista dei pacchetti + di base

+ +

I pacchetti installati generalmente [1] per poter seguire le lezioni sono:

+
 kde-core kdm kde-i18n-it xorg vim less xtightvncviewer
 
-
-
-

Apt configurazione

-

Vediamo i due file principali di apt:

-
-* /etc/apt/sources.list
-
-* /etc/apt/apt.conf
-
-
-

sources.list

-

Questo file contiene i sorgenti da cui apt preleva i pacchetti da installare tramite dpkg, vengono quindi precisati i metodi (ad es. http / ftp / cdrom / file), la release che si vuole tracciare (es stable , testing , unstable oppure i corrispondenti release name es: lenny, squeeze, sid), i rami di interesse (es: main che e' la parte principale, non-free per il software non libero, contrib per i pacchetti non realizzati dai manutentori ufficiali).

-

Gli archivi sono generalemnte:

-
-* deb per pacchetti debian binari
-
-* deb-src per i pacchetti sorgenti (quindi da compilare, come il kernel) degli stessi pacchetti binari. Se non compilate generalmente i vostri pacchetti potete evitare di tracciare i sorgenti per risparmiare tempo e banda.
-
-

/etc/apt/sources.list

-
+
+        
+          +            +            +          
+
+          
+            
+              
+
+              
+            
+          
+        
[1]kde-core e' piu' leggero del + pacchetto kde
+
+ +
+

Apt + configurazione

+ +

Vediamo i due file principali di apt:

+ +
    +
  • /etc/apt/sources.list
  • + +
  • /etc/apt/apt.conf
  • +
+ +
+

sources.list

+ +

Questo file contiene i sorgenti da cui apt + preleva i pacchetti da installare tramite dpkg, + vengono quindi precisati i metodi (ad es. http / ftp / + cdrom / file), la release che si vuole tracciare (es + stable, testing, + unstable oppure i + corrispondenti release name es: Lenny, + Squeeze, Sid), i rami di interesse (es: + main che e' l'archivio principale, + non-free per il software non libero, + contrib per i pacchetti non realizzati + dai manutentori ufficiali).

+ +

Gli archivi sono generalmente:

+ +
    +
  • deb per pacchetti Debian binari
  • + +
  • deb-src per i pacchetti sorgenti + (quindi da compilare, come il kernel) degli stessi + pacchetti binari. In genere se non compilate spesso + potete evitare di tracciare i sorgenti per risparmiare + tempo e banda.
  • +
+ +

/etc/apt/sources.list

+
 # esempio di accesso a un CDROM:
 # cdrom:[Debian GNU/Linux 5.0.1 _Lenny_ - Official i386 kde-CD Binary-1 20090$
 
 # Archivio principale debian via http su piffa.net,
 # non funziona al difuori dell'aula dei corsi
-deb http://debian.piffa.net/debian/ lenny main
-# deb http://debian.piffa.net/debian/ lenny  non-free contrib
+deb http://debian.piffa.net/debian/ Lenny main
+# deb http://debian.piffa.net/debian/ Lenny  non-free contrib
 
 # Mirror da kernel.org da usare a casa:
-deb http://mirrors.eu.kernel.org/debian/ lenny main
+deb http://mirrors.eu.kernel.org/debian/ Lenny main
 
 # Security dal sito principale
-deb http://security.debian.org/ lenny/updates main
-deb-src http://security.debian.org/ lenny/updates main
+deb http://security.debian.org/ Lenny/updates main
+deb-src http://security.debian.org/ Lenny/updates main
 
 # Debian volatile per le cose soggette a cambiamenti non legati
 # a dinamiche di sicurezza
-deb http://volatile.debian.org/debian-volatile lenny/volatile main
-deb-src http://volatile.debian.org/debian-volatile lenny/volatile main
+deb http://volatile.debian.org/debian-volatile Lenny/volatile main
+deb-src http://volatile.debian.org/debian-volatile Lenny/volatile main
 
 # Esempio di accesso a un filesystem locale contenente i pacchetti:
-# deb file:/mnt/mirror sid main non-free contrib
+# deb file:/mnt/mirror Sid main non-free contrib
+
+
+ +
+

/etc/apt/apt.conf

+ +

Questo file contiene le opzioni di apt, come ad + esempio il proxy:

+
+Acquire::http::Proxy "http://10.10.208.254:3128"
 
-
-
-

/etc/apt/apt.conf

-

Questo file contiene le opzioni di apt, come ad esempio il proxy:

-
-Acquire::http::Proxy "http://10.10.208.254:3128"
+        
+
+
+ +
+

Servizi

+
+ +
+

Squid

+
+ +
+

Apache

+
+ +
+

DNSmasq

+
+ +
+

Samba

+ +

Samba e' un progetto libero che fornisce servizi di + condivisione di file e stampanti a client SMB/CIFS.

+ +

Samba e' liberamente disponibile, al contrario di altre + implementazioni SMB/CIFS, e permette di ottenere + interoperabilità tra Linux, Unix, Mac OS X e + Windows.

+ +

Samba e' un software che può girare su piattaforme che + non siano Microsoft Windows, per esempio, UNIX, Linux, IBM + System 390, OpenVMS e altri sistemi operativi. Samba utilizza + il protocollo TCP/IP utilizzando i servizi offerti sul server + ospite. Quando correttamente configurato, permette di + interagire con client o server Microsoft Windows come se + fosse un file e print server Microsoft agendo da Primary + Domain Controller (PDC) o come Backup Domain Controller, può + inoltre prendere parte ad un dominio Active Directory.

+ +

Pacchetti da installare per utilizzare Samba in modalita' + client [2]

+
+samba-client
 
- -
-

Squid

-
-
-

Apache

-
- -
-

Samba

-

Pacchetti da installare per utilizzare samba in modalita' server:

-
+
+      

Pacchetti da installare per utilizzare Samba in modalita' + server:

+
 samba smbfs smbclient
 
-

Durante la prima installazione viene chiesto ilnome del gruppo di appartenenza, il default per windows e' WORKGROUP. In aula usiamo invece 208 . -Per riconfigurare samba si usi il comando:

-
+
+      
+        +          +          +        
+
+        
+          
+            
+
+            
+          
+        
+      
[2]Anche se nato per le i sistemi Windows, Samba puo' + essere usato anche per montare cartelle sotto GNU/Linux + come alternativa a NFS. Per la condivisione di + stampanti sarebbe invece opportuno intervenire + direttamente su CUPS.
+ +

Durante la prima installazione viene chiesto il nome del + gruppo di appartenenza, il default per Windows e' WORKGROUP. + In aula usiamo invece 208 .

+ +

Se necessario per riconfigurare Samba si usi il + comando:

+
 dpkg-reconfigure samba-common
 
-

Quando si utilizza samba bisogna tener conto di 3 livelli di password:

-
-
    -
  • Sistema *Unix -E' la password di sistema che viene usata sul sistema operativo su cui gira samba. E' importante tenere conto anche delle user id e group id degli utenti che dovranno fisicamente scrivere sui file system. Se un utente non puo' scrivere sul file system per mancanza di privilegi allora neanche samba potra' farlo nel momento in cui gli mette a disposizione la risorsa. -Queste passwords sono salvate nel solito file /etc/shadow (richiamato da /etc/passwd).
  • -
  • Password per l'applicativo samba -Samba deve essere compatibile con Windows e quindi utilizzare un sistema di criptazione delle password diverso da /etc/shadow.a Le password per l'applicativo samba vengono gestite ad esempio col comando smbpasswd e vengono salvate all'interno di /var/lib/samba/passdb.tdb .
  • -
  • Password per windows. -Gli utenti windows effettuazno il log-in alla partenza della sessione di windows. Se si avra' l'accortezza di usare la stessa password data precedentemente anche a windows (o viceversa impostare la password per GNU/Linux / Samba ugale a quella di Windows) l'utente potra' accedere automaticamente alle condivioni a lui disponibili.
  • -
-
-

Password di samba vengono salvate nel file: /var/lib/samba/passdb.tdb

-
-
-
-
-

Creazione Utenti

-

Creiamo per primo l'utente sotto GNU/Linux, facendo attenzione a non dargli una shell di sistema. Gli utenti Windows non hanno bisogno di poter eseguire comandi sul server!

-

Creazione di un utente denominato sambo:

-
+
+      

Quando si utilizza Samba bisogna tener conto di 3 livelli + di password (e generalmente volete usare sempre la stessa + password per ognuno di questi) e delle differenze tra le + modalita' di autenticazione (e quindi anche di criptaggio + delle passwords) usate da sistemi GNU/Linux e Windows:

+ +
+
1 Sistema *Unix ( GNU/Linux )
+ +
E' la password dell'utente di sistema che viene usata + sul sistema operativo su cui gira il software Samba. E' + importante tenere conto anche delle user-id e + group-id degli utenti che dovranno fisicamente + scrivere sui file system. Se un utente non puo' scrivere in + una certa posizione del file system (ad esempio nella + cartella /mnt/condivisione che sara' stata + necessariamente creata inizialmente dall'utente root) per + mancanza di privilegi allora neanche Samba potra' farlo nel + momento in mette a disposizione la risorsa all'utente. Se + si montano file-system dedicati per le condivisioni + controllare i permessi e propieta' dei punti di + mount*. Queste passwords sono salvate nel solito file + /etc/shadow (richiamato da /etc/passwd).
+ +
2 Password per l'applicativo Samba
+ +
Samba deve essere compatibile con Windows e quindi + utilizzare un sistema di criptazione delle password diverso + da /etc/shadow.a Le password per Samba possono essere + gestite ad esempio col comando smbpasswd + e vengono generalmente salvate all'interno di /var/lib/samba/passdb.tdb .
+ +
3 Password per Windows.
+ +
Gli utenti Windows effettuano il log-in alla partenza + della sessione di Windows. Se si avra' l'accortezza di + usare sempre stessa password data precedentemente anche a + Windows (o viceversa impostare la password per GNU/Linux / + Samba uguale a quella di Windows) l'utente potra' accedere + automaticamente alle condivisioni a lui disponibili.
+
+ +
+

Creazione + Utenti

+ +

Creiamo per primo l'utente sotto GNU/Linux, facendo + attenzione a non dargli una shell di sistema. Gli + utenti Windows che accedono al server solo per le + condivisioni non hanno bisogno di poter eseguire comandi + sul server!

+ +

Creazione di un utente denominato sambo:

+
 adduser --shell /bin/false sambo
 
-

Nota: Ricordarsi di usare sempre la stessa password. -nel file /etc/passwd avremo qualcosa come:

-
-sambo:x:1001:1001:Sambo utente samba!,,,:/home/sambo:/bin/false
+
+        

Nel file /etc/passwd avremo qualcosa come:

+
+sambo:x:1001:1001:Sambo utente Samba!,,,:/home/sambo:/bin/false
 
-

Aggiunta dell'utente al database delle password per samba e generazione della sua password:

-
-smbpasswd -a sambo
-

Se sucessivamente si vorra' modificare la password di un utente gia' esistente si usi:

-
-smbpasswd sambo
-

La password sotto windows verra' modificata sul sistema Windows.

-
-
-

Creare la condivisione

-

La condivisione altro non e' che una cartella sul server che viene resa disponibile sui client negoziando l'accesso in base all'autenticazione tramite esername / password. Si decida se fisicamente debba risiendere nella home di un utente (nel caso quest'ultimo ne sia l'unico fruitore) o in una cartella in /mnt/ nel caso piu' utenti accedano a questa. Nel secondo caso si gestiscano gli accessi sotto GNU/Linux tramite i gruppi.

-

Creazione della risorsa sambo_share nella home dell'utente sambo:

-
+
+        

Aggiunta dell'utente al database delle password per + Samba e generazione della sua password:

+ +
+ smbpasswd -a sambo +
+ +

Se successivamente si vorra' modificare la password di + un utente gia' esistente si usi:

+ +
+ smbpasswd sambo +
+ +

La password sotto Windows verra' modificata sul sistema + Windows.

+
+ +
+

Creare la + condivisione

+ +

La condivisione altro non e' che una cartella sul server + che viene resa disponibile sui client negoziando l'accesso + in base all'autenticazione tramite user-name / password. Si + decida se fisicamente debba risiedere nella home di un + utente (nel caso quest'ultimo ne sia l'unico fruitore) o in + una cartella in /mnt/ nel caso piu' utenti accedano a + questa. Nel secondo caso si gestiscano gli accessi sotto + GNU/Linux tramite i gruppi.

+ +

Creazione della risorsa sambo_share nella home + dell'utente sambo:

+
 # mkdir /home/sambo/sambo_share
 # chown sambo:sambo /home/sambo/sambo_share/
 
-

Bisognerebbe notare i permessi di esecuzione del filesystem che ospita la carterlla. Se i file che saranno contenuti nella condivisione saranno da usarsi sotto Windows non c'e' motivo che questi siano eseguibili sotto GNU/Linux. -Si potrebbe avere quindi, ipotizzando una condivisione in /mnt/share che consista in un file system dedicato:

-

In /etc/fstab

-
+
+        

Bisognerebbe notare i permessi di esecuzione del + file-system che ospita la cartella. Se i file che saranno + contenuti nella condivisione saranno da usarsi sotto + Windows non c'e' motivo che questi siano eseguibili sotto + GNU/Linux. Si potrebbe avere quindi, ipotizzando una + condivisione in /mnt/share che consista in un file system + dedicato:

+ +

In /etc/fstab

+
 /dev/hda10       /mnt/share      ext3    rw,nosuid,noexec  0  3
 
-

Si noti anche l'uso di nosuid per evitare la possibilita' di eseguire programmi con credenziali diverse da quelle originali.

-
-
-

Configurazione dell'applicativo Samba vero e proprio.

-

Avendo preparato gli utenti (ancora una volta: non si dia una shell completa a un utente che serve solo per samba o la posta elettronica) e la cartella sul file system si puo' procedere a configurare la condivisione su Samba.

-

/etc/samba/smb.conf riga ~235 , Share Definitions (in vim si usi 235gg ):

-
+
+        

Si noti anche l'uso di nosuid per evitare la + possibilita' di eseguire programmi con credenziali diverse + da quelle originali.

+
+ +
+

Configurazione + dell'applicativo Samba vero e proprio.

+ +

Avendo preparato gli utenti (ancora una volta: non si + dia una shell completa a un utente che serve solo per Samba + o la posta elettronica) e la cartella sul file system si + puo' procedere a configurare la condivisione su Samba.

+ +

/etc/samba/smb.conf riga ~235 , Share Definitions (in + vim si usi 235gg ):

+
 [sambo_share]
         # Percorso della cartella condivisa
         path = /home/sambo/sambo_share
@@ -585,17 +990,33 @@ Si potrebbe avere quindi, ipotizzando una condivisione in /mnt/share che consist
         # Commento indicativo della risorsa
         comment = Condivisione per Sambo
 
-

Dopo aver salvato il file si puo' fare un primo controllo tramite l'utility testparm , che controlla la sintassi del file di configurazione di Samba. Se questo non rileva problemi si puo' procedere a un /etc/samba# /etc/init.d/samba restart .

-
-
-

Testare il Servizio

-

Come testare il servizio

-

es:

-
+
+        

Dopo aver salvato il file si puo' fare un primo + controllo tramite l'utility testparm , che controlla la + sintassi del file di configurazione di Samba. Se questo non + rileva problemi si puo' procedere a un /etc/samba# + /etc/init.d/samba restart .

+
+ +
+

Testare il + Servizio

+ +

Come testare il servizio

+ +

es:

+
 smbclient -U sambo -L localhost
 
-

Questo comando permette di esplorare la risorsa qualificandosi come utnete, in quresto modo potete testare il corretto funzionamento dell'autenticazione. Si provi inizialmente a sbagliare la password deliberatamente, poi a inserirla correttamente: dovrebbbero essere visibili le risorse disponibili al solo utente sambo: la suo /home e la cartella samba_share:

-
+
+        

Questo comando permette di esplorare la risorsa + qualificandosi come utente, in questo modo potete testare + il corretto funzionamento dell'autenticazione. Si provi + inizialmente a sbagliare la password deliberatamente, poi a + inserirla correttamente: dovrebbero essere visibili le + risorse disponibili al solo utente sambo: la suo /home e la + cartella samba_share:

+
 Sharename       Type      Comment
 ---------       ----      -------
 sambo_share     Disk      Condivisione per Sambo
@@ -603,12 +1024,37 @@ print$          Disk      Printer Drivers
 IPC$            IPC       IPC Service (base server)
 sambo           Disk      Home Directories
 
-

In alternativa e' possibile montare realmente la condivisone anche su linux tramite un client per samba e testare il corretto funzionamento:

-
+
+        

In alternativa e' possibile montare realmente la + condivisone anche su GNU/Linux tramite un client per samba + e testare il corretto funzionamento:

+
 mount -t smbfs //localhost/sambo_share /mnt/sambo_mount/ --verbose -o user=sambo
 
-
-
-
+
+
+ +
+

NOTE

+ +
    +
  • controllato fino alla riga 289
  • + +
  • definizioni degli applicativi prese direttamente da + wikipedia
  • +
+ +

sintassi: in monospace :

+ +
    +
  • nomi di files
  • + +
  • comandi
  • + +
  • pacchetti
  • +
+
+
diff --git a/source/.gen_html.sh.swp b/source/.gen_html.sh.swp new file mode 100644 index 0000000..7061885 Binary files /dev/null and b/source/.gen_html.sh.swp differ diff --git a/source/gen_html.sh b/source/gen_html.sh new file mode 100755 index 0000000..22c8c32 --- /dev/null +++ b/source/gen_html.sh @@ -0,0 +1,5 @@ +#! /bin/sh + +# Alias to generate the simple - one page html version + +rst2html -l it $1 | tidy -quiet -indent -ashtml -language it -latin1 > $2 diff --git a/source/servizi.txt b/source/servizi.txt index b81531b..943994c 100644 --- a/source/servizi.txt +++ b/source/servizi.txt @@ -9,49 +9,55 @@ Appunti sulla installazione e configurazione dei servizi :Copyright: GFDL :Version: 0.2 +Questa guida e' dedicata agli studenti delle lezioni di informatica tenute da Andrea nel lab208. Nella parte iniziale sono presenti alcuni richiami alle impostazioni tipiche di rete e di installazione del laboratorio 208 (lab208) dove generalmente si tengono le lezioni. Questi parametri non sono interessanti per chiunque si trovasse al di fuori della rete piffa.net . + .. contents:: Generato con: http://docutils.sourceforge.net/rst.html Configurazione sistema -######################### +========================= +Solo per uso interno +--------------------------- + +Impostazioni di base per la configurazione del sistema operativo e della rete nel laboratorio 208 facente parte della rete piffa.net . -Inpostazioni di base per la configurazione del sistema operativo Rete ------ -Parametri della rete attualmente in uso:: +Parametri della rete attualmente in uso: - ============= ================ - rete 10.10.208.0/24 - ============= ================ - netmask 255.255.255.0 - broadcast 10.10.208.255 - gateway 10.10.208.254 - gateway 10.10.208.250 - persistente - DNS 10.10.208.254 - DNS 10.10.208.250 - persistente - ============= ================ +============= ================ + Parametri della rete +------------------------------ +rete 10.10.208.0/24 +netmask 255.255.255.0 +broadcast 10.10.208.255 +gateway 10.10.208.254 +gateway 10.10.208.250 + persistente +DNS 10.10.208.254 +DNS 10.10.208.250 + persistente +============= ================ Bash completion ------------------- -Abilitare /etc/bash_completion nel file /etc/bash.bashrc oppure ~/.bashrc :: +Abilitare /etc/bash_completion nel file ``/etc/bash.bashrc`` oppure ``~/.bashrc`` :: . /etc/bash_completion -/etc/bash_completion deve essere pre istallato, nel caso che non sia disponibile installare il pacchetto: bash-completion +Il file ``/etc/bash_completion`` deve essere ,ente nel sistema, in caso contrario installare il pacchetto: ``bash-completion`` Vim ------------ -Sara' opportuno installare la versine completa dell'editor vim tramite il pacchetto vim e mnodificare il file di configurazione generale /etc/vim/vimrc :: +Sara' opportuno installare la versione completa dell'editor vim tramite il pacchetto vim e modificare il file di configurazione generale ``/etc/vim/vimrc`` :: " All system-wide defaults are set in $VIMRUNTIME/debian.vim (usually just " /usr/share/vim/vimcurrent/debian.vim) and sourced by the call to :runtime @@ -112,7 +118,7 @@ Sara' opportuno installare la versine completa dell'editor vim tramite il pacche VNC ------------ -Scaricare il pacchetto xtightvncviewer, e lo script guarda.sh che deve essere reso eseguibile in una posizione (nel senso di collocazione nel path degli utenti) comoda per gli utenti. +Scaricare il pacchetto ``xtightvncviewer`` e lo script ``guarda.sh`` che deve essere reso eseguibile in una posizione (collocazione nel *path* degli utenti, es ``echo $PATH`` per visualizzare l'attuale path ) comoda per gli utenti. Procedura:: @@ -122,60 +128,64 @@ Procedura:: chmod +x guarda.sh exit -Si noti, per pieta' divina, che non e' possibile lanciare un applicativo grafico sul server grafico di un utente di sistema da una shell in cui si e' loggati come altro utente, in questo caso root. E' quindi necessario essere l'utente di sistema che si e' loggato inizialmente nella sessione grafica per poter lanciare lo script guarda.sh . +Si noti che non e' possibile lanciare un applicativo sul server grafico di un utente da una shell in cui si e' loggati come altro utente, anchee se root. E' quindi necessario essere l'utente di sistema che si e' loggato inizialmente nella sessione grafica per poter lanciare lo script guarda.sh . + +Controllare con ``whoami`` di essere l'utente normale (es ``utente | studente | proprio nome`` ), in caso si sia assunta una altra ``id`` si apra un altra shell o si esca da quella attuale con ``exit`` . Lista dei pacchetti di base ----------------------------- -I pacchetti installati generalemnte durante le lezioni sono:: +I pacchetti installati generalmente [#]_ per poter seguire le lezioni sono:: kde-core kdm kde-i18n-it xorg vim less xtightvncviewer +.. [#] ``kde-core`` e' piu' leggero del pacchetto ``kde`` + Apt configurazione --------------------- -Vediamo i due file principali di apt:: +Vediamo i due file principali di apt: - * /etc/apt/sources.list +* ``/etc/apt/sources.list`` - * /etc/apt/apt.conf +* ``/etc/apt/apt.conf`` sources.list ~~~~~~~~~~~~~~~~ -Questo file contiene i sorgenti da cui apt preleva i pacchetti da installare tramite dpkg, vengono quindi precisati i metodi (ad es. http / ftp / cdrom / file), la release che si vuole tracciare (es stable , testing , unstable oppure i corrispondenti release name es: lenny, squeeze, sid), i rami di interesse (es: main che e' la parte principale, non-free per il software non libero, contrib per i pacchetti non realizzati dai manutentori ufficiali). +Questo file contiene i sorgenti da cui *apt* preleva i pacchetti da installare tramite *dpkg*, vengono quindi precisati i metodi (ad es. http / ftp / cdrom / file), la release che si vuole tracciare (es ``stable, testing, unstable`` oppure i corrispondenti release name es: ``Lenny, Squeeze, Sid``), i rami di interesse (es: ``main`` che e' l'archivio principale, ``non-free`` per il software non libero, ``contrib`` per i pacchetti non realizzati dai manutentori ufficiali). -Gli archivi sono generalemnte:: +Gli archivi sono generalmente: - * deb per pacchetti debian binari +* ``deb`` per pacchetti Debian binari - * deb-src per i pacchetti sorgenti (quindi da compilare, come il kernel) degli stessi pacchetti binari. Se non compilate generalmente i vostri pacchetti potete evitare di tracciare i sorgenti per risparmiare tempo e banda. +* ``deb-src`` per i pacchetti sorgenti (quindi da compilare, come il kernel) degli stessi pacchetti binari. In genere se non compilate spesso potete evitare di tracciare i sorgenti per risparmiare tempo e banda. -/etc/apt/sources.list :: +``/etc/apt/sources.list`` :: # esempio di accesso a un CDROM: # cdrom:[Debian GNU/Linux 5.0.1 _Lenny_ - Official i386 kde-CD Binary-1 20090$ # Archivio principale debian via http su piffa.net, # non funziona al difuori dell'aula dei corsi - deb http://debian.piffa.net/debian/ lenny main - # deb http://debian.piffa.net/debian/ lenny non-free contrib + deb http://debian.piffa.net/debian/ Lenny main + # deb http://debian.piffa.net/debian/ Lenny non-free contrib # Mirror da kernel.org da usare a casa: - deb http://mirrors.eu.kernel.org/debian/ lenny main + deb http://mirrors.eu.kernel.org/debian/ Lenny main # Security dal sito principale - deb http://security.debian.org/ lenny/updates main - deb-src http://security.debian.org/ lenny/updates main + deb http://security.debian.org/ Lenny/updates main + deb-src http://security.debian.org/ Lenny/updates main # Debian volatile per le cose soggette a cambiamenti non legati # a dinamiche di sicurezza - deb http://volatile.debian.org/debian-volatile lenny/volatile main - deb-src http://volatile.debian.org/debian-volatile lenny/volatile main + deb http://volatile.debian.org/debian-volatile Lenny/volatile main + deb-src http://volatile.debian.org/debian-volatile Lenny/volatile main # Esempio di accesso a un filesystem locale contenente i pacchetti: - # deb file:/mnt/mirror sid main non-free contrib + # deb file:/mnt/mirror Sid main non-free contrib /etc/apt/apt.conf @@ -201,67 +211,78 @@ DNSmasq Samba ====== -Pacchetti da installare per utilizzare samba in modalita' server:: +Samba e' un progetto libero che fornisce servizi di condivisione di file e stampanti a client SMB/CIFS. + +Samba e' liberamente disponibile, al contrario di altre implementazioni SMB/CIFS, e permette di ottenere interoperabilità tra Linux, Unix, Mac OS X e Windows. + +Samba e' un software che può girare su piattaforme che non siano Microsoft Windows, per esempio, UNIX, Linux, IBM System 390, OpenVMS e altri sistemi operativi. Samba utilizza il protocollo TCP/IP utilizzando i servizi offerti sul server ospite. Quando correttamente configurato, permette di interagire con client o server Microsoft Windows come se fosse un file e print server Microsoft agendo da Primary Domain Controller (PDC) o come Backup Domain Controller, può inoltre prendere parte ad un dominio Active Directory. + +Pacchetti da installare per utilizzare Samba in modalita' client [#]_ :: + + + samba-client + +Pacchetti da installare per utilizzare Samba in modalita' server:: samba smbfs smbclient +.. [#] Anche se nato per le i sistemi Windows, Samba puo' essere usato anche per montare cartelle sotto GNU/Linux come alternativa a NFS. Per la condivisione di stampanti sarebbe invece opportuno intervenire direttamente su ``CUPS``. + +Durante la prima installazione viene chiesto il nome del gruppo di appartenenza, il default per Windows e' ``WORKGROUP``. In aula usiamo invece ``208`` . -Durante la prima installazione viene chiesto ilnome del gruppo di appartenenza, il default per windows e' WORKGROUP. In aula usiamo invece 208 . -Per riconfigurare samba si usi il comando:: +Se necessario per riconfigurare Samba si usi il comando:: dpkg-reconfigure samba-common -Quando si utilizza samba bisogna tener conto di 3 livelli di password: +Quando si utilizza Samba bisogna tener conto di 3 livelli di password (e generalmente volete usare *sempre la stessa password* per ognuno di questi) e delle differenze tra le modalita' di autenticazione (e quindi anche di criptaggio delle passwords) usate da sistemi GNU/Linux e Windows: - * Sistema \*Unix - E' la password di sistema che viene usata sul sistema operativo su cui gira samba. E' importante tenere conto anche delle user id e group id degli utenti che dovranno fisicamente scrivere sui file system. Se un utente non puo' scrivere sul file system per mancanza di privilegi allora neanche samba potra' farlo nel momento in cui gli mette a disposizione la risorsa. +1 Sistema \*Unix ( GNU/Linux ) + E' la password dell'utente di sistema che viene usata sul sistema operativo su cui gira il software Samba. E' importante tenere conto anche delle *user-id* e *group-id* degli utenti che dovranno fisicamente scrivere sui file system. Se un utente non puo' scrivere in una certa posizione del file system (ad esempio nella cartella ``/mnt/condivisione`` che sara' stata necessariamente creata inizialmente dall'utente ``root``) per mancanza di privilegi allora neanche Samba potra' farlo nel momento in mette a disposizione la risorsa all'utente. Se si montano file-system dedicati per le condivisioni controllare i permessi e propieta' dei *punti di mount**. Queste passwords sono salvate nel solito file /etc/shadow (richiamato da /etc/passwd). - * Password per l'applicativo samba - Samba deve essere compatibile con Windows e quindi utilizzare un sistema di criptazione delle password diverso da /etc/shadow.a Le password per l'applicativo samba vengono gestite ad esempio col comando smbpasswd e vengono salvate all'interno di /var/lib/samba/passdb.tdb . +2 Password per l'applicativo Samba + Samba deve essere compatibile con Windows e quindi utilizzare un sistema di criptazione delle password diverso da /etc/shadow.a Le password per Samba possono essere gestite ad esempio col comando ``smbpasswd`` e vengono generalmente salvate all'interno di ``/var/lib/samba/passdb.tdb`` . - * Password per windows. - Gli utenti windows effettuazno il log-in alla partenza della sessione di windows. Se si avra' l'accortezza di usare la stessa password data precedentemente anche a windows (o viceversa impostare la password per GNU/Linux / Samba ugale a quella di Windows) l'utente potra' accedere automaticamente alle condivioni a lui disponibili. +3 Password per Windows. + Gli utenti Windows effettuano il log-in alla partenza della sessione di Windows. Se si avra' l'accortezza di usare sempre stessa password data precedentemente anche a Windows (o viceversa impostare la password per GNU/Linux / Samba uguale a quella di Windows) l'utente potra' accedere automaticamente alle condivisioni a lui disponibili. -Password di samba vengono salvate nel file: /var/lib/samba/passdb.tdb Creazione Utenti ------------------- -Creiamo per primo l'utente sotto GNU/Linux, facendo attenzione a *non* dargli una shell di sistema. Gli utenti Windows non hanno bisogno di poter eseguire comandi sul server! +Creiamo per primo l'utente sotto GNU/Linux, facendo attenzione a *non dargli una shell di sistema*. Gli utenti Windows che accedono al server solo per le condivisioni non hanno bisogno di poter eseguire comandi sul server! Creazione di un utente denominato sambo:: adduser --shell /bin/false sambo -Nota: Ricordarsi di usare sempre la stessa password. -nel file /etc/passwd avremo qualcosa come:: +Nel file ``/etc/passwd`` avremo qualcosa come:: - sambo:x:1001:1001:Sambo utente samba!,,,:/home/sambo:/bin/false + sambo:x:1001:1001:Sambo utente Samba!,,,:/home/sambo:/bin/false -Aggiunta dell'utente al database delle password per samba e generazione della sua password: +Aggiunta dell'utente al database delle password per Samba e generazione della sua password: smbpasswd -a sambo -Se sucessivamente si vorra' modificare la password di un utente gia' esistente si usi: +Se successivamente si vorra' modificare la password di un utente gia' esistente si usi: smbpasswd sambo -La password sotto windows verra' modificata sul sistema Windows. +La password sotto Windows verra' modificata sul sistema Windows. Creare la condivisione ------------------------ -La condivisione altro non e' che una cartella sul server che viene resa disponibile sui client negoziando l'accesso in base all'autenticazione tramite esername / password. Si decida se fisicamente debba risiendere nella home di un utente (nel caso quest'ultimo ne sia l'unico fruitore) o in una cartella in /mnt/ nel caso piu' utenti accedano a questa. Nel secondo caso si gestiscano gli accessi sotto GNU/Linux tramite i gruppi. +La condivisione altro non e' che una cartella sul server che viene resa disponibile sui client negoziando l'accesso in base all'autenticazione tramite user-name / password. Si decida se fisicamente debba risiedere nella home di un utente (nel caso quest'ultimo ne sia l'unico fruitore) o in una cartella in /mnt/ nel caso piu' utenti accedano a questa. Nel secondo caso si gestiscano gli accessi sotto GNU/Linux tramite i gruppi. Creazione della risorsa sambo_share nella home dell'utente sambo:: # mkdir /home/sambo/sambo_share # chown sambo:sambo /home/sambo/sambo_share/ -Bisognerebbe notare i permessi di esecuzione del filesystem che ospita la carterlla. Se i file che saranno contenuti nella condivisione saranno da usarsi sotto Windows non c'e' motivo che questi siano eseguibili sotto GNU/Linux. +Bisognerebbe notare i permessi di esecuzione del file-system che ospita la cartella. Se i file che saranno contenuti nella condivisione saranno da usarsi sotto Windows non c'e' motivo che questi siano eseguibili sotto GNU/Linux. Si potrebbe avere quindi, ipotizzando una condivisione in /mnt/share che consista in un file system dedicato: In /etc/fstab :: @@ -273,7 +294,7 @@ Si noti anche l'uso di *nosuid* per evitare la possibilita' di eseguire programm Configurazione dell'applicativo Samba vero e proprio. ------------------------------------------------------ -Avendo preparato gli utenti (ancora una volta: non si dia una shell completa a un utente che serve solo per samba o la posta elettronica) e la cartella sul file system si puo' procedere a configurare la condivisione su Samba. +Avendo preparato gli utenti (ancora una volta: non si dia una shell completa a un utente che serve solo per Samba o la posta elettronica) e la cartella sul file system si puo' procedere a configurare la condivisione su Samba. /etc/samba/smb.conf riga ~235 , Share Definitions (in vim si usi 235gg ):: @@ -304,7 +325,7 @@ es:: smbclient -U sambo -L localhost -Questo comando permette di esplorare la risorsa qualificandosi come utnete, in quresto modo potete testare il corretto funzionamento dell'autenticazione. Si provi inizialmente a sbagliare la password deliberatamente, poi a inserirla correttamente: dovrebbbero essere visibili le risorse disponibili al solo utente sambo: la suo /home e la cartella samba_share:: +Questo comando permette di esplorare la risorsa qualificandosi come utente, in questo modo potete testare il corretto funzionamento dell'autenticazione. Si provi inizialmente a sbagliare la password deliberatamente, poi a inserirla correttamente: dovrebbero essere visibili le risorse disponibili al solo utente sambo: la suo /home e la cartella samba_share:: Sharename Type Comment --------- ---- ------- @@ -313,6 +334,19 @@ Questo comando permette di esplorare la risorsa qualificandosi come utnete, in q IPC$ IPC IPC Service (base server) sambo Disk Home Directories -In alternativa e' possibile montare realmente la condivisone anche su linux tramite un client per samba e testare il corretto funzionamento:: +In alternativa e' possibile montare realmente la condivisone anche su GNU/Linux tramite un client per samba e testare il corretto funzionamento:: mount -t smbfs //localhost/sambo_share /mnt/sambo_mount/ --verbose -o user=sambo + +NOTE +======== + +* controllato fino alla riga 289 + +* definizioni degli applicativi prese direttamente da wikipedia + +sintassi: in ``monospace`` : + +* nomi di files +* comandi +* pacchetti