Re: Port ouvert ou pas ?

2019-10-12 Par sujet Pascal Hambourg

Le 09/10/2019 à 13:26, Eric Degenetais a écrit :


localhost est une carte réseau virtuelle qui n'est visible que de
l'ordinateur lui-même.


Non, "localhost" n'est pas une interface mais une adresse IP : 127.0.0.1 
en IPv4 et ::1 en IPv6. Cf. /etc/hosts.



Il n'y a donc pas de soucis : le serveur n'écoute
pas le port 8000 sur les adresses visibles de l'extérieur (carte WiFi,
carte ethernet).


L'explication est fausse, mais la conclusion est juste dans le cas par 
défaut. Cf. mon autre réponse dans ce fil.



Qu'appelez vous l'ip publique ? En ipv4, la configuration la plus courante
est que votre machine reçoit une adresse ip locale délivrée par un routeur
et contrôleur de domaine local (rôle tenu par la box en filaire ou en WiFi


Depuis quand les box internet jouent-elles le rôle de contrôleur de 
domaine ? Tu ne confondrais pas avec serveur DHCP ?



En ipv6 il y a
plus d'adresses possibles, l'ordinateur peut recevoir de son contrôleur de
domaine directement son ip publique.


En IPv6 généralement les hôtes en configuration automatique ne reçoivent 
pas une adresse mais un préfixe /64 diffusé par le routeur, et se 
choisissent une ou plusieurs adresses à l'intérieur de ce préfixe.




Re: Port ouvert ou pas ?

2019-10-12 Par sujet Pascal Hambourg

Le 09/10/2019 à 13:22, Alexandre Goethals a écrit :


la commande ss (qui est incluse dans Debian à la place de netstat depuis
Stretch) permet de visualiser les ports d'écoute de la machine.


ss ne remplace pas netstat, c'est une alternative à netstat (pas au sens 
de dpkg). netstat est toujours disponible dans le paquet net-tools. La 
différence est qu'il n'est plus forcément installé par défaut (ça dépend 
de l'environnement de bureau).



Il faut regarder alors quelle est l'adresse
(Local Address) associée au port 8000. Si c'est 127.0.0.1, le socket est
en écoute uniquement sur l'interface locale (loopback).


C'est inexact. La socket écoute sur une adresse, pas une interface. Le 
"weak host model" appliqué par le noyau Linux ne restreint pas l'usage 
d'une adresse locale à l'interface à laquelle elle est affectée.


Il est néanmoins vrai que la plage 127.0.0.0/8 est traitée de façon 
particulière pour se conformer au standard d'internet qui impose que ces 
adresses ne devraient jamais être vues sur un réseau en dehors d'un 
hôte. Mais d'une part cette restriction est appliquée par le noyau au 
niveau du routage des paquets (en empêchant l'envoi ou la réception de 
paquets ayant une adresse source ou destination dans cette plage sur une 
interface non loopback) et non des sockets, et d'autre part le noyau a 
un paramètre net.ipv4.conf..route_localnet qui permet de la 
désactiver sur une interface donnée.




Re: Port ouvert ou pas ?

2019-10-09 Par sujet benoitlst

Le 2019-10-09 13:26, Eric Degenetais a écrit :

Le mer. 9 oct. 2019 12:31,  a écrit :



Bonsoir,



localhost est une carte réseau virtuelle qui n'est visible que de
l'ordinateur lui-même. Il n'y a donc pas de soucis : le serveur
n'écoute pas le port 8000 sur les adresses visibles de l'extérieur
(carte WiFi, carte ethernet).


Merci pour l’info, me voilà rassuré sur ce point !



Qu'appelez vous l'ip publique ?


Ce que j’ai appelé ip publique, c’est celle qui m’est attribuée par un 
fournisseur d’accès à internet, qu’on peut connaître avec par ex : 
whatsmyip.org.


Celle que j’aurais dû appeler ip locale est celle attribuée par le 
routeur ou la box, affichée par ifconfig.




En ipv4, la configuration la plus
courante est que votre machine reçoit une adresse ip locale
délivrée par un routeur et contrôleur de domaine local (rôle tenu
par la box en filaire ou en WiFi dans les configurations grand public)
qui joue le rôle d'intermédiaire avec l'adresse ip publique,
laquelle est généralement partagée. En ipv6 il y a plus d'adresses
possibles, l'ordinateur peut recevoir de son contrôleur de domaine
directement son ip publique.



Dans les deux cas c'est distinct de localhost, et les serveurs qui
écoutent sur localhost ne sont pas visibles de l'ip locale, encore
moins de la publique.



Parfait ! ;)

Encore merci, bonne soirée.

--
Benoit



Re: Port ouvert ou pas ?

2019-10-09 Par sujet Alexandre Goethals
Bonjour,

la commande ss (qui est incluse dans Debian à la place de netstat depuis
Stretch) permet de visualiser les ports d'écoute de la machine.

