HWfiles - Logo
Stampa
Realizzare un server casalingo con Gentoo - parte 3
Realizzare un server casalingo con Gentoo - parte 3
Andrea Raviola - 09 Novembre 2005
“In questa ultima puntata dedicata alla realizzazione di un server casalingo basato su Gentoo Linux ci si occuperà dell'installazione di VNC per poter accedere in modo agevole da remoto, verrà poi installato un comodo server ftp e si descriverà la procedura per sostituire un disco difettoso”
Pagina 1 - Introduzione

Nelle due puntate precedenti è stata descritta l'installazione di un sistema base Gentoo ottimizzandolo il più possibile per la realizzazione di un server casalingo, si è reso il sistema accessibile via rete utilizzando Samba e, sfruttando il sistema dischi raid 1, si è operato per gestire i backup di eventuali pc remoti.

Con la terza puntata si conclude questa guida, in quest'occasione verranno proposti altri tool necessari per un'ottimale gestione e utilizzo della GentooBox, più in dettaglio si installerà VNC per visualizzare l'output video del server e gestirlo da remoto, mentre nella parte finale si procederà all'installazione e configurazione di un server ftp utile per trasferire da e verso il server dati e cartelle con molta flessibilità e da qualsiasi sistema connesso alla rete.

Pur confidando nella buona sorte, verrà proposta la procedura da eseguire per recuperare i dati e sostituire un disco daneggiato sfruttando in modo ottimale le tecnologie Raid 1.
La scelta di software installabile su una GentooBox è estremamente ampia, ma il più delle volte la preferenza di un programma rispetto all'altro è frutto di abitudini e giudizi personali; per questa ragione in questa ultima puntata installeremo il minimo indispensabile all'uso, lasciando spazio agli utenti per personalizzazioni e sperimentazioni future.

Pagina 2 - Installazione VNC server - parte 1

Per rendere fruibile da un pc remoto la GentooBox è necessario installare il pacchetto VNC attraverso cui esportare l'interfaccia grafica sulla rete locale. Si procederà quindi all'installare sul server di un windows manager, per questioni di semplicità è leggerezza si è scelto fluxbox anche se questa scelta è personalizzabile da ogni utente. La prima operazione da effettuare prevede la determinazione delle dipendenze necessarie:
ryoma root # emerge -p fluxbox

These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild N ] media-libs/freetype-2.1.9-r1
[ebuild N ] x11-misc/ttmkfdir-3.0.9-r3
[ebuild N ] x11-base/opengl-update-2.2.1
[ebuild N ] media-libs/fontconfig-2.2.3
[ebuild N ] x11-base/xorg-x11-6.8.2-r1
[ebuild N ] app-arch/rpm2targz-9.0-r2
[ebuild N ] sys-apps/utempter-0.5.5.5-r1
[ebuild N ] x11-terms/xterm-200-r3
[ebuild N ] media-libs/giflib-4.1.3
[ebuild N ] media-libs/imlib2-1.2.0-r2
[ebuild N ] x11-wm/fluxbox-0.9.12-r1

L'output appena riportato non è proprio confortante, vengono infatti richiesti diversi pacchetti; procediamo quindi con l'installazione di Fluxbox
ryoma root # emerge fluxbox

Installato il windows manager è il caso di occuparsi di VNC:
ryoma root # emerge vnc

Terminata l'installazione è necessario cambiare utente prima di avviare il server, infatti certe operazioni è buona norma che non vengano effettuate da root, ma da un "semplice" user che dispone di minori provilegi.
Per cambiare utente è si fa ricorso al comando su, nel caso della GentooBox di esempio l'utente senza privilegi si chiama blue, che deve essere preventivamente aggiunto al gruppo "wheel" con:
ryoma root # gpasswd –a blue wheel

Terminate queste operazioni sulla GentooBox è necessario installare il client VNC sulla macchina con sistema operativo MIcrosoft Windows, il file di installazione è disponibile a questo indirizzo.
Si consiglia di prestare attenzione al pacchetto scaricato e alla successiva installazione, infatti nel caso di questo articolo è sufficiente installare sulla macchina Windows solo il client, tralasciando quindi i componenti server.

Effettuare il cambio di utente per le motivazioni appena esplicitate:
ryoma root # su blue
Verificare con il commando whoami se l'operazione precedente è andata a buon fine:
ryoma root # whoami
blue
ryoma root #

Procedere quindi all'avvio del server VNC con:
ryoma root # vncserver

Al primo avvio del server sarà necessario impostare una password:
New 'X' desktop is ryoma:1

Starting applications specified in /home/blue/.vnc/xstartup
Log file is /home/blue/.vnc/ryoma:1.log

E' fondamentale memorizzare il numero della sessione aperta, infatti è possibile avviare più sessioni VNC contemporaneamente, ma volendo bloccare una di esse sarà necessario digitare il numero corrispondente.

Per bloccare una sessione procedere con:
ryoma root # vncserver -kill :1

Ovviamente per bloccare la sessione 2 si userà :2 e così via. Dopo aver verificato l'avvio del server è necessario indicare a quest'ultimo di utilizzare Fluxbox, procedere quindi con lo stop della sessione appena avviata e seguire le seguenti indicazioni.
Agendo da utente non privilegiato andiamo nella sua home dir con:
ryoma root # cd $HOME

