IPTABLES Connexion loopback
Fermé
champigland
Messages postés
20
Date d'inscription
dimanche 21 février 2010
Statut
Membre
Dernière intervention
20 mars 2013
-
19 mars 2013 à 15:06
cocoche95 Messages postés 1134 Date d'inscription jeudi 29 juillet 2004 Statut Contributeur Dernière intervention 27 novembre 2019 - 20 mars 2013 à 21:08
cocoche95 Messages postés 1134 Date d'inscription jeudi 29 juillet 2004 Statut Contributeur Dernière intervention 27 novembre 2019 - 20 mars 2013 à 21:08
Bonjour à tous,
J'ai actuellement un serveur web en interne avec une IP de type 192.168.1.x, j'ai sur mon routeur ajouter les règles permettant le nat du port 80 pour qu'il soit bien accessible en externe. Cependant j'aimerais que l'on puisse accéder à mon serveur en interne avec son ip externe. (Ne me dites pas d'utiliser l'ip interne :))
Lorsque je tente d'accéder au serveur avec son ip externe depuis le réseau interne, pour le moment je reste bloqué sur le serveur web du routeur(Normal aucune redirection).
Si quelqu'un sait comment configurer iptables pour autoriser ça ..
J'ai actuellement un serveur web en interne avec une IP de type 192.168.1.x, j'ai sur mon routeur ajouter les règles permettant le nat du port 80 pour qu'il soit bien accessible en externe. Cependant j'aimerais que l'on puisse accéder à mon serveur en interne avec son ip externe. (Ne me dites pas d'utiliser l'ip interne :))
Lorsque je tente d'accéder au serveur avec son ip externe depuis le réseau interne, pour le moment je reste bloqué sur le serveur web du routeur(Normal aucune redirection).
Si quelqu'un sait comment configurer iptables pour autoriser ça ..
A voir également:
- Iptables loopback
- Loopback proxy ✓ - Forum Virus
- Samba iptables ✓ - Forum Debian
- Loopback pseudo-interface 1 - Forum Réseau
- Iptables igmp - Forum Linux / Unix
- Pterodactyl iptables - Forum Ubuntu
4 réponses
mamiemando
Messages postés
33475
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
22 janvier 2025
7 815
19 mars 2013 à 19:40
19 mars 2013 à 19:40
En fait je pense que la question est mal formulée. Dans l'idée un serveur web n'a pas une IP, à la rigueur tu as un serveur qui écoute sur un port (par exemple 80) et sur une interface réseau particulière (par exemple 127.0.0.1, 192.168.1.10, 0.0.0.0, etc.).
Cette adresse (appelée bind-address) indique sur quelle interface le trafic écoute du trafic
- 127.0.0.1 : trafic local à la machine (en IPv4, 127.0.0.1 désigne "soi-même")
- 192.168.1.10 : trafic venant (uniquement) de l'interface 192.168.1.10
- 11.22.33.44 : trafic venant (uniquement) de l'interface 11.22.33.44
- 0.0.0.0 : trafic venant de n'importe quelle interface réseau
Cette notion est indépendante du type de serveur (et donc ceci s'applique que l'on parle d'un serveur ssh, apache, mysql ou autre)
Si tu utilises apache2 et que tu n'es pas familier avec la configuration d'apache, je t'invite au préalable à lire ceci :
http://www.mistra.fr/tutoriel-linux-serveur-web-apache2.html
Sous apache l'adresse "0.0.0.0" est notée "*" ce qui donnerait pour configurer un virtual host accessible depuis n'importe quelle interface réseau un bloc du genre :
Une fois le vhost configuré, vérifie qu'il est ajouté (a2ensite) et relance apache (service apache2 restart)
Bonne chance
Cette adresse (appelée bind-address) indique sur quelle interface le trafic écoute du trafic
- 127.0.0.1 : trafic local à la machine (en IPv4, 127.0.0.1 désigne "soi-même")
- 192.168.1.10 : trafic venant (uniquement) de l'interface 192.168.1.10
- 11.22.33.44 : trafic venant (uniquement) de l'interface 11.22.33.44
- 0.0.0.0 : trafic venant de n'importe quelle interface réseau
Cette notion est indépendante du type de serveur (et donc ceci s'applique que l'on parle d'un serveur ssh, apache, mysql ou autre)
Si tu utilises apache2 et que tu n'es pas familier avec la configuration d'apache, je t'invite au préalable à lire ceci :
http://www.mistra.fr/tutoriel-linux-serveur-web-apache2.html
Sous apache l'adresse "0.0.0.0" est notée "*" ce qui donnerait pour configurer un virtual host accessible depuis n'importe quelle interface réseau un bloc du genre :
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www <Directory /> # Accès autorisé si l'IP du client est autorisée (Allow) # ET pas rejetée (Deny) Order Deny,Allow # On limite l'accès à tout le monde Deny from all # On n'active aucune option. Options None AllowOverride None </Directory> <Directory /var/www/> AllowOverride None # Accès autorisé si l'IP du client est autorisée (Allow) # OU pas rejetée (Deny) Order Allow,Deny Allow from all # Désactiver l'option permettant le parcours d'un répertoire Options -Indexes # Désactiver l'option permettant apache de suivre des liens # symboliques (qui pourrait permettre de quitter /var/www) Options -FollowSymLinks # Désactiver l'option permettant apache de faire des inclusions # côté serveur Options -Includes # Désactiver l'option permettant à apache l'utilisation de # scripts CGI (si on n'utilise pas de script CGI !) Options -ExecCGI Options MultiViews </Directory> # Empêcher le téléchargement des fichiers dont le nom commence # par ".ht" (.htaccess ...) AccessFileName .httpdoverride <Files ~ "^\.ht"> Order allow,deny Deny from all Satisfy All </Files> ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Une fois le vhost configuré, vérifie qu'il est ajouté (a2ensite) et relance apache (service apache2 restart)
Bonne chance
champigland
Messages postés
20
Date d'inscription
dimanche 21 février 2010
Statut
Membre
Dernière intervention
20 mars 2013
1
20 mars 2013 à 13:53
20 mars 2013 à 13:53
Bonjour,
Tout d'abord, merci de ta réponse.
Mon serveur apache est bien configuré, il écoute bien sur toutes ses interfaces.
Le serveur apache n'est pas le firewall je tiens à préciser et le problème est bien lié au firewall avec ses règles de filtrage.
Je n'ai pas plus d'infos pour le moment, je suis toujours bloqué dessus.
Merci.
Tout d'abord, merci de ta réponse.
Mon serveur apache est bien configuré, il écoute bien sur toutes ses interfaces.
Le serveur apache n'est pas le firewall je tiens à préciser et le problème est bien lié au firewall avec ses règles de filtrage.
Je n'ai pas plus d'infos pour le moment, je suis toujours bloqué dessus.
Merci.
mamiemando
Messages postés
33475
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
22 janvier 2025
7 815
20 mars 2013 à 19:31
20 mars 2013 à 19:31
Le serveur apache n'est pas le firewall je tiens à préciser et le problème est bien lié au firewall avec ses règles de filtrage.
Pas compris cette phrase, mais tu peux peut-être nous donner le résultat de netstat -ntlp et le contenu de tes iptables...
Bonne chance
Pas compris cette phrase, mais tu peux peut-être nous donner le résultat de netstat -ntlp et le contenu de tes iptables...
Bonne chance
cocoche95
Messages postés
1134
Date d'inscription
jeudi 29 juillet 2004
Statut
Contributeur
Dernière intervention
27 novembre 2019
543
Modifié par cocoche95 le 20/03/2013 à 21:08
Modifié par cocoche95 le 20/03/2013 à 21:08
Salut,
Quand tu dis "Cependant j'aimerais que l'on puisse accéder à mon serveur en interne avec son ip externe." -> quel est l'intérêt, t'as pas du DNS ?
Sinon sur ton iptables entre la commande suivante : 'iptables -t nat -A PREROUTING -d ip_serv_ext -i eth_interne -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.x:80'
Voilà.
Quand tu dis "Cependant j'aimerais que l'on puisse accéder à mon serveur en interne avec son ip externe." -> quel est l'intérêt, t'as pas du DNS ?
Sinon sur ton iptables entre la commande suivante : 'iptables -t nat -A PREROUTING -d ip_serv_ext -i eth_interne -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.x:80'
Voilà.