J'ai Ubuntu 12.04 et je ne peux pas autoriser certains ports dans mon pare-feu. J'ai donc dit au fond que je vais tout autoriser mais que cela ne fonctionne toujours pas. S'il vous plaît aider. Nmap sur cette machine à partir d'une autre machine dit:
$ nmap Host_name
Not shown: 996 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
139/tcp open netbios-ssn
445/tcp open Microsoft-ds
et voici nmap de la même machine
$ nmap localhost
Starting Nmap 5.21 ( http://nmap.org ) at 2014-01-21 11:14 PST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000080s latency).
Not shown: 991 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
53/tcp open domain
80/tcp open http
139/tcp open netbios-ssn
445/tcp open Microsoft-ds
631/tcp open ipp
3306/tcp open mysql
8000/tcp open http-alt
Nmap done: 1 IP address (1 Host up) scanned in 0.04 seconds
Je veux ouvrir le port 8000 et voici la sortie de iptables.
# iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
mmoghimi@titan:~$ Sudo netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 14842/mysqld
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 982/smbd
tcp 0 0 127.0.0.1:39346 0.0.0.0:* LISTEN 3405/GoogleTalkPlug
tcp 0 0 127.0.0.1:50995 0.0.0.0:* LISTEN 3405/GoogleTalkPlug
tcp 0 0 127.0.0.1:5939 0.0.0.0:* LISTEN 2412/teamviewerd
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 2429/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 985/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1267/cupsd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1748/exim4
tcp 0 0 0.0.0.0:17500 0.0.0.0:* LISTEN 2885/dropbox
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 982/smbd
tcp 0 0 127.0.0.1:8000 0.0.0.0:* LISTEN 4134/python
tcp6 0 0 :::139 :::* LISTEN 982/smbd
tcp6 0 0 :::80 :::* LISTEN 1832/Apache2
tcp6 0 0 :::22 :::* LISTEN 985/sshd
tcp6 0 0 ::1:631 :::* LISTEN 1267/cupsd
tcp6 0 0 ::1:25 :::* LISTEN 1748/exim4
tcp6 0 0 :::445 :::* LISTEN 982/smbd
udp 0 0 127.0.0.1:53 0.0.0.0:* 2429/dnsmasq
udp 0 0 0.0.0.0:68 0.0.0.0:* 2403/dhclient
udp 0 0 128.54.44.214:123 0.0.0.0:* 3430/ntpd
udp 0 0 MYIP:123 0.0.0.0:* 3430/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 3430/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 3430/ntpd
udp 0 0 137.110.255.255:137 0.0.0.0:* 2602/nmbd
udp 0 0 MYIP:137 0.0.0.0:* 2602/nmbd
udp 0 0 128.54.47.255:137 0.0.0.0:* 2602/nmbd
udp 0 0 128.54.44.214:137 0.0.0.0:* 2602/nmbd
udp 0 0 0.0.0.0:137 0.0.0.0:* 2602/nmbd
udp 0 0 137.110.255.255:138 0.0.0.0:* 2602/nmbd
udp 0 0 MYIP:138 0.0.0.0:* 2602/nmbd
udp 0 0 128.54.47.255:138 0.0.0.0:* 2602/nmbd
udp 0 0 128.54.44.214:138 0.0.0.0:* 2602/nmbd
udp 0 0 0.0.0.0:138 0.0.0.0:* 2602/nmbd
udp 0 0 0.0.0.0:17500 0.0.0.0:* 2885/dropbox
udp 0 0 0.0.0.0:36889 0.0.0.0:* 1356/avahi-daemon:
udp 0 0 0.0.0.0:5353 0.0.0.0:* 1356/avahi-daemon:
udp6 0 0 ::1:123 :::* 3430/ntpd
udp6 0 0 fe80::fab1:56ff:fe9:123 :::* 3430/ntpd
udp6 0 0 fe80::3e77:e6ff:fe6:123 :::* 3430/ntpd
udp6 0 0 :::123 :::* 3430/ntpd
udp6 0 0 :::33792 :::* 1356/avahi-daemon:
udp6 0 0 :::5353 :::* 1356/avahi-daemon:
Votre sortie iptables
indique qu'aucun port n'est bloqué.
La question est donc: est-ce que quelque chose écoute sur le port 8000? Si rien n’écoute sur un port mais que le port n’est pas bloqué par un pare-feu, nmap
le signalera sous la forme closed
name__. De ici :
fermé
Un port fermé est accessible (il reçoit et répond à Nmap paquets de sonde), mais aucune application ne l'écoute. Ils peuvent être utiles pour montrer qu'un hôte utilise une adresse IP (découverte d'hôte ou analyse ping) et dans le cadre de la détection du système d'exploitation. Les ports fermés étant accessibles, il peut être intéressant de les analyser ultérieurement au cas où certains s'ouvriraient. Les administrateurs peuvent envisager de bloquer ces ports avec un pare-feu. Ensuite, ils apparaissent dans l'état filtré, discuté ensuite.
Ainsi, le rapport nmap
name__: "996 closed ports"
indique en fait que ces ports ne sont pas bloqués par un pare-feu, mais qu'aucun programme ne les écoute. nmap
signale un port bloqué sous la forme filtered
name__:
filtré
Nmap ne peut pas déterminer si le port est ouvert car le filtrage de paquets empêche ses sondes d'atteindre le port. Le filtrage peut provenir d'un dispositif de pare-feu dédié, de règles de routeur ou d'un logiciel de pare-feu basé sur l'hôte. ...
Ainsi, si vous mettez une application en état d'écoute sur le port 8000, elle apparaîtra probablement dans la sortie de nmap
name__. Vous pouvez le faire si vous n’exécutez que python3 -m http.server
ou python -m SimpleHTTPServer
sur la machine sur laquelle vous essayez d’ouvrir les ports, cela placera un serveur HTTP à l’écoute sur le port 8000. Exécutez à nouveau nmap
pour analyser la machine.
METTRE À JOUR:
Votre sortie netstat
a cette ligne:
tcp 0 0 127.0.0.1:8000 0.0.0.0:* LISTEN 4134/python
Cela signifie que votre programme python n'écoute que sur localhost (127.0.0.1), il est donc uniquement accessible à partir de localhost et non de l'extérieur. Le programme doit écouter sur l'adresse IP de votre adaptateur réseau ou sur l'adresse IP universelle 0.0.0.0. Le problème est ce que j'ai écrit ci-dessus, aucun programme n'écoute sur le port 8000 (du monde extérieur), donc nmap
indique qu'il est fermé.
Activer le port dans Ubuntu
Sudo ufw allow <port_nr>
par exemple pour permettre à ssh
Sudo ufw allow 22
Sudo ufw enable
C'est tout