è basata su Ubuntu ma funziona (forse con qualche lieve modifica nel
percorso di qualche file) con qualsiasi distribuzione
in caso di distro che non suda
testi usati:
* Linux Server per l'amministratore di rete (2da ed., Apogeo)
* Linux in tasca (fantastico! l'ho prestato e non ricordo l'editore)
* The Bash Cookbook (O'Reilly)
l'installazione di Ubuntu server è semplice come la desktop,
io ho fatto a meno dell'ambiente grafico per essere obbligato a *imparare*
per un file server va ovviamente bene un qualsiasi pc comune
finita l'installazione di Ubuntu Server accedete all'unico utente che
avete creato
la prima cosa da fare è modificare il file smb.conf, che
si trova in /etc/samba
se samba non è installato
- Codice: Seleziona tutto
sudo apt-get install samba
per avviare/arrestare/riavviare il demone di samba
- Codice: Seleziona tutto
sudo /etc/init.d/samba start/stop/restart
ora facciamo una copia del file smb.conf originale
- Codice: Seleziona tutto
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old
poi passiamo a modificare il file
siccome non c'è ambiente grafico uso nano, e siccome con nano non ho
ancora imparato a selezionare tutto il contenuto di un file per
cancellarlo faccio così (cancello e ricreo il file):
- Codice: Seleziona tutto
sudo rm /etc/samba/smb.conf
- Codice: Seleziona tutto
sudo touch /etc/samba/smb.conf
adesso possiamo impostare la configurazione
- Codice: Seleziona tutto
sudo nano /etc/samba/smb.conf
la prima cosa da definire è la sezione "global"
si tratta della prima sezione ed è standard, cioè va sempre messa
- Codice: Seleziona tutto
[global]
workgroup = CASA
netbios name = SERVER
server string = LINUX
security = USER
smb passwd file = /etc/samba/smbpasswd
encrypt passwords = YES
log file = /var/log/samba/%m.log
max log size = 100
log level = 1
breve spiegazione:
* le sezioni vanno sempre racchiuse tra [ e ]
* workgroup è il gruppo di lavoro e mettete quello che vi pare
* netbios name è il nome del pc che avete scelto in fase
di installazione
* server string è il nome che apparirà sotto l'icona del server nelle
risorse di rete, mettete quello che volete
* security va impostata su USER se non volete problemi di sicurezza
* smb passwd file è il percorso dove vengono memorizzate le password
(crittate)
* encrypt passwords. appunto
* log ecc. è per specificare percorso, livello di dettaglio e
dimensioni massime del file di log. questo è un livello standard, va
bene per la maggior parte di *noi*
per verificare che la configurazione sia corretta, eseguiamo testparm, se è tutto ok vedrete qualcosa come
- Codice: Seleziona tutto
master@server:~$ testparm
Load smb config files from /etc/samba/smb.conf
Processing section "[public]"
Processing section "[printers]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
quindi premiamo Enter sulla tastiera come ci viene chiesto per visualizzare un resoconto del file smb.conf
- Codice: Seleziona tutto
[global]
workgroup = zzimia
server string = Linux Server
log level = 1
log file = /var/log/samba/%m.log
max log size = 100
printcap name = CUPS
os level = 255
preferred master = Yes
printing = cups
print command =
lpq command = %p
lprm command =
[public]
comment = Cartella Condivisa
path = /home/public
valid users = berlusconi
read only = No
[printers]
comment = Samsung Shared Printer
path = /var/spool/samba
printable = Yes
use client driver = Yes
browseable = No
sempre nel file che stiamo editando, continuiamo aggiungendo il master
browser
- Codice: Seleziona tutto
os level = 255
preferred master = YES
così è chiaro a tutte le macchine in rete chi è il capo, il server
predefinito
adesso possiamo impostare la parte relativa alla stampa, per condividere
le stampanti, per cui si usa CUPS
- Codice: Seleziona tutto
printing = CUPS
printcap = CUPS
qui devo fare una tragica rivelazione... non avevo voglia di sbattermi a
impostare CUPS da riga di comando, per cui... cazzo ho installato Gnome
e poi l'ho tolto!
se voi avete voglia, magari poi mi dite come si fa
se decidete di fare a meno del server grafico ma vi trovate in difficoltà
nel configurare CUPS, inserite un livecd, aprite firefox e digitate
nella barra degli indirizzi:
127.0.0.1:631
aggiungete la stampante (che deve essere collegata e accesa) e configuratela facilmente dal pannello di controllo che apparirà nel browser
una volta finito di configurare il server va aggiunta ai client come stampante di rete (per i client Windows i driver vanno installati dal cd quando richiesto)
adesso è ora di creare le cartelle che opsiteranno i file della rete
sotto a global scriviamo
- Codice: Seleziona tutto
[condivisa]
comment = cartella condivisa
path = /home/condivisa
valid users = bonazza pusher soreta
writable = YES
spiego solo le voci nuove
* valid users sono gli utenti ammessi
* writable indica che la directory è scrivibile
* in ambito aziendale multiutenza con varie directory conivise è
possibile escludere determinati utenti dalle cartelle riservate magari
ai vertici o ai leccaculo, o a casa per nascondere i pornazzi alla
nonna. la sintassi è
- Codice: Seleziona tutto
invalid users = nonna infamone cozzamara
adesso passiamo alla configurazione della stampante nel solito smb.conf
- Codice: Seleziona tutto
[printers]
comment = Shared Printer
path = /var/spool/samba
printable = YES
use client driver = YES
sfogate la fantasia solo per la voce comment e lasciate così il resto
ecco, abbiamo finito la configurazione del server, adesso dobbiamo
aggiungere, sempre sul server, l'utente o gli utenti che intendiamo fare
accedere al server e ai suoi servizi
- Codice: Seleziona tutto
sudo useradd zoccola
e poi impostarne la password
- Codice: Seleziona tutto
sudo passwd zoccola
fatto questo dobbiamo impostare la password per l'utente in Samba
- Codice: Seleziona tutto
smbpasswd -a zoccola
***questa è la password che userete per connettervi al server dai client come utente zoccola***
a questo punto creiamo la directory che abbiamo impostato nel file
smb.conf
- Codice: Seleziona tutto
sudo mkdir /home/condivisa
adesso bisogna impostare i permessi in modo che tutti gli utenti che hanno accesso al server possano leggere/scrivere
- Codice: Seleziona tutto
sudo chmod 777 /home/condivisa
[consiglio di approfondire il discorso dei permessi per impostarli secondo le proprie esigenze]
come accedere al server dai client:
da Linux:
installare samba se non lo è già
modificare il file smb.conf (fate prima la copia del file originale, può
sempre servire ripristinarlo) cancellare il contenuto e inserire le
seguenti voci
- Codice: Seleziona tutto
[global]
workgroup = LO_STESSO_DEL_SERVER
netbios name = il_nome_macchina_del_client
security = USER
wins support = no
nota: il wins support va impostato su yes in caso di router con DHCP
attivo, però lo sconsiglio in favore di IP statici, per cui va impostato
su no
riavviare samba poi Risorse -> Network -> appare l'icona del server ->
doppio click -> nome utente e password (quella di samba che abbiamo
creato prima)
in Windows:
pannello di controllo -> rete -> creazione guidata rete -> impostare il workgroup -> se richiesto riavviare il pc -> risorse di rete -> doppio click sul server -> nome utente e password
nota: io ho dovuto modificare il file /etc/hosts sui client linux altrimenti non accedevo alla rete
- Codice: Seleziona tutto
sudo cp /etc/hosts /etc/hosts.old
- Codice: Seleziona tutto
sudo nano /etc/hosts
lasciamo tutto così com'è e sotto l'ultima riga aggiungiamo IP e nome di ogni client + il server (escluso quello su cui stiamo lavorando ovviamente), alla fine avremo una cosa del genere
- Codice: Seleziona tutto
sl0wg33k@asus:~$ cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 asus
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
# la mia rete
192.168.1.65 xp1
192.168.1.68 linux1
192.168.1.70 SERVER
192.168.1.94 xp2
adesso, se vogliamo "risparmiare" un monitor possiamo gestire il server direttamente da terminale usando una shell cifrata (ssh = secure shell)
per fare ciò dobbiamo installare ssh sul server
- Codice: Seleziona tutto
sudo apt-get install ssh
poi dal client Linux apriamo un terminale e digitiamo ssh e il nome dell'utente creato in fase di installazione del server seguito dalla chiocciola e dal nome dell'host
- Codice: Seleziona tutto
sl0wg33k@asus:~$ ssh master@server
ci viene chiesta la password (quella dell'utente creata in fase di installazione, non quella di Samba)
- Codice: Seleziona tutto
master@server's password:
e finalmente accediamo, la prima volta appare un messeaggio allarmante ma non vi preoccupate e rispondete yes o si
- Codice: Seleziona tutto
The authenticity of host 'server (192.168.1.70)' can't be estabilished. RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Are you sure you wantto continue connecting (yes/no)?
ed eccoci ai comandi
- Codice: Seleziona tutto
Linux server 2.6.22-14-server #1 SMP Tue Feb 12 08:27:05 UTC 2008 i686
The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.
Last login: Wed Mar 26 00:32:04 2008 from asus.local
master@server:~$
per collegarci da Windows via terminale, possiamo scaricare Putty
lanciamolo e inseriamo IP o nome del server, controllando che SSH sia la modalità selezionata, poi eseguiamo gli stessi comandi del terminale Linux
per spegnere il server da remoto via ssh, collegarsi come sopra e digitare
- Codice: Seleziona tutto
sudo halt -h now
per spegnere il server con un conto alla rovescia
- Codice: Seleziona tutto
master@server:~$ sudo shutdown -h +200
password for master:
Broadcast message from master@server
(/dev/pts/0) at 21:01 ...
The system is going down for halt in 200 minutes!
per cancellare lo spegnimento temporizzato basta premere CTRL + canc/del (come per ogni comando)
per chiudere la connessione ssh con il server basta digitare exit
- Codice: Seleziona tutto
master@server:~$ exit
logout
Connection to server closed.
sl0wg33k@asus:~$
fine prima parte...





