« FAQ:TestPort » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
| (3 versions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 62 : | Ligne 62 : | ||
bash: line 1: /dev/tcp/192.168.666.24/23: Connection refused | bash: line 1: /dev/tcp/192.168.666.24/23: Connection refused | ||
Connection refused | Connection refused | ||
</pre> | |||
===Avec nmap (le classique)=== | |||
nmap est une commande de scan très puissante (attention aux plages) en voici une utilisation très simple. | |||
https://nmap.org/man/fr/index.html | |||
<syntaxhighlight lang="sh" line> | |||
nmap --host-timeout <sec> -p <port> <hôte> | |||
</syntaxhighlight> | |||
- open : le port répond (accessible depuis l’extérieur)<br> | |||
- filtered : nmap n’a pas eu de réponse, souvent firewall<br> | |||
- closed : port accessible mais aucun service à l’écoute<br> | |||
Exemple avec succès : | |||
<syntaxhighlight lang="sh" line> | |||
nmap --host-timeout 20 -p 22 192.168.666.24 | |||
</syntaxhighlight> | |||
<pre> | |||
Starting Nmap 7.92 ( https://nmap.org ) at 2025-10-05 14:09 CEST | |||
Nmap scan report for sqwaremanage.dbsqware.local (192.168.666.24) | |||
Host is up (0.0017s latency). | |||
PORT STATE SERVICE | |||
22/tcp open ssh | |||
Nmap done: 1 IP address (1 host up) scanned in 0.19 seconds | |||
</pre> | |||
Exemple avec echec : | |||
<syntaxhighlight lang="sh" line> | |||
nmap --host-timeout 20 -p 23 192.168.666.24 | |||
</syntaxhighlight> | |||
<pre> | |||
Starting Nmap 7.92 ( https://nmap.org ) at 2025-10-05 14:10 CEST | |||
Nmap scan report for sqwaremanage.dbsqware.local (192.168.666.24) | |||
Host is up (0.00061s latency). | |||
PORT STATE SERVICE | |||
23/tcp closed telnet | |||
Nmap done: 1 IP address (1 host up) scanned in 0.10 seconds | |||
</pre> | |||
==Tests ports d'écoute en local== | |||
Parfois, le problème vient "simplement" du fait que l'on ne vous a pas donné le bon port ! | |||
Voici comment vérifier (si vous avez accès à la machine). | |||
===Avec netstat (le classique)=== | |||
netstat n'est plus toujours installé sur les versions récentes ... | |||
Se lance sur la machine où l'on veut tester. | |||
<syntaxhighlight lang="sh" line> | |||
netstat -tulpn | |||
</syntaxhighlight> | |||
Exemple avec un port : | |||
<syntaxhighlight lang="sh" line> | |||
netstat -tulpn | grep :443 | |||
</syntaxhighlight> | |||
<pre> | |||
(Not all processes could be identified, non-owned process info | |||
will not be shown, you would have to be root to see it all.) | |||
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN - | |||
</pre> | |||
Exemple sans filtrage : | |||
<syntaxhighlight lang="sh" line> | |||
netstat -tulpn | |||
</syntaxhighlight> | |||
<pre> | |||
(Not all processes could be identified, non-owned process info | |||
will not be shown, you would have to be root to see it all.) | |||
Active Internet connections (only servers) | |||
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name | |||
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN - | |||
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN - | |||
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN - | |||
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN - | |||
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN - | |||
tcp6 0 0 :::3306 :::* LISTEN - | |||
tcp6 0 0 :::22 :::* LISTEN - | |||
tcp6 0 0 127.0.0.1:8080 :::* LISTEN 1609365/java | |||
udp 0 0 0.0.0.0:123 0.0.0.0:* - | |||
udp 0 0 127.0.0.1:323 0.0.0.0:* - | |||
udp6 0 0 ::1:323 :::* - | |||
</pre> | |||
===Avec ss === | |||
ss est à privillégier sur les versions récentes ... | |||
Se lance sur la machine où l'on veut tester. | |||
<syntaxhighlight lang="sh" line> | |||
ss -tulnp | |||
</syntaxhighlight> | |||
Exemple avec un port : | |||
<syntaxhighlight lang="sh" line> | |||
ss -tulnp | grep :443 | |||
</syntaxhighlight> | |||
<pre> | |||
tcp LISTEN 0 511 0.0.0.0:443 0.0.0.0:* | |||
</pre> | |||
Exemple sans filtrage : | |||
<syntaxhighlight lang="sh" line> | |||
ss -tulnp | |||
</syntaxhighlight> | |||
<pre> | |||
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process | |||
udp UNCONN 0 0 0.0.0.0:123 0.0.0.0:* | |||
udp UNCONN 0 0 127.0.0.1:323 0.0.0.0:* | |||
udp UNCONN 0 0 [::1]:323 [::]:* | |||
tcp LISTEN 0 70 0.0.0.0:3306 0.0.0.0:* | |||
tcp LISTEN 0 100 0.0.0.0:25 0.0.0.0:* | |||
tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:* | |||
tcp LISTEN 0 511 0.0.0.0:80 0.0.0.0:* | |||
tcp LISTEN 0 511 0.0.0.0:443 0.0.0.0:* | |||
tcp LISTEN 0 70 [::]:3306 [::]:* | |||
tcp LISTEN 0 128 [::]:22 [::]:* | |||
tcp LISTEN 0 100 [::ffff:127.0.0.1]:8080 *:* users:(("java",pid=1609365,fd=9)) | |||
</pre> | </pre> | ||
Dernière version du 5 octobre 2025 à 13:27
Explications
Lors du paramétrage d'une nouvelle instance, il faut un accès ssh et/ou SQL.
Il faut donc avoir le bon port d'écoute et que celui-ci ne soit pas filtré par un FW.
En fonction des OS, de leurs versions et de leur niveau de sécurisation, nous n'avons pas toujours les mêmes outils à disposition pour faire les tests ...
Voici donc quelques exemples (il y a forcément d'autres méthodes mais celles-ci doivent couvrir la plupart des cas).
Tests
Avec nc (netcat)
nc -zv <hôte> <port>
-z : mode "scan", n’envoie pas de données -v : mode verbeux, affiche le résultat
Exemple avec succès :
nc -zv 192.168.666.24 22
Ncat: Version 7.92 ( https://nmap.org/ncat ) Ncat: Connected to 192.168.666.24:22. Ncat: 0 bytes sent, 0 bytes received in 0.03 seconds.
Exemple avec echec :
nc -zv 192.168.666.24 23
Ncat: Version 7.92 ( https://nmap.org/ncat ) Ncat: Connection refused.
On peut avoir connection refused ou timed out si le port est filtré
Pour ne pas attendre "toute la nuit", on peut rajouter "-w" pour régler le timeout ... Exemple :
nc -w 20 -zv 192.168.666.24 22
Avec bash et /dev/tcp (disponible dans bash si activé)
Fonctionne seulement si bash est compilé avec le support de /dev/tcp (souvent le cas).
timeout 20 bash -c "</dev/tcp/<hôte>/<port>" 2>/dev/null && echo "Connected" || echo "Connection refused"
Vous pouvez aussi ajuster le timeout.
Exemple avec succès :
timeout 20 bash -c "</dev/tcp/192.168.666.24/22" && echo "Connected" || echo "Connection refused"
Connected
Exemple avec echec :
timeout 20 bash -c "</dev/tcp/192.168.666.24/23" && echo "Connected" || echo "Connection refused"
bash: connect: Connection refused bash: line 1: /dev/tcp/192.168.666.24/23: Connection refused Connection refused
Avec nmap (le classique)
nmap est une commande de scan très puissante (attention aux plages) en voici une utilisation très simple. https://nmap.org/man/fr/index.html
nmap --host-timeout <sec> -p <port> <hôte>
- open : le port répond (accessible depuis l’extérieur)
- filtered : nmap n’a pas eu de réponse, souvent firewall
- closed : port accessible mais aucun service à l’écoute
Exemple avec succès :
nmap --host-timeout 20 -p 22 192.168.666.24
Starting Nmap 7.92 ( https://nmap.org ) at 2025-10-05 14:09 CEST Nmap scan report for sqwaremanage.dbsqware.local (192.168.666.24) Host is up (0.0017s latency). PORT STATE SERVICE 22/tcp open ssh Nmap done: 1 IP address (1 host up) scanned in 0.19 seconds
Exemple avec echec :
nmap --host-timeout 20 -p 23 192.168.666.24
Starting Nmap 7.92 ( https://nmap.org ) at 2025-10-05 14:10 CEST Nmap scan report for sqwaremanage.dbsqware.local (192.168.666.24) Host is up (0.00061s latency). PORT STATE SERVICE 23/tcp closed telnet Nmap done: 1 IP address (1 host up) scanned in 0.10 seconds
Tests ports d'écoute en local
Parfois, le problème vient "simplement" du fait que l'on ne vous a pas donné le bon port ! Voici comment vérifier (si vous avez accès à la machine).
Avec netstat (le classique)
netstat n'est plus toujours installé sur les versions récentes ... Se lance sur la machine où l'on veut tester.
netstat -tulpn
Exemple avec un port :
netstat -tulpn | grep :443
(Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.) tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN -
Exemple sans filtrage :
netstat -tulpn
(Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.) Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN - tcp6 0 0 :::3306 :::* LISTEN - tcp6 0 0 :::22 :::* LISTEN - tcp6 0 0 127.0.0.1:8080 :::* LISTEN 1609365/java udp 0 0 0.0.0.0:123 0.0.0.0:* - udp 0 0 127.0.0.1:323 0.0.0.0:* - udp6 0 0 ::1:323 :::* -
Avec ss
ss est à privillégier sur les versions récentes ... Se lance sur la machine où l'on veut tester.
ss -tulnp
Exemple avec un port :
ss -tulnp | grep :443
tcp LISTEN 0 511 0.0.0.0:443 0.0.0.0:*
Exemple sans filtrage :
ss -tulnp
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
udp UNCONN 0 0 0.0.0.0:123 0.0.0.0:*
udp UNCONN 0 0 127.0.0.1:323 0.0.0.0:*
udp UNCONN 0 0 [::1]:323 [::]:*
tcp LISTEN 0 70 0.0.0.0:3306 0.0.0.0:*
tcp LISTEN 0 100 0.0.0.0:25 0.0.0.0:*
tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
tcp LISTEN 0 511 0.0.0.0:80 0.0.0.0:*
tcp LISTEN 0 511 0.0.0.0:443 0.0.0.0:*
tcp LISTEN 0 70 [::]:3306 [::]:*
tcp LISTEN 0 128 [::]:22 [::]:*
tcp LISTEN 0 100 [::ffff:127.0.0.1]:8080 *:* users:(("java",pid=1609365,fd=9))