Entrare quindi nella directory .vnc (nota: il . prima del nome di una directory o di un file vuol dire "nascoso” ed è visualizzabile solo con ls –la)
ryoma root # cd .vnc

Editare il file di configurazione con:
ryoma root # nano –w xstartup

Pagina 3 - Installazione VNC server - parte 2

L'output a video dovrebbe rispecchiare questa configurazione:
#!/bin/sh

[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
#xsetroot -solid grey
#xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
/usr/bin/fluxbox &

Fondamentalmente è nell'ultima riga che si specifica il window manager desiderato.
Procedere quindi al riavvio di vnc con:
ryoma root # vncserver
Verificare il numero di sessione e procedere quindi all'avvio del client VNC sulla macchina con sistema operativo Microsoft Windows; sarà necessario indicare indirizzo IP della GentooBox e numero di sessione.

Nel caso in esame sul server la sessione è la numero 1 mentre l'ip del server è 10.0.0.1. In vncviewer si dovrà digitare:
10.0.0.1:1

Una volta connessi al server verrà chiesta la password, dopodichè si avrà a disposizione lo scarno ma funzionale Fluxbox. Questo Windows Manager può essere personalizzzato in vari modi, la documentazione Gentoo in tal senso è abbondante ed esaustiva. Proponiamo qui di seguito uno screenshot di esempio.

Pagina 4 - Recupero dati con Raid1

Un sistema Raid 1 ha la prerogativa di tenere al sicuro i dati in caso di guasto ad un disco, qui di seguito descriveremo le poche ma essenziali fasi da compiere in caso di sostituzione di un hard disk danneggiato

Per queste operazioni è possibile usare il pacchetto mdadm, mentre a titolo esemplificativo si ipotizzi che il disco hde sia danneggiato. La prima operazione da effettuare riguarda la rimozione del disco dall'array con:
ryoma root # mdadm /dev/md0 –fail /dev/hde1 –remove /dev/hde1
ryoma root # mdadm /dev/md1 –fail /dev/hde2 –remove /dev/hde2
……………………………………………………………………...

In pratica vengono rimosse tutte le partizioni di hde da tutti i device mdX, fatto questo lanciare il comando:
ryoma root # cat /proc/mdstat

Il cui output dovrebbe essere:

Personalities : [raid1]
md1 : active raid1 hdg1[0]
1951808 blocks [2/1] [U_]
……………………………
……………………………
……………………………

L'array è ora costituito da un singolo disco (quello ancora funzionante ovviamente), spegnere la GentooBox e procedere alla sostituzione fisica del disco.
Dopo aver riavviato il sistema è necessario ripartizionare il nuovo disco con sfdisk come indicato nella prima puntata di questa guida, e infine aggiungere le partizioni del nuovo disco all'array con:
ryoma root # mdadm /dev/md0 –add /dev/hde1
ryoma root # mdadm /dev/md1 –add /dev/hde2
…………………………………………………
…………………………………………………

Verificare il riallineamento dell'array con entrambi i dischi usando il comando:
ryoma root # cat /proc/mdstat

L'ultima operazione per riparare il guasto prevede la reinstallazione di Grub nell' MBR, anche in questo caso vi rimandiamo alla prima puntata della guida dove sono state presentate e commentate le singole fasi.

Pagina 5 - Installazione server FTP

Un server FTP sulla GentooBox può rivelarsi assai utile per trasferire dati dall'esterno e rendere raggiungibile in modo sicuro il nostro sistema.
La scelta è caduta sul famoso e diffuso proftpd procedere quindi alla sua installazione:
ryoma root # emerge proftpd

Dopo aver terminato la fase di compilazione è necessario spostarsi nel file di configurazione che si trova nella directory:
ryoma root # cd /etc/proftpd/

Editare il file proftpd.conf con:
ryoma root # nano –w proftpd.conf

La configurazione ultraminimale può essere:

RootLogin off

Potrà risultare scarna e poco ottimizzata, ma assolve egregiamente allo scopo in esame. Per ulteriori informazioni è possibile fare riferimento alla man page o a qualche guida specifica disponibile online.
La fase successiva prevede l'aggiunta di proftpd al runlevel di default con :
ryoma root # rc-update add proftpd default

Procedere quindi all'avvio del server senza riavviare la macchina:
ryoma root # /etc/init.d/protftpd start

Con nmap localhost è possibile verificare se la porta ftp è aperta in ascolto:
ryoma root # nmap localhost
ryoma proftpd # nmap localhost

Starting nmap 3.81 ( http://www.insecure.org/nmap/ ) at 2005-07-04 11:01 Local time zone must be set--see zic manual page
Interesting ports on localhost (127.0.0.1):
(The 1653 ports scanned but not shown below are in state: closed)
PORT STATE SERVICE
21/tcp open ftp
22/tcp open ssh
80/tcp open http
139/tcp open netbios-ssn
443/tcp open https
445/tcp open microsoft-ds
3306/tcp open mysql
5901/tcp open vnc-1
6001/tcp open X11:1
10000/tcp open snet-sensor-mgmt

Nmap finished: 1 IP address (1 host up) scanned in 0.446 seconds

L'output precedente mostra che sul server di esempio la porta ftp è attiva, come anche quelle usate da vnc,ssh e samba.

Per accedere in ftp al server è sufficiente un client ftp (ne trovate alcuni nella nostra sezione download) o altrimenti potete utilizzare direttamente Internet Explorer.
ftp://indirizzo_ip_server

La guida alla realizzazione di una GentooBox per usi casalinghi termina qui, lasciando lo spazio per ulteriori migliorie e sperimentazioni al singolo utente. I possibili ambiti da esplorare possono essere quello del backup, della sicurezza, di un'eventuale connessione wi-fi o di un impiego multimediale del server.

Per tutti questi approfondimenti la documentazione è disponibile sul web grazie al lavoro fino ad ora compiuto dall'attivissima comunità Gentoo.