1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server...

14
1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web ad utenti singoli Proteggere directory singole con password Personalizzare le pagine di errore Usare favicon Analizzare i log di accesso PHP-Nuke...?

Transcript of 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server...

Page 1: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

1

Amministrazione della rete: web server Apache

Introduzione al server HTTP

Installare il server

Impostare un server web pubblico

Assegnare directory web ad utenti singoli

Proteggere directory singole con password

Personalizzare le pagine di errore

Usare favicon

Analizzare i log di accesso

PHP-Nuke...?

Amministrazione di una rete mista Windows-Linux

La necessità di coesistenza in una LAN di workstation con differenti sistemi

operativi, tipicamente Linux/Unix e Windows, che devono condividere file e

stampanti, fornire servizi di autentificazione Windows e accessi peer to peer

viene reso disponibile tramite Samba.

Samba è un software che consente ai sistemi Unix di accedere ai dati esportati

via rete tramite il protocollo CIFS/SMB, di esportare e importare dati verso reti

Windows.

Page 2: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

Amministrazione della rete: web server Apache

Introduzione al server HTTP

Un server web risponde alle richieste dei client inviando le pagine

richieste; per fornire il servizio rimane in ascolto solitamente sulla porta

80 (http) e 443 (https)

Apache è il server web più diffuso al mondo, nella sua versione 1.3.

La nuova versione 2.0 è una evoluzione significativa; più veloce,

efficiente e scalabile ma i moduli della versione precedente non

funzionano senza ricompilazione o riscrittura (il modulo più problematico

è PHP)

Page 3: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

Amministrazione della rete: web server Apache

Installare il server

Da Fedora è possibile tramite interfaccia grafica:

Page 4: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

Amministrazione della rete: web server Apache

Installare il server

Scaricare il sorgente da www.apache.org; la versione stabile è la 2.0.54.

Decomprimerlo in una directory e lanciare ./configure, make e

make install

Avviare il server con apachectl start

Fermare il server con apachectl stop

Riavviare il server con apachectl restart

Gli sviluppatori sconsigliano di utilizzare il vecchio nome httpd per

operazioni di gestione del server

Page 5: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

Amministrazione della rete: web server Apache

Impostare un server web pubblico

La directory di default in cui inserire i documenti da pubblicare è

/var/www/html;

è possibile specificare una qualsiasi altra directory specificandola nel file

di configurazione /etc/httpd/conf/httpd.conf modificando la riga

DocumentRoot /directory/e_o_sottodirectory

Riavviare il server con apachectl restart

Page 6: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

Amministrazione della rete: web server Apache

Assegnare directory web ad utenti singoli

Si vuole dare agli utenti la possibilità di disporre di una propria directory

web personale, raggiungibile tramite www.dominio.sito/~utente.

Creare le directory degli utenti nella posizione desiderata, ad

esempio /var/www/users, e una sottodirectory per ogni utente.

Gli utenti dovrebbero avere un file indice nella loro directory.

Modificare il file httpd.conf aggiungendo la voce

UserDir /var/www/users

Riavviare Apache

Page 7: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

Amministrazione della rete: web server Apache

Proteggere directory singole con password

Si vuole limitare l’accesso alle pagine solo agli utenti autorizzati.

La gestione delle autorizzazioni avviene in due parti:

la creazione di una selezione <Directory> in httpd.h

la creazione di un file password con htpasswd

I metodi di sicurezza utilizzati da Apache sono Basic, che invia le

password in chiaro, e Digest che usa un hash MD5.

Digest è supportato solo Mozilla

Page 8: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

Amministrazione della rete: web server Apache

Proteggere directory singole con password

Sezione <Directory>

<Directory /shared/primo> directory da proteggere

AuthType Basic tipo autenticazione

AuthName "Utente primo" descrizione nel login

AuthUserFile /etc/httpd/passwords path della pw

Require user matteo utente accreditato

</Directory>

Page 9: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

Amministrazione della rete: web server Apache

Proteggere directory singole con password

Creazione password

# htpasswd -c /etc/httpd/passwords matteo

New password:

Re-type new password:

Adding password for user matteo

-c crea il file userid password

Per far accedere altri utenti alla stessa pagina utilizzare il comando htpasswd

senza -c e modificare la direttiva Require user in Require valid-user

Page 10: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

Amministrazione della rete: web server Apache

Personalizzare le pagine di errore

Si desidera che la pagina di errore restituita in caso, ad esempio, di link

non disponibile, sia coerente con lo stile del sito.

La directory /var/www/error contiene le pagine di errore standard.

Creare la nuova pagina, 404-mia.html ad esempio, e impostare la

direttiva ErrorDocument nel file di configurazione affinché punti alla

pagina modificata.

ErrorDocument 404 /error/404-mia.html

Page 11: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

Amministrazione della rete: web server Apache

Usare icone personalizzate

Si vogliono fare comparire icone personalizzte sulla barra dell’indirizzo o

nelle voci dei bookmark.

Occorre creare un file favicon.ico di 16x16 pixel a 16 colori, ad

esempio con Gimp, Babygimp, Kiconedit.

Copiare il file nella root della directory che pubblica i documenti e

aggiungere al file httpd.conf la voce:

AddType image/x-icon.ico

Poi nella sezione <head> delle pagine html

<link rel=icon href=”/favicon.ico” type=”image/x-icon”>

<link rel=”shortcut icon href=”/favicon.ico” type=”image/x-icon”>

Page 12: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

Amministrazione della rete: web server Apache

Analizzare i log di accesso

Webalizer crea automaticamente pagine HTML contenenti grafici e link dal file

access_log.

Il logfile viene aggiornato dal sistema in /etc/httpd/logs/

Per creare le pagine occorre lanciare il comando

webalizer /etc/httpd/logs/access_log

Per visualizzare il risultato ipertestuale, digitare nella barra dell’indirizzo del

browser /var/www/usage/index.html

Per verificare e/o configurare i percorsi corretti controllare le seguenti voci del file

/etc/webalizer.conf

Page 13: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

Amministrazione della rete: web server Apache

Per verificare e/o configurare i percorsi corretti controllare le seguenti voci del file

/etc/webalizer.conf

LogFile /etc/httpd/logs/access_log

OutputDir /var/www/webalizer

HistoryName /var/www/webalizer/webalizer.hist

Page 14: 1 Amministrazione della rete: web server Apache Introduzione al server HTTP Installare il server Impostare un server web pubblico Assegnare directory web.

Amministrazione della rete: web server Apache

PHP – Nuke