]> git.piffa.net Git - doc/.git/blobdiff - source/servizi.txt
Servizi, samba
[doc/.git] / source / servizi.txt
index 1be9af2d6c06f840c107a161691435acc8522d0d..20fb1433d171888443372f7c24ab5eef82c9c862 100644 (file)
@@ -7,7 +7,7 @@ Appunti sulla installazione e configurazione dei servizi di rete in ambiete Gnu/
 
   :Author: Andrea Manni
   :Copyright: GFDL
-  :Version: 0.94
+  :Version: 0.95
 
 Questa guida tratta la configurazione di base dei principali servizi di rete utilizzati con sistemi operativi *Unix* e derivati come *GNU/Linux* per gli studenti dei corsi per amministratori di rete in ambiente *GNU/Linux*. In particolare questa guida e' stata scritta usando come riferimento la distribuzione *Debian GNU/Linux*. Gli esempi presentati dovrebbero quindi essere direttamente utilizzabili anche su distribuzioni derivate da Debian come Ubuntu, per sistemi operativi diversi si presti attenzione ai percorsi dei file citati.
 
@@ -1625,11 +1625,11 @@ Passwords e autenticazione
 Per poter configurare Samba in modo che usi un sistema di negoziazione degli accessi alle cartelle condivise basato su accoppiate *nome utente / password* bisogna distinguere tra 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 dei privilegi di scrittura 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 proprieta' dei *punti di mount**.
+         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 dei privilegi di scrittura allora non potra' farlo neanche quando Samba rendera' disponibile la risorsa all'utente. Se si montano file-system dedicati per le condivisioni controllare i permessi e proprieta' 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 . Le password per Samba possono essere gestite ad esempio col comando ``smbpasswd`` e vengono generalmente salvate all'interno di  ``/var/lib/samba/passdb.tdb`` .
+         Samba deve essere compatibile con Windows e quindi utilizzare un sistema di criptazione delle password diverso da ``/etc/shadow`` . Le password per Samba possono essere gestite ad esempio col comando ``smbpasswd`` e vengono normalmente 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 la *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.
@@ -1644,7 +1644,7 @@ Creazione di un utente denominato sambo::
        
        adduser --shell /bin/false sambo
 
-Nel file ``/etc/passwd`` avremo qualcosa come::
+Nel file ``/etc/passwd`` comparira' qualcosa come::
 
        sambo:x:1001:1001:Sambo utente Samba,,,:/home/sambo:/bin/false
 
@@ -1658,7 +1658,7 @@ Se successivamente si vorra' modificare la password di un utente gia' esistente
        smbpasswd  sambo
 
 
-La password sotto Windows verra' modificata sul sistema Windows.
+La password sotto Windows andra' modificata sul sistema Windows.
 
 Creare la condivisione
 ------------------------
@@ -1673,7 +1673,7 @@ Creazione della risorsa sambo_share nella home dell'utente sambo::
 Sicurezza: permessi di esecuzione sul server
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Bisognerebbe notare sul server i permessi di esecuzione del file-system che ospita la cartella da condividere. Se i file che saranno contenuti nella condivisione saranno da usarsi sotto Windows non c'e' motivo che questi siano eseguibili sotto GNU/Linux. 
+A lato server si presti attenzione ai permessi di esecuzione del file-system che ospita la cartella da condividere. 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 risieda su di un file system dedicato:
 
 ``/etc/fstab`` 
@@ -1685,7 +1685,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 accede solo a Samba o alla 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 )::
@@ -1993,7 +1993,7 @@ Links
 ------
 
 * http://openskill.info/topic.php?ID=124
-* http://iptables-tutorial.frozentux.net/iptables-tutorial.html
+* http://www.frozentux.net/iptables-tutorial/chunkyhtml/c962.html
 
 Ipfilter
 ----------
@@ -2049,7 +2049,9 @@ Vantaggi e svantaggi: consumo elettrico, efficienza, flessibilita', strumenti di
 Percorso dei pacchetti tra tabelle e catene
 -------------------------------------------
 
