#1 Le 13/02/2008, à 10:44
- f1rgc
[resolu] Limiter l'accès à apache à une unique classe d'adresses
Bonjour,
Je viens de monter un petit serveur apache2.
Mon problème est le suivant : comment faire en sorte que seule une classe d'adresses (privée) puisse se connecter à ce serveur ?
Ou inverssement, comment faire en sorte que personne ne puisse se connecter à l'exeception d'une classe d'adresse spécifique...
D'avance merçi de vos réponses.
A+ Philippe F1rgc
Dernière modification par f1rgc (Le 12/03/2008, à 10:29)
Hors ligne
#2 Le 13/02/2008, à 11:04
- i M@N
Re : [resolu] Limiter l'accès à apache à une unique classe d'adresses
Hello.
Avec un .htaccess :
order allow,deny
deny from all
#localhost
allow from 127.0.0.1
#toutes les ips sur 198.168.1*
allow from 198.168.1
@+...
Dernière modification par i M@N (Le 13/02/2008, à 11:04)
1 x Intel(R) Core i7 2600K CPU 3.4GHz Debian sid = roxX !
1 x MSi Wind U100 Debian sid = roxX !!
Read The F***in' Manual or die tryin' !
webmaster @ http://www.rastavibes.net reggae shop
Hors ligne
#3 Le 14/02/2008, à 00:40
- f1rgc
Re : [resolu] Limiter l'accès à apache à une unique classe d'adresses
Merci IM@N,
Mais où dois-je placer ce .htaccess ?
Dans mon var/www/ ou dans le apache2.conf ?
D'avance merçi de ton aide.
Philippe
Hors ligne
#4 Le 14/02/2008, à 00:45
- HymnToLife
Re : [resolu] Limiter l'accès à apache à une unique classe d'adresses
Ou tout simplement changer le Listen pour que le serveur n'écoute que sur l'IP locale...
- Rodrigue, as-tu du cœur ?
- Non, mais j'ai du pique !
Hors ligne
#5 Le 14/02/2008, à 10:18
- i M@N
Re : [resolu] Limiter l'accès à apache à une unique classe d'adresses
Hello.
Le .htaccess se place dans le dossier auquel tu veux appliquer sa configuration. il est récursif : tous ses sous-dossiers héritent de cette configuration.
@+...
1 x Intel(R) Core i7 2600K CPU 3.4GHz Debian sid = roxX !
1 x MSi Wind U100 Debian sid = roxX !!
Read The F***in' Manual or die tryin' !
webmaster @ http://www.rastavibes.net reggae shop
Hors ligne
#6 Le 14/02/2008, à 10:51
- Martopioche
Re : [resolu] Limiter l'accès à apache à une unique classe d'adresses
Heu... A titre de précision, si tu a la main sur ton serveur, il est conseillé de configurer ces accès dans le apache2.conf. Le .htaccess n'est à utiliser que si tu n'a pas accès à ce fichier.
Pour les instructions par contre, désolé je ne les ai pas sous la main.
Hors ligne
#7 Le 20/02/2008, à 15:00
- f1rgc
Re : [resolu] Limiter l'accès à apache à une unique classe d'adresses
Bonjour à toutes et à tous,
De retour après quelques jours de congés je viens de prendre connaissance de vos messages.
D'abord un grand merci.
Cependant si j'ai bie ncompris, il vaut mieux que je configure la chose dans le fichier de configuration d'apache.
Dans ce cas, on me parle de "Listen"...
Quelle instruction dois-je ajouter pour par exemple autoriser uniquement l'accès à l'adresse 10.11.25.* ?
Philippe f1rgc:|
Hors ligne
#8 Le 21/02/2008, à 16:46
- wblitz
Re : [resolu] Limiter l'accès à apache à une unique classe d'adresses
Il faut que tu modifies le fichier de configuration du vhost associé au site dont tu veux limiter l'accès (par exemple /etc/apache2/sites-available/default pour le vhost par défaut)
Il faut modifier la directive '<Directory>' de manière à indiquer que tu ne veux donner accès (au répertoire concerné) qu'aux adresses du range 10.11.25.0 (et les adresses locales de la machine, ça peut être utile) Par exemple :
<Directory "/var/www/">
# on ignore les éventuels .htaccess
AllowOverride None
# on suit les liens symboliques et on affiche l'index par défaut
Options FollowSymLinks Indexes
#####################################
Order deny,allow
Deny from all
Allow from 127.0.0.1 <ip(s) du serveur> 10.11.25.0/24
#####################################
</Directory>
Les lignes entrent les '#####' limitent l'accès au serveur (localement) et au range d'adresse que tu veux. Attention cependant, cela s'appliquera pour tout le répertoire '/var/www/'.
Si tu as plusieurs vhosts, il faut faire la modification sur chacun d'eux.
Dernière modification par wblitz (Le 21/02/2008, à 16:48)
"Un optimiste, c'est un homme qui plante deux glands et qui s'achète un hamac" - Jean de Lattre de Tassigny
Pensez à mettre [RÉSOLU] dans le sujet de vos posts une fois qu'ils le sont...
quelques docs
Hors ligne
#9 Le 21/02/2008, à 16:49
- f1rgc
Re : [resolu] Limiter l'accès à apache à une unique classe d'adresses
Merci Vblitz,
Je vais essayer cela tout de suite.
De mémoire il y a aussi une possibilité avec l'instruction "listen" il me semble ?
Aurais-tu des infos à me communiquer sur Listen ?
Philippe F1rgc
Hors ligne
#10 Le 21/02/2008, à 19:11
- wblitz
Re : [resolu] Limiter l'accès à apache à une unique classe d'adresses
en fait Listen sert à spécifier les ports et les ip sur lesquelles écoutent ton serveur web.
'Listen 80' indique que le serveur écoutera sur le port 80 de toutes les interfaces de la machine.
si la machine a plusieurs ip et que tu veux mettre un serveur en place sur cette adresse ip mais sur un port "exotique", tu utilises : 'Listen <adresse ip>:<port>' (par exemple 192.168.1.10:8081)
tu peux soit mettre les lignes dans /etc/apache2/apache2.conf directement ou bien dans /etc/apache2/ports.conf (il faut vérifier que le fichier est bien inclus par la conf apache : Include /etc/apache2/ports.conf dans apache2.conf)
en gros, si tu n'as qu'un seul site, 'Listen 80' est suffisant. Si tu veux mettre en place le SSL, il faudra aussi ajouter 'Listen 443' (port par défaut pour les connexions https)
en espérant t'avoir éclairé
"Un optimiste, c'est un homme qui plante deux glands et qui s'achète un hamac" - Jean de Lattre de Tassigny
Pensez à mettre [RÉSOLU] dans le sujet de vos posts une fois qu'ils le sont...
quelques docs
Hors ligne
#11 Le 22/02/2008, à 23:07
- f1rgc
Re : [resolu] Limiter l'accès à apache à une unique classe d'adresses
Merci Wblitz,
Avec ça je me suis débrouillé comme un chef.
Si à chaque fois j'obtenai des réponses si claires et précises...
Un grand meci donc.
A + Philippe F1rgc
Hors ligne
#12 Le 22/02/2008, à 23:27
- wblitz
Re : [resolu] Limiter l'accès à apache à une unique classe d'adresses
pas de quoi
mais pense à mettre [résolu] dans le sujet de ton post (enfin si ça l'est complètement )
"Un optimiste, c'est un homme qui plante deux glands et qui s'achète un hamac" - Jean de Lattre de Tassigny
Pensez à mettre [RÉSOLU] dans le sujet de vos posts une fois qu'ils le sont...
quelques docs
Hors ligne
#13 Le 22/02/2008, à 23:51
- HymnToLife
Re : [resolu] Limiter l'accès à apache à une unique classe d'adresses
en fait Listen sert à spécifier les ports et les ip sur lesquelles écoutent ton serveur web.
'Listen 80' indique que le serveur écoutera sur le port 80 de toutes les interfaces de la machine.
si la machine a plusieurs ip et que tu veux mettre un serveur en place sur cette adresse ip mais sur un port "exotique", tu utilises : 'Listen <adresse ip>:<port>' (par exemple 192.168.1.10:8081)tu peux soit mettre les lignes dans /etc/apache2/apache2.conf directement ou bien dans /etc/apache2/ports.conf (il faut vérifier que le fichier est bien inclus par la conf apache : Include /etc/apache2/ports.conf dans apache2.conf)
en gros, si tu n'as qu'un seul site, 'Listen 80' est suffisant. Si tu veux mettre en place le SSL, il faudra aussi ajouter 'Listen 443' (port par défaut pour les connexions https)
en espérant t'avoir éclairé
Pour compléter un peu, l'avantage de passer par Listen plutôt que faire des "Allow, Deny" dans la config, c'est qu'il n'y aura qu'une directive à modifier pour "limiter" le serveur au réseau privé.
Par exemple, si ton réseau privé est 192.168.0.0/24 et que l'IP locale de ton serveur est 192.168.0.5, tu mets tout simplement Liste 192.168.0.5:80 et ton serveur ne sera accessible que depuis les autres adresses en 192.168.0.x, pas depuis l'extérieur.
Deuxième avantage, les clients qui voudront se connecter de l'extérieur auront un "Connexion refusée" (comme s'il n'y avait pas de serveur, comme le serveur ne les "écoute" pas), et pas une erreur 403.
- Rodrigue, as-tu du cœur ?
- Non, mais j'ai du pique !
Hors ligne