A seguito di una recente re-installazione del sistema, non riesco più ad
utilizzare il server dall'esterno (funziona invece sia in localhost, sia
dalla rete interna 192.168.1.*)
Tentando di accedere da fuori, restituisce un 404.
Verifiche effettuate:
- La server signature presente nella pagina di errore è quella del server
giusto: non si tratta di un problema firewall o di un errore di tipo
"ho sbagliato macchina".
- Da root, netstat -tlp | grep "apache2" dice:
tcp6 0 0 [::]:www [::]:* LISTEN 3120/apache2
tcp6 0 0 [::]:81 [::]:* LISTEN 3120/apache2
(che è coerente con le impostazioni e che non sembra bloccare nulla
dall'esterno).
- Nell'unico "site" abiltato, i permessi Order allow/deny sono "Allow from
all" tranne per la directory /usr/share/doc (con accesso riservato ad IP
interni).
- Ho provato sia utilizzando come indirizzo l'host, sia utilizzando l'URL
di alcuni particolari file, quindi non è un'impostazione errata di
pagina indice.
Non so più dove andare a controllare. E la cosa che mi disorienta è che
l'errore restituito è un 404, e non un 403 o un'assenza di risposta (cose
che mi aspetterei in caso di impostazioni di sicurezza).
Qualcuno mi sa suggerire altre verifiche da fare, o cosa ci sia che non
va?
Grazie mille,
--
Lorenzo Breda
> Qualcuno mi sa suggerire altre verifiche da fare, o cosa ci sia che non
> va?
Dato che dici che da indirizzi locali funziona bene hai provato a
rimuovere la protezione per /usr/share/doc ?
Di tutto quello che dici è l'unico punto che fa differenza tra gli
indirizzi ip.
Uhm, mentre provavo a fare questo (senza apettarmi nulla, in teoria un
deny dovrebbe restituire un 403...) mi è venuta un'idea:
Come si vedeva nel mio primo post, il server risponde sia alla porta 80
che alla porta 81. Non ho specificato però (grave errore mio...) che
dall'esterno sono costretto ad accedere sulla 81 (motivi di port
forwarding: sulla 80 c'è un'altra macchina).
Ebbene, sulla 81, da dove accedo accedo, mi dà un 404.
La porta la ho aggiunta nel file ports.conf, che viene incluso nella
configurazione principale, è che è lo stesso file che contiene il dato
sulla porta 80.
Il file dice
Listen 80
Listen 81
<IfModule mod_ssl.c>
Listen 443
</IfModule>
A questo punto, guardando anche il file che configura la DocumentRoot,
noto (stupidissimamente non lo ho fatto prima) che inizia con un bel:
<VirtualHost *:80>
il quale, sostituito con
<VirtualHost *:80 *:81>
ovviamente funziona a meraviglia.
Ma dico, mi può sfuggire la _prima riga_ di un file di configurazione?!?
=_=
Grazie mille per l'aiuto!!
--
Lorenzo Breda
Uhm, mentre provavo a fare questo (senza apettarmi nulla, in teoria un
> Grazie mille per l'aiuto!!
Quale? :-)
Bè... Se non fossi andato a riguardarmi quel file, starei ancora a
chiedermi che fare...
Uhm, quindi il default per la directory di root deve essere /www...
Nella precedente installazione (in cui sono certo di aver aggiunto la
porta senza cambiare altro) la root era /www, ora invece è /var/www (che
è un symlink) mentre /www esiste e non contiene index.
Wow, non me l'aspettavo. Mi sarei aspettato o /var/www o un 500.
--
Lorenzo Breda