ss -ltn => afficher les sockets TCP (-t) à l'état LISTEN (-l) avec le
numéro de port associé (-n). Il faut regarder alors quelle est l'adresse
(Local Address) associée au port 8000. Si c'est 127.0.0.1, le socket est
en écoute uniquement sur l'interface locale (loopback).

Le 09/10/2019 à 12:30, benoit...@ouvaton.org a écrit :
> Bonjour à tou·t·e·s,
>
> La commande :
> $ php -S localhost:8000
>
> Lance un serveur local de test en tant que simple utilisateur dans la
> home.
> Cf.
> https://www.php.net/manual/fr/features.commandline.webserver.php
>
> Je ne me sens pas assez compétant pour m’assurer que mon ordi n’expose
> pas le port 8000 et donc que les pages et le contenu du répertoire
> soit visible avec son ip publique ou son ip locale quand je suis le
> réseau wifi d’un lieu publique par exemple.
>
> Le fait de remplacer localhost par l'ip locale ou publique ne sert pas
> la page, ce qui semble rassurant, mais j'aimerais en savoir plus sur
> ce point.
>
> Merci d’avance.
> –
> Benoit
>



Re: Port ouvert ou pas ?

2019-10-09 Par sujet Eric Degenetais
Le mer. 9 oct. 2019 12:31,  a écrit :

> Bonjour à tou·t·e·s,
>
bonjour,

>
> La commande :
> $ php -S localhost:8000
>
> Lance un serveur local de test en tant que simple utilisateur dans la
> home.
> Cf.
> https://www.php.net/manual/fr/features.commandline.webserver.php
>
> Je ne me sens pas assez compétant pour m’assurer que mon ordi n’expose
> pas le port 8000 et donc que les pages et le contenu du répertoire soit
> visible avec son ip publique ou son ip locale quand je suis le réseau
>
localhost est une carte réseau virtuelle qui n'est visible que de
l'ordinateur lui-même. Il n'y a donc pas de soucis : le serveur n'écoute
pas le port 8000 sur les adresses visibles de l'extérieur (carte WiFi,
carte ethernet).

> wifi d’un lieu publique par exemple.
>
> Le fait de remplacer localhost par l'ip locale ou publique ne sert pas
> la page, ce qui semble rassurant, mais j'aimerais en savoir plus sur ce
> point.
>
Qu'appelez vous l'ip publique ? En ipv4, la configuration la plus courante
est que votre machine reçoit une adresse ip locale délivrée par un routeur
et contrôleur de domaine local (rôle tenu par la box en filaire ou en WiFi
dans les configurations grand public) qui joue le rôle d'intermédiaire avec
l'adresse ip publique, laquelle est généralement partagée. En ipv6 il y a
plus d'adresses possibles, l'ordinateur peut recevoir de son contrôleur de
domaine directement son ip publique.
Dans les deux cas c'est distinct de localhost, et les serveurs qui écoutent
sur localhost ne sont pas visibles de l'ip locale, encore moins de la
publique.

>
> Merci d’avance.
> –
> Benoit
>
>


Re: Port ouvert ou pas ?

2019-10-09 Par sujet Eric Degenetais
Bonjour,
localhost désigne une carte réseau virtuelle qui n'est

Éric Dégenètais

Le mer. 9 oct. 2019 12:31,  a écrit :

> Bonjour à tou·t·e·s,
>
> La commande :
> $ php -S localhost:8000
>
> Lance un serveur local de test en tant que simple utilisateur dans la
> home.
> Cf.
> https://www.php.net/manual/fr/features.commandline.webserver.php
>
> Je ne me sens pas assez compétant pour m’assurer que mon ordi n’expose
> pas le port 8000 et donc que les pages et le contenu du répertoire soit
> visible avec son ip publique ou son ip locale quand je suis le réseau
> wifi d’un lieu publique par exemple.
>
> Le fait de remplacer localhost par l'ip locale ou publique ne sert pas
> la page, ce qui semble rassurant, mais j'aimerais en savoir plus sur ce
> point.
>
> Merci d’avance.
> –
> Benoit
>
>


Port ouvert ou pas ?

2019-10-09 Par sujet benoitlst

Bonjour à tou·t·e·s,

La commande :
$ php -S localhost:8000

Lance un serveur local de test en tant que simple utilisateur dans la 
home.

Cf.
https://www.php.net/manual/fr/features.commandline.webserver.php

Je ne me sens pas assez compétant pour m’assurer que mon ordi n’expose 
pas le port 8000 et donc que les pages et le contenu du répertoire soit 
visible avec son ip publique ou son ip locale quand je suis le réseau 
wifi d’un lieu publique par exemple.


Le fait de remplacer localhost par l'ip locale ou publique ne sert pas 
la page, ce qui semble rassurant, mais j'aimerais en savoir plus sur ce 
point.


Merci d’avance.
–
Benoit