Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 11/07/2017, à 10:35

gotcha5832

Autoriser la connexion apache seulement depuis openvpn du meme serveur

Bonjour, à tous

J'ai un serveur sur lequel j'ai installé
Openvpn + Lamp

Je souhaite rendre accessible lamp que si il y a connexion via le vpn

Dans le Vhost j'ai mis:

<Directory /var/www/html>
    AllowOverride all
       Order Allow,Deny
       Allow from ip_vpn/serveur
       Deny from all
</Directory>

je me retrouve avec une 403

ip_local - - [11/Jul/2017:10:21:56 +0200] "GET / HTTP/1.1" 403 506 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:54.0) Gecko/20100101 Firefox/54.0"

Du coup lamp ne vois pas l'ip du vpn mais l'ip de poste
Pourtant https://www.dnsleaktest.com/ me donne bien l'ip de mon serveur

Hors ligne

#2 Le 11/07/2017, à 11:42

pires57

Re : Autoriser la connexion apache seulement depuis openvpn du meme serveur

Si ton poste de travail et ton serveur sont dans le même réseau c'est logique.
Je ne vois pas l'intérêt de bloquer ton site web en local.


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#3 Le 11/07/2017, à 11:48

gotcha5832

Re : Autoriser la connexion apache seulement depuis openvpn du meme serveur

Je pense que je me suis mal exprimé

C'est l'inverse je souhaite blocker à tout le monde l'acces au site web sauf si il se connect via le vpn

poste --> site = acces interdit
poste --> VPN --> site = acces autorisé

Sachan que j'ai essayé d'appeler direct localhost ou 127.0.0.1 mais je ne tombe pas sur le site pour autant

Dernière modification par gotcha5832 (Le 11/07/2017, à 12:32)

Hors ligne

#4 Le 11/07/2017, à 13:28

pires57

Re : Autoriser la connexion apache seulement depuis openvpn du meme serveur

Non tu ne m'as pas compris.
Si ton PC et ton serveur web sont dans le même réseau cela ne fonctionnera pas.
Le mieux c'est déjà de fournir le schéma réseau parce que la il y a plusieurs interprétation différentes possible.


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#5 Le 11/07/2017, à 14:46

gotcha5832

Re : Autoriser la connexion apache seulement depuis openvpn du meme serveur

non le pc et le serveur web ne sont pas dans le même sur le même sur physique
En revanche, le serveur VPN et le serveur apache sont sur la même machine et donc la même reseau

en d'autre terme

+----------------+   +-------------------+
|      PC        |   |      SERVER       |
|                |   |                   |
|                |   |       VPN         |
|                |   |                   |
|                |   |                   |
|                |   |       APACHE      |
+----------------+   +-------------------+
|        IP      |   |          IP       |
+----------------+   +-------------------+
| 1.43.XX.XX     |   | 148.292.XX.XX  |
+----------------+   +-------------------+

l'idée étant

+----------------+   +-------------------+
|      PC        |   |      SERVER       |
|                |   |                   |
|                |-->|       VPN         |
|                |   |          |        |
|                |   |          V        |
|                |   |       APACHE      |
+----------------+   +-------------------+

Ce qui me surprend c'est que
- si depuis mon poste j'appel l'url d'un domain que le gère sur un autre serveur je vois dans les logs un connexion depuis l'ip du serveur VPN
- si depuis mon poste j'appel l'ip du serveur pour acceder au site hebergé sur le serveur je vois dans les logs un connexion depuis l'ip du poste.

Comme si le VPN laissait passer la requete sans la traiter?

Edit:
en regardant de plus pret

sur un autre serveur
$_SERVER["REMOTE_ADDR"] = ip_server_vpn
$_SERVER['REMOTE_PORT'] = 54536

Sur le server openvpn+apache
$_SERVER['REMOTE_ADDR'] = ip_poste
$_SERVER['REMOTE_PORT'] = change à chaque appel

Dernière modification par gotcha5832 (Le 11/07/2017, à 18:04)

Hors ligne

#6 Le 12/07/2017, à 11:36

bruno

Re : Autoriser la connexion apache seulement depuis openvpn du meme serveur

Je ne comprend pas bien ce tu indiques. C'est quoi l'ip_poste ?

Admettons que ton VPN utilise la plage 192.168.0.0/24 (IP privées) et que ton serveur utilise 192.168.0.1 comme IP privée;

En principe ton "poste" se connecte au VPN et obtient une adresse IP privée. Ton serveur Apache qui est sur la même machine que ton serveur VPN répond donc directement à la requête provenant de cette IP privée.

Si ton "poste" connecté au VPN envoie une requête vers un autre serveur web X, c'est ton serveur VPN qui va transmettre la requête au serveur X via son IP publique.

Ainsi, ce que tu observes au niveau des logs me paraît tout à fait normal.



Si tu veux que ton serveur Apache ne réponde qu'aux requêtes provenant du VPN, tu peux n'autoriser que la plage d'IP de ton VPN :

allow from 192.168.0.0/24
deny from all

Ou mieux, faire en sorte qu'Apache ne soit en écoute que sur l'interface réseau du VPN (modifier ports.conf pour une configuration globale) :

Listen 192.168.0.1:80

Dernière modification par bruno (Le 12/07/2017, à 14:46)

Hors ligne

#7 Le 12/07/2017, à 14:14

gotcha5832

Re : Autoriser la connexion apache seulement depuis openvpn du meme serveur

Je te remercie

il fallais effectivement appeler apache via l'ip privé, hors je l'appelai sur l'ip public
(j'avais le soucis que je cherchais, hier aussi, au 192.168.0.1. mais un ifconfig m'a permis de me rendre compte quel l'ip privé étai 10.8.0.1)

en revanche j'ai lutter à bloquer tout sauf le vpn

le serveur à l'ip 10.8.0.1
le poste  à l'ip 10.8.0.6

J'ai tenté dans le  /etc/apache2/sites-enabled/000-default.conf

<VirtualHost 10.8.0.1:80>

Mais il répond à tout le monde

Puis un htaccess

 Order Allow,Deny
        Allow from 10.8.0.6 # Ou       Allow from 10.8.0.0/24
        Deny from All

Il bloque tout le monde

10.8.0.6 - - [12/Jul/2017:14:09:53 +0200] "GET / HTTP/1.1" 403 500 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:54.0) Gecko/20100101 Firefox/54.0"

et enfin

Order Deny,Allow
    Deny from all
    Allow from 10.8.0.0/24

Et là c'est bon

Hors ligne

#8 Le 12/07/2017, à 14:59

bruno

Re : Autoriser la connexion apache seulement depuis openvpn du meme serveur

bah, il fallait juste regarder la doc Apache… (curieusement je n'ai pas vu l'erreur dans ton premier message, honte à moi wink)

Avec :

Order allow,deny

allow est évalué en premier et deny en dernier. Donc si tu mets un « deny all » tu interdis tout, peu importe ce qu'il y a dans allow. C'est à utiliser dans le cas où tu autorises tout, puis tu interdis certaines IP par exemple.

Hors ligne