Pages : 1
#1 Le 02/08/2021, à 18:48
- gringo1er
Accès externe à mon serveur LAMP via IPv6 et SSL
Bonjour à tous.
Jusqu'à il y a peu, je disposais d'un accès direct à mon serveur LAMP via un nom de domaine et ssl associé car je disposais d'une adresse IPv4 fixe. Le DNS disposait d'un enregistrement de type A pointant sur l'IP externe de la box, et une règle nat pointait le port SSL vers le serveur.
Tout roulait jusqu'à ce que mon fournisseur internet au carré rouge (c'est le seul à fournir la fibre) a décidé d'économiser les IPv4 en les partageant, passant l'IPv4 en CG-NAT. Et le menu NAT a disparu de la box.
La hotline réputée très compétente n'a évidemment rien compris à mon problème, Je leur parle de rollback, d'IPv4 full stack... rien ne rentre dans leurs fiches réflexe, je parle chinois. Je leur demande de me donner la plage de ports qui m'est attribuée, et le retour du menu NAT, je suis passé du chinois à l'hébreu.
Mais c'est soit la fibre gigabit "carré rouge", soit l'adsl à 4Mb/s ailleurs...
Reste l'IPv6 qui, elle, est fixe.
Du coup, j'ai déclaré l'IPv6 de la box dans mon DNS de domaine, en type AAAA.
Via l'interface de la box, menu IPv6, point de nat, mais firewall qui fait les mêmes fonctions. J'ai autorisé l'accès IPv6 toute source au port https, et connecté à l'adresse IPv6 de mon serveur, fixe aussi.
Sans rien toucher à la configuration apache2.4, l'accès https://nomdedomaine.com fonctionne... quand je reste dans le réseau local. Le lien DNS<=> IPv6 box <=> IPv6 serveur fonctionne dans ce cas, vu que l'url est interprêtée.
Mais quand je veux accéder de l'extérieur, pas d'accès.
Je me dis qu'il y a un truc à faire sur l'écoute des ports par le serveur apache.
Et là, je sèche.
J'ai ajouté un Listen [adresseIPv6]:80 dans le fichier ports.conf pour au moins tester l'accès en http, mais le reload du service plante.
Je sèche donc, je touche du doigt une possibilité, mais on arrive aux limites de ce que je sais faire.
Voici ma conf ports.conf
NameVirtualHost *:80
Listen 80
# NameVirtualHost [adresseIPv6Serveur]:80
# Listen [adresseIPv6Serveur]:80
<IfModule ssl_module>
Listen 443
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
</IfModule>
J'ai # ce qui fait planter ma conf
Je suis donc preneur de toute orientation: que faire pour rendre mon serveur accessible en ssl et IPv6? Dans le fichier ports.conf? Ou dans le fichier de virtualhost du site hébergé? Je sèche
Merci!
Hors ligne
#2 Le 03/08/2021, à 08:48
- bbtux2
Re : Accès externe à mon serveur LAMP via IPv6 et SSL
Bonjour,
Du coup, j'ai déclaré l'IPv6 de la box dans mon DNS de domaine, en type AAAA.
Assure toi que l'IPv6 de ton serveur soit bien fixe.
root@omega:~# ip address
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
4: enx001e06300937: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:1e:06:30:09:37 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.100/24 brd 192.168.0.255 scope global dynamic noprefixroute enx001e06300937
valid_lft 34399sec preferred_lft 34399sec
inet6 2a01:2020:195:1040:cdaf:219b:207e:d823/64 scope global noprefixroute [b]Pas de dynamic[/b]
valid_lft forever preferred_lft forever
inet6 2a01:2020:195:1040:89db:6067:6ec7:b31f/64 scope global dynamic noprefixroute
valid_lft 85926sec preferred_lft 85926sec
inet6 fe80::2692:7667:d36:5366/64 scope link noprefixroute
valid_lft forever preferred_lft forever
root@omega:~#
Du coup, j'ai déclaré l'IPv6 de la box dans mon DNS de domaine, en type AAAA.
Déclare l'IPv6 fixe de ton serveur dans le DNS (celle ou il n'y a pas marqué dynamic dans mon exemple).
Dans une console, tape dig tonserveur.example
- Depuis ton réseau local
- Depuis l'extérieur (Ou via un accés internet par ton tèl portable)
bruno@lea:~$ dig omega.ducouet.fr
; <<>> DiG 9.16.15-Debian <<>> omega.ducouet.fr
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 52863
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1472
;; QUESTION SECTION:
;omega.ducouet.fr. IN A
;; ANSWER SECTION:
omega.ducouet.fr. 48593 IN A 82.64.127.18
;; Query time: 16 msec
;; SERVER: 192.168.0.254#53(192.168.0.254)
;; WHEN: mar. août 03 09:28:54 CEST 2021
;; MSG SIZE rcvd: 61
SERVER te donne le serveur DNS qui répond à ta requête.
Tu peut essayer de pinger ton serveur voir s'il est joignable.
exemple de config apache :
root@omega:~# cat /etc/apache2/sites-enabled/010-omega-le-ssl.conf
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerName omega.ducouet.fr
ServerAdmin xxx@xxx
DocumentRoot /var/www/html/omega
<Location />
<LimitExcept GET POST>
Order allow,deny
Deny from all
</LimitExcept>
</Location>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/xxx/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/xxx/privkey.pem
</VirtualHost>
</IfModule>
root@omega:~#
Hors ligne
#3 Le 03/08/2021, à 12:28
- gringo1er
Re : Accès externe à mon serveur LAMP via IPv6 et SSL
Bonjour!
Merci pour l'intérêt porté à mon souci, je pense qu'on va être de plus en plus nombreux à le rencontrer...
Déclare l'IPv6 fixe de ton serveur dans le DNS (celle ou il n'y a pas marqué dynamic dans mon exemple).
Ah? je pensais naïvement, comme pour l'IPv4, que c'était l'IP de la box.
Ca peut expliquer les réponses du dig:
en interne comme externe, j'ai QUERY = 1, et ANSWER = 0 Pas bon signe.
En regardant l'IPv6 de la carte réseau, elle a changé. Je pensais encore plus naïvement qu'attribuer une IP fixe via le serveur DNS de la box allait "fixer" cette IP.
Du coup, question de béotien en IPv6: j'utilise le même préfixe que la box?
Merci!
Hors ligne
#4 Le 03/08/2021, à 15:41
- bbtux2
Re : Accès externe à mon serveur LAMP via IPv6 et SSL
Ton opérateur te donne un préfixe (le début de l'adresse) commun à ta box et à toute les machine derrières.
Les machines derrières se débrouillent pour trouver une adresse valide.
Pour préserver un semblant d'anonymat, cette adresse est le plus souvent "dynamic" et change à chaque fois. Comme en V4 sans ip fixe.
A toi de te débrouiller pour forçer une ip fixe qui sera composée de ton préfixe plus une partie personnelle.
Cette ip est à renseigner dans un champ AAAA du DNS.
Il n'y a plus de NAT.
Recherche par toi même comment "fixer" une IPv6. Moi j'ai suivi https://linuxfr.org/forums/linux-debian … ian-buster
Hors ligne
#5 Le 03/08/2021, à 18:19
- gringo1er
Re : Accès externe à mon serveur LAMP via IPv6 et SSL
Bon...
J'ai un préfixe indiqué sur la box en ABCD:EDGF:1234:5678::/56
Sur le serveur ubuntu ce format n'est pas reconnu..
J'ai rebooté la box et le serveur, et le DNS fixé en IPv6 dans la box a fait son oeuvre, l'IPv6 du serveur est bien celle attribuée par le serveur DNS de la box. Si ce n'est pas fixe dans le serveur, ça l'est un peu de manière artificielle. Faudra que je regarde plus tard, mais le serveur a bien une IP attribuée
J'ai remplacé l'adresse en type AAAA de la box par celle du serveur chez mon fournisseur de domaine.
Le DNS c'est bien propagé (merci dns checker), mais cela ne marche pas mieux en externe. Sur le LAN ça fonctionne https://nomdedomaine.com pointe bien vers le serveur. En externe par contre j'ai un DNS_PROBE_FINISHED_NXDOMAIN
J'ai la commande DIG donne
; <<>> DiG 9.16.1-Ubuntu <<>> nomdedomaine.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39193
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;nomdedomaine.com. IN A
;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: mar. août 03 19:02:19 CEST 2021
;; MSG SIZE rcvd: 39
un ping domaine.com sur le lan pointe bien sur la bonne ipv6, et répond. En wan j'obtiens "pas de réseau disponible". La réponse au ping en ipv6 n'est pas bloquée sur la box.
Concernant le virtualhost, c'est ce que j'ai dans le mien, donc pas de changement.
Tout me semble correct, mais j'ai l'impression que le souci c'est la box au carré rouge.
Une idée, peut-être?
Addon: j'ai paramétré la box en suivant ceci: https://assistance.sfr.fr/internet-tel-fixe/box-nb6/activer-protocole-ipv6-box-sfr.html#:~:text=Renseignez%20les%20IP%20d'internet,sur%20le%20bouton%20%2B%20pour%20valider.
Dernière modification par gringo1er (Le 03/08/2021, à 18:29)
Hors ligne
#6 Le 04/08/2021, à 08:51
- bbtux2
Re : Accès externe à mon serveur LAMP via IPv6 et SSL
un ping domaine.com sur le lan pointe bien sur la bonne ipv6, et répond. En wan j'obtiens "pas de réseau disponible". La réponse au ping en ipv6 n'est pas bloquée sur la box.
En wan, arrive tu à pinguer d'autres domaines en ipv6 ? Est tu sur de pouvoir accéder à des sites IPv6 ?
J'ai un préfixe indiqué sur la box en ABCD:EDGF:1234:5678::/56
Sur le serveur ubuntu ce format n'est pas reconnu..
Sur le serveur tape ip address et récupère les lignes qui resemblent à :
inet6 xxx scope global dynamic noprefixroute
et qui contiennent
scope global
récupère le nom de l'interface (enp2s0 dans l'exemple ci dessous)
Je serai toi, je garderais les premières parties de l'adresse et ne modifierais que la dernière partie.
Sur le serveur (à adapter avec ton adresse et ton nom interface) :
/sbin/ip -6 addr add 2a01:e0a:195:2000:cdaf:219b:207e:d823/56 dev enp2s0
pour ajouter l’adresse, (la définir comme champs AAAA dans le DNS) puis
/sbin/ip -6 route add default via 2a01:e0a:195:2000::1
avec l'adresse interne de ta box pour définir la paserelle
Je ne connaît pas la box SFR, et je ne saurait te répondre sur la config spécifique. Tu peut retenté ici, ou sur un forum SFR
Hors ligne
#7 Le 04/08/2021, à 22:34
- gringo1er
Re : Accès externe à mon serveur LAMP via IPv6 et SSL
En wan, arrive tu à pinguer d'autres domaines en ipv6 ? Est tu sur de pouvoir accéder à des sites IPv6 ?
Oui... Le site web de ma femme, hébergé chez infomaniak, répond au ping avec une inteprétation de l'IPv6. Dans le doute j'ai fait un ping sur le nom de domaine avec http://www.ipv6now.com.au/pingme.php et le ping passe (apparemment le ping ne passe pas en wan à partir de chez moi, la box ne permettant pas le loopback, peut-être). Et l'adresse IPv6 interprêtée est bien celle du serveur (l'IP est complétée d'un reverse SFR, le doute n'est plus permis).
Ceci dit je vais fixer l'IP du serveur en suivant tes indications.
Cela veut dire tout de même que l'IPv6 du serveur est accessible en wan.
Mais si le ping passe et répond, l'accès https://domaine.com ou même http tout court ne passe pas.
Du coup, on a avancé (merci pour tes orientations) j'en reviens à la question initiale: y a-t-il un paramètre à activer sur apache pour qu'il fonctionne en ipv6? le listen [adresseipv6]:80 dans ports.conf n'est pas reconnu.
Thxx
Hors ligne
#8 Le 05/08/2021, à 08:10
- bbtux2
Re : Accès externe à mon serveur LAMP via IPv6 et SSL
Dans la conf d'apache, par défaut, il écoute sur toutes les adresses et tous les ports. Le "LISTEN" ne sert qu'à restreindre aux adresses/ports listés.
Pour le site omega.ducouet.fr accessible en ipv4 & ipv6 :
root@omega:~# cat /etc/apache2/sites-enabled/010-omega.conf
Protocols h2 h2c http/1.1
<VirtualHost *:80>
ServerName omega.ducouet.fr
ServerAdmin xxx
DocumentRoot /var/www/html/omega
Redirect permanent / https://omega.ducouet.fr/
<Location />
<LimitExcept GET POST>
Order allow,deny
Deny from all
</LimitExcept>
</Location>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =omega.ducouet.fr
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
root@omega:~# cat /etc/apache2/sites-enabled/010-omega-le-ssl.conf
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerName omega.ducouet.fr
ServerAdmin xxx
DocumentRoot /var/www/html/omega
Protocols h2 http/1.1
<Location />
<LimitExcept GET POST>
Order allow,deny
Deny from all
</LimitExcept>
</Location>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/xxx/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/xxx/privkey.pem
</VirtualHost>
</IfModule>
root@omega:~#
Le serveur écoute sur toutes les adresses et sur les ports 80 et 443. (Si cela vient de 80, ça redirige vers 443).
Si tu veut être sûr qu'apache écoute en ipv6, créer un fichier php sur le serveur qui affiche les IP
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<?php
// ip client
$c_ip = $_SERVER['REMOTE_ADDR'];
echo "Adresse ip client : $c_ip";
// ip serveur
$s_ip = $_SERVER['SERVER_ADDR'];
echo "Adresse ip serveur : $s_ip";
?>
</body>
</html>
En ipv6 les adresses notées sous linux "scope global" sont les mêmes que ce soit en local ou en WAN. Tout dépend de la box.
Hors ligne
#9 Le 05/08/2021, à 08:38
- bruno
Re : Accès externe à mon serveur LAMP via IPv6 et SSL
Modération : merci de modifier tes messages pour mettre les contenus de fichiers et retours de commandes entre balises [ Code ] comme expliqué dans ce fil.
Visiblement c'est un problème de réseau et non de serveur. La discussion risque donc d'être déplacée dans la section idoine.
#10 Le 05/08/2021, à 19:08
- gringo1er
Re : Accès externe à mon serveur LAMP via IPv6 et SSL
Merci... Bon, j'avance....
Sans avoir rien touché, j'ai tenté un accès http (sans s) au site via mon téléphone en 4G. Merci Bouygues Telecom, au passage, un des rares (le seul?) à avoir déployé l'IPv6 sur son réseau. Et ça connecte! Ma femme est chez sosh, pas d'accès. Un de mes fils est chez SFR, idem. Mon second est chez Free: itou.
Plein d'enthousiasme, j'ai tenté l'accès ssl... et là.. patatra....
Mais c'est bon signe...
Je continue à creuser....
Hors ligne
#11 Le 05/08/2021, à 19:12
- gringo1er
Re : Accès externe à mon serveur LAMP via IPv6 et SSL
Et puis SFR visionnaire: le replay n'est pas compatible avec l'IPv6. Je dois choisir entre le replay pour ma femme et l'accès au serveur privé IPv6.
Vivement que Free se déploie sur notre RIP fibre... Marre du carré rouge
Hors ligne
#12 Le 06/08/2021, à 08:28
- bbtux2
Re : Accès externe à mon serveur LAMP via IPv6 et SSL
Chez Free mobile, l'ipv6 est à activer manuellement.
Pour les accès ssl sur le port 443, Let’s Encrypt est ton ami.
Hors ligne
Pages : 1