Istruzioni per il server Alessandro Bugatti (alessandro.bugatti@istruzione.it) 9 dicembre 2007 Introduzione Questa breve dispensa riassume brevemente le procedure per connettersi al server che ci permetterà di pubblicare le nostre pagine web all'interno della scuola. Il server quest'anno è un Pentium III a 1GHz con 192 Mb di RAM collegato alla rete mediante una scheda 10/100 Mb e che ha come indirizzo IP sso il 192.168.6.123 e il cui nome è winnie. Da un punto di vista software è installata la distribuzione Linux Ubuntu nella versione server, senza nessun terminale graco. I servizi attivi per la didattica sono il server Web, il server MySQL, il server ssh e il server ftp/sftp. Ogni alunno ha un proprio account con uno spazio disco limitato (quest'anno 40 MB), una cartella per la pubblicazione di siti web e un database MySQL. Dal lato applicativo è installato PHP 5 come linguaggio di scripting. Connessione tramite una shell Per connettersi al server verrà usato il programma putty, scaricabile gratuitamente alla pagina http://www.chiark.greenend.org.uk/~sgtatham/putty/ download.html. Il programma non ha bisogno di installazione e dopo averlo attivato mostrerà una schermata come quella mostrata in gura 1 1
Figura 1: Schermata iniziale di putty Nella casella Host name (or IP address) va inserito il nome dell'host o l'indirizzo IP del server (nell'esempio in gura si è messo l'indirizzo del nostro server come IP e non come nome in quanto non avendo la scuola un DNS interno non sarebbe in grado di risolverlo). Volendo poi connettersi tramite SSH va selezionato il radio button opportuno e se lo si desidera è possibile salvare i dati immessi in modo da non doverli ridigitare nelle connessioni future dando un nome alla connessione e schiacciando il tasto Save. A questo punto premendo Open apparirà una schermata e inserendo il proprio username e la propria password si arrivare a una schermata simile a quella di gura 2 Figura 2: Shell SSH Da questo punto si avrà accesso al server e si potrà notare che è presente 2
nella propria home una cartella public_html: i le contenuti all'interno di questa cartella saranno visibili attraverso il server web all'indirizzo http://192.168. 6.123/~username dove username è il proprio username. Utilizzo di MySQL Nell'installazione fatta sono state prese delle decisioni che mirano a rendere i servizi attivi il numero minore possibile per motivi di manutenzione e sicurezza del server. Per quanto riguarda MySQL si è scelto quindi di permettere la connessione solo in locale e non permettere di interfacciarsi sulla sua porta standard (la 3306) ad altre macchine che non siano localhost. Inoltre al momento, sempre per motivi di sicurezza, non è stata installata l'interfaccia web di amministrazione standard di MySQL, cioè phpmyadmin. Nella situazione attuale esistono quindi due possibilità per utilizzare il proprio database che ora andremo ad analizzare. Con il client a riga di comando Si può utilizzare il client mysql con la stessa modalità già vista per quanto riguarda la gestione del proprio database locale. Ovviamente per far ciò bisogna aprire una shell SSH e eseguire il client con la stringa di connessione corretta (non c'è nessuna dierenza da come viene fatto sotto Windows). Con MySQL Query Browser MySQL Query Browser è l'interfaccia graca gratuita fornita da MySQL AB, la ditta che sviluppa MySQL, per gestire i propri database MySQL. Non essendo possibile per quanto detto prima collegarsi direttamente al server da una macchina remota possiamo farlo creando un tunnel SSH sempre con l'ausilio di putty. In questo caso dobbiamo istruire putty per fargli creare il tunnel SSH ed è possibile farlo congurando opportunamente la sezione Tunnels come si vede in gura 3. 3
Figura 3: Tunnel SSH per MySQL Nella casella Source port va inserito il numero 3307 (in modo che non vada in conitto con un server locale eventualmente attivo) e nella casella Destination la stringa 127.0.0.1:3006 (che istruisce il tunnel ad aprire la porta 3306 in locale sul server). Una volta inseriti questi valori va premuto il pulsante Add e poi si torna nel pannello visto in precedenza per la connessione SSH e lo si compila allo stesso modo. Schiacciando Open si aprirà la connessione e verranno richieste username e password e dopo averle fornite si avrà una shell come in precedenza. Questa shell non va chiusa perchè gestirà la connessione attraverso il tunnel che verrà aperta da MySQL Query Browser. Figura 4: Connessione con MYSQL Query Browser A questo punto va eseguito MySQL Query Browser e nella schermata iniziale (vedi gura 4) vanno inseriti i propri dati: nella sezione Stored Connection va inserito un nome signicativo per memorizzare i dati, nel campo server host 4
l'indirizzo IP del server 192.168.6.123, nei campi username e password il proprio username e password del database e poi si preme il tasto OK (non specicando il campo schema apparirà una schermata di avviso che può essere tranquillamente ignorata). Se tutto è andato bene ci si dovrebbe trovare davanti a una schermata simile a quella mostrata in gura 5. Figura 5: Schermata di amministrazione di MySQL Query Browser Utilizzo del server FTP Il server FTP usato, vsftpd, è stato congurato per fornire due modalità di connessione: ftp anonimo esclusivamente il download di le sftp per avere accesso alla propria cartella e potervi leggere/scrivere le FTP anonimo Sia per quanto riguarda questa modalità che la successiva viene consigliato l'utilizzo del client open source FileZilla, reperibile all'indirizzo http://filezilla-project.org/ (anche se per l'ftp anonimo potrebbe essere utilizzato anche il browser). Dopo aver lanciato FileZilla selezionare nel menù File la voce Site Manager e comparirà una schermata come quella mostrata in gura 6. 5
Figura 6: Anonymous FTP Dopo aver schiacciato il pulsante Nuovo sito andrà compilata la schermata: alla voce Host va inserito il solito 192.168.6.123 e va selezionato il servizio FTP (il campo Porta si autocompila a seconda del servizio scelto) e come tipo di login va scelto Anonimo. Dopo aver salvato le impostazioni ci si può connettere premendo Connetti e apparirà una schermata come quella mostrata in gura 7. Figura 7: Schermata di connessione di FileZilla 6
SFTP Il protocollo SFTP permette di connettersi alla propria cartella utilizzando un canale sicuro, mettendo quindi al riparo dal rischio di vedersi intercettata la propria password e di farsi leggere i dati in transito. La procedura è la stessa vista per il server FTP, l'unica dierenza, come si può vedere dalla gura 8, sta nella scelta del servizio che stavolta sarà SFTP usando SSH2 e sarà necessario inserire il proprio account (è sconsigliato salvare la password, è meglio non indicarla in modo che sarà il programma a richiederla ad ogni tentativo di connessione). Figura 8: SFTP 7