Bagaimana cara membuka port?

21

Saya memiliki ubuntu 12.04 dan saya tidak dapat mengizinkan port tertentu di firewall saya. Jadi saya pada dasarnya mengatakan saya akan mengizinkan semuanya tetapi masih tidak berfungsi Tolong bantu. nmap pada mesin ini dari komputer lain mengatakan:

$ 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

dan di sini adalah nmap dari mesin yang sama

$ 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

Saya ingin membuka port 8000 dan ini adalah output dari 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:
Mohammad Moghimi
sumber

Jawaban:

25

iptablesOutput Anda menunjukkan bahwa tidak ada port yang diblokir.

Jadi pertanyaannya adalah: Apakah ada yang mendengarkan pada port 8000? Jika tidak ada yang mendengarkan pada port tetapi port tidak diblokir oleh firewall nmapakan melaporkannya sebagai closed. Dari sini :

Tutup

Port tertutup dapat diakses (ia menerima dan merespons paket probe Nmap), tetapi tidak ada aplikasi yang mendengarkannya. Mereka dapat membantu dalam menunjukkan bahwa host pada alamat IP (penemuan host, atau pemindaian ping), dan sebagai bagian dari deteksi OS. Karena port yang tertutup dapat dijangkau, mungkin ada baiknya memindai nanti jika ada yang terbuka. Administrator mungkin ingin mempertimbangkan memblokir port seperti itu dengan firewall. Kemudian mereka akan muncul dalam status yang difilter, dibahas selanjutnya.

Jadi nmaplaporannya: "996 closed ports"sebenarnya mengatakan bahwa port tersebut tidak diblokir oleh firewall tetapi tidak ada program yang mendengarkannya. nmapmelaporkan port yang diblokir sebagai filtered:

tersaring

Nmap tidak dapat menentukan apakah port terbuka karena packet filtering mencegah probe-nya mencapai port. Pemfilteran bisa dari perangkat firewall khusus, aturan router, atau perangkat lunak firewall berbasis host. ...

Jadi, jika Anda meletakkan aplikasi dalam kondisi mendengarkan pada port 8000, kemungkinan akan muncul di output dari nmap. Anda dapat melakukan ini jika Anda hanya menjalankan python3 -m http.serveratau python -m SimpleHTTPServerpada mesin yang Anda coba buka portnya, ini akan membuat server HTTP mendengarkan pada port 8000. Kemudian jalankan nmaplagi untuk memindai mesin.

MEMPERBARUI:

netstatOutput Anda memiliki baris ini:

tcp        0      0 127.0.0.1:8000          0.0.0.0:*               LISTEN      4134/python  

Itu berarti program python Anda hanya mendengarkan di localhost (127.0.0.1), sehingga hanya dapat diakses dari localhost, bukan dari luar. Program harus mendengarkan pada IP adapter jaringan Anda atau pada IP universal 0.0.0.0. Masalahnya adalah apa yang saya tulis di atas, tidak ada program yang mendengarkan pada port 8000 (dari dunia luar) begitu nmapkatanya ditutup.

elang
sumber
Saya menambahkan nmap dari mesin yang sama. Sebenarnya ada program mendengarkan pada 8000
Mohammad Moghimi
@MohammadMoghimi Silakan jalankan sudo netstat -tulpndi mesin di mana Anda mencoba untuk membuka port, dan memposting output.
Falcon
pastebin.com/xhwc6vMN MYIP adalah alamat ip saya.
Mohammad Moghimi
@MohammadMoghimi Saya memperbarui jawaban saya, program Anda hanya mendengarkan pada locahost, itulah masalahnya, lihat pembaruan saya.
Falcon
Falconer benar. Ubah program Anda untuk mendengarkan pada 0.0.0.0 atau alamat IP LAN Anda alih-alih 127.0.0.1.
Xavier J
1

Untuk Mengaktifkan Port Di Ubuntu

sudo ufw allow <port_nr>

misalnya untuk mengizinkan ssh

sudo ufw allow 22

sudo ufw enable

Itu dia

Mayur Bhandare
sumber
1
Demi Tuhan, JANGAN MENULIS INI. Akan ada pemula yang tidak akan dapat mengakses server mereka setelah sudo ufw mengaktifkan
Vasile