-link: http://iptables-tutorial.frozentux.net/iptables-tutorial.html#TRAVERSINGOFTABLES
+E importante conoscere il percorso che i paccheti seguono passando tra le varie catene, l'ordine infatti puo' cambiare il riusultato ottenuto (che il pacchetto raggiunga o meno l'host, oppure modificare il pachetto stesso).
+
+link: http://www.frozentux.net/iptables-tutorial/chunkyhtml/c962.html
 
 
 Concetti di base
@@ -2271,7 +2273,7 @@ Masquerading (sNAT)
 ~~~~~~~~~~~~~~~~~~~~
 
 Per attivare la network address translation (in questo caso un SNAT) per la rete locale privata sull'indirizzo ip del *modem*::
-       iptables -A POSTROUTING -s 192.168.0.0/255.255.255.0 -o ppp0 -j MASQUERADE
+       iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -o ppp0 -j MASQUERADE
 
 Il *Masquerading* a differenza dello *SNAT* puro (``-j SNAT --to-source proprio_ip_pubblico ) legge l'indirizzo ip del device ``ppp0``. 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.
 
@@ -2295,6 +2297,58 @@ Per limitare attacchi di tipo brute force su SSH::
        iptables -A INPUT -i ppp0 -p tcp -m tcp --dport 22 -m state --state NEW -m recent --set --name DEFAULT --rsource
 
 
+
+Proc filesystem
+---------------------
+
+Tramite il filesystem virtuale **proc** possiamo monitorare talvolta anche modificarei, a seconda dei casi, alcuni parametri utili per il networking. La parte di proc che ci interessa si riconduce al percorso: ``/proc/sys/net/ipv4`` : vediamo alcuni dei parametri fondamentali.
+
+ip_forward
+~~~~~~~~~~~~~~~~~~~~~~~
+
+Questa variabile determine se l'instradamento dei pacchetti e' attvo, in caso positivo il kernel instradera' i pacchetti (routing). Con ip_forward settato a ``0`` la nostra macchina continuera' a vedere le varie reti su cui eventualmente si trova (gateway) ma non instradera' i pacchetti da parte di altri host.
+
+Questo parametro determina tutti gli instradamenti che il nostro host puo' fare, quindi e' determinante anche per NAT, firewall, masquerading.
+
+E' possibile settarlo per le singole interfacce, ad esempio per eth0: ``/proc/sys/net/ipv4/conf/eth0/forwarding`` .
+
+Per approfondimenti su cosa si intenda per instradamento: rfc1812.txt sezione 2.3:: 
+
+       In the Internet model, constituent networks are connected together by
+          IP datagram forwarders which are called routers or IP routers.  In
+          this document, every use of the term router is equivalent to IP
+          router.  Many older Internet documents refer to routers as gateways.
+       
+        A router connects to two or more logical interfaces, represented by
+          IP subnets or unnumbered point to point lines (discussed in section
+          [2.2.7]).  Thus, it has at least one physical interface.  Forwarding
+          an IP datagram generally requires the router to choose the address
+          and relevant interface of the next-hop router or (for the final hop)
+          the destination host.  This choice, called relaying or forwarding
+          depends upon a route database within the router.  The route database
+          is also called a routing table or forwarding table.  The term
+          "router" derives from the process of building this route database;
+          routing protocols and configuration interact in a process called
+          routing.
+       
+       Routers provide datagram transport only, and they seek to minimize
+          the state information necessary to sustain this service in the
+          interest of routing flexibility and robustness.
+
+
+
+ip_default_ttl
+~~~~~~~~~~~~~~~~
+
+*Time to leave* di default usato dal nostro host: in genere ``64``. 
+
+
+ip_local_port_range
+~~~~~~~~~~~~~~~~~~~~~
+
+Il range di porte usato dal nostro host quando si connette come client ad altri host. Puo' essere utile modificarlo per poi intercettare piu' facilmente i pacchetti provenienti da qusto host, oppupure quel qualunqe limitazione vogliamo imporre sul range da usarsi. Si ricorda che solo root puo' aprire porte sotto la ``1024``.
+
+
 FTP Server
 ===========