PDA

Visualizza la versione completa : apache sicurezza


alkat
16-01-2005, 15:29
ciao,
una domanda semplice semplice. se io uso apache e ho sistemato così ports.conf:


Listen 127.0.0.1:80

significa che apache non comunica in alcun modo con il mondo esterno?

a me serve solo per testare siti web in locale e quindi non voglio che sia accessibile dall'esterno e voglio ovviamente limitare rischi di sicurezza.

:ciauz:
.a.

Boromir
16-01-2005, 15:34
beh la logica di protezione di un web server è quella di utilizzare una DMZ con reverse proxy , quindi per una connessione diretta con il web devi accettare i rischi. Cmq un buon modo di proteggere la macchina è quella di mettere un bel firewall davanti ( o dietro dipende da come la si guarda :) ) .

alkat
16-01-2005, 15:39
mi piace di più vista da dietro...


:)


non è che abbia capito un granché di quello che mi hai scritto... :fagiano: potresti essere un po' più chiaro?

io comunque non voglio che apache sia visibile dal web.

thanks,
.a.

nik600
16-01-2005, 16:00
io comunque non voglio che apache sia visibile dal web.


questo dipende dalla tua rete, da come esci e se viene fatto un NAT sulla porta 80 del server web, oppure se addirittura il server web ha un indirizzo ip statico pubblico riservato, eventualmente come ti ha già detto boromir basta chiudere la porta 80 sul firewall!

come ulteriore controllo puoi modificare httpd.conf nel seguente modo:



<Directory "/path_to/documentroot">

#
# This may also be "None", "All", or any combination of "Indexes",
# "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews".
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
Options Indexes FollowSymLinks MultiViews

#
# This controls which options the .htaccess files in directories can
# override. Can also be "All", or any combination of "Options", "FileInfo",
# "AuthConfig", and "Limit"
#
AllowOverride None

#
# Controls who can get stuff from this server.
#
Order allow,deny

deny from all
allow from 127.0.0.1

</Directory>


quello in grassetto è quello che devi aggiungere, significa nega l'accesso a tutti tranne che a localhost

:ciauz:

alkat
16-01-2005, 16:10
Originariamente inviato da nik600
questo dipende dalla tua rete, da come esci e se viene fatto un NAT sulla porta 80 del server web, oppure se addirittura il server web ha un indirizzo ip statico pubblico riservato, eventualmente come ti ha già detto boromir basta chiudere la porta 80 sul firewall!

La porta 80 non è quella che permette la navigazione in internet?



come ulteriore controllo puoi modificare httpd.conf nel seguente modo:



<Directory "/path_to/documentroot">

#
# This may also be "None", "All", or any combination of "Indexes",
# "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews".
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
Options Indexes FollowSymLinks MultiViews

#
# This controls which options the .htaccess files in directories can
# override. Can also be "All", or any combination of "Options", "FileInfo",
# "AuthConfig", and "Limit"
#
AllowOverride None

#
# Controls who can get stuff from this server.
#
Order allow,deny

deny from all
allow from 127.0.0.1

</Directory>


quello in grassetto è quello che devi aggiungere, significa nega l'accesso a tutti tranne che a localhost

:ciauz:


tradotto in debianese, dove http.conf non esiste ma c'è apache2.conf dove sta quella riga?

ero convinto di ottenere lo stesso risultato modificando ports.conf come ho descritto più su, non è così?

.a.

nik600
16-01-2005, 17:31
la porta 80 in entrata, si intende

quando tu navighi ti colleghi alla porta 80 DEL SERVER su cui sta il sito, ma la tua macchina usa un'altra porta x comunicare se vuoi capirlo bene dai un netstat e guardati le varie connessioni da chi verso chi ecc ecc

a mente non so dirti dove sta, è la sezione in cui si setta la document root.... fai un search all'interno del file! :fagiano:

:ciauz:

Boromir
16-01-2005, 17:52
il deny/allow come il listen sono sicurezze parziali e a doppio taglio.
Se quel server deve essere visto dall'esterno o anche solo da una macchina diversa da lui stessa non puoi metterlo in ascolto sulla loop o localhost !!!!!
Se davanti hai un firewall te la cavi con un port-forwarding .
man iptables

nik600
16-01-2005, 18:52
be...nel caso in cui dovesse abilitare un'altra macchina può sempre fare:



deny from all
allow from 127.0.0.1 x.x.x.x


dove x.x.x.x è l'ip dell'altra macchina! logico...non è una soluzione dinamica...

Loading