Beberapa perangkat lunak Linux bekerja dengan mendengarkan koneksi yang masuk. Contoh sederhana adalah server web, yang menangani permintaan pengguna setiap kali seseorang menavigasi ke situs web. Sebagai administrator atau pengguna Linux, penting untuk selalu mengetahui port mana dari sistem Anda yang terbuka ke internet. Jika tidak, Anda mungkin tidak menyadari adanya koneksi luar yang dibuat ke komputer Anda, yang menghabiskan bandwidth dan sumber daya, serta berpotensi menjadi lubang keamanan.
Dalam panduan ini, kita akan melihat cara memeriksa port yang terbuka di Ubuntu Linux. Ini dapat dilakukan dengan beberapa utilitas baris perintah yang berbeda, yang akan kita bahas secara rinci. Kami juga akan melihat cara menggunakan firewall ufw Ubuntu untuk memastikan port aman. Jadi, apakah Anda tahu port mana dari sistem Anda yang terbuka? Mari kita cari tahu.
Dalam tutorial ini Anda akan mempelajari:
- Cara memeriksa port yang terbuka dengan
ss
perintah - Cara memeriksa port yang terbuka dengan utilitas Nmap
- Cara memeriksa dan menambahkan port yang diizinkan di ufw firewall
Kategori | Persyaratan, Konvensi, atau Versi Perangkat Lunak yang Digunakan |
---|---|
Sistem | Ubuntu Linux |
Perangkat Lunak | ss, Nmap, ufw firewall |
Lainnya | Akses istimewa ke sistem Linux Anda sebagai root atau melalui sudo perintah. |
Konvensi | # – membutuhkan perintah linux yang diberikan untuk dieksekusi dengan hak akses root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah$ – membutuhkan perintah linux yang diberikan untuk dieksekusi sebagai pengguna biasa yang tidak memiliki hak istimewa |
Periksa port yang terbuka dengan perintah ss
Perintah ss dapat digunakan untuk menunjukkan port mana yang mendengarkan koneksi. Ini juga menunjukkan dari jaringan mana ia menerima koneksi.
Sebaiknya gunakan -ltn
pilihan dengan perintah untuk melihat output yang ringkas dan relevan. Mari kita lihat contoh pada sistem pengujian kami.
$ sudo ss -ltn State Recv-Q Send-Q Local Address:Port Peer Address:Port Process LISTEN 0 4096 127.0.0.53%lo:53 0.0.0.0:* LISTEN 0 5 127.0.0.1:631 0.0.0.0:* LISTEN 0 70 127.0.0.1:33060 0.0.0.0:* LISTEN 0 151 127.0.0.1:3306 0.0.0.0:* LISTEN 0 5 [::1]:631 [::]:* LISTEN 0 511 *:80 *:*
Kita dapat melihat bahwa server kita mendengarkan koneksi pada port 80, 3306, dan 33060. Ini adalah port terkenal yang terkait dengan HTTP dan MySQL.
Anda juga akan melihat bahwa ss
output menunjukkan port 53 dan 631 berada dalam status mendengarkan. Ini adalah untuk DNS dan Internet Printing Protocol, masing-masing. Ini diaktifkan secara default, jadi Anda mungkin akan melihatnya mendengarkan di sistem Anda sendiri. Port DNS sebenarnya tidak terbuka, melainkan memberikan resolusi nama untuk aplikasi yang diinstal di sistem kami.
Untuk melihat proses milik port mendengarkan ini, sertakan -p
pilihan dalam perintah Anda.
$ sudo ss -ltnp State Recv-Q Send-Q Local Address:Port Peer Address:Port Process LISTEN 0 4096 127.0.0.53%lo:53 0.0.0.0:* users:(("systemd-resolve",pid=530,fd=13)) LISTEN 0 5 127.0.0.1:631 0.0.0.0:* users:(("cupsd",pid=572,fd=7)) LISTEN 0 70 127.0.0.1:33060 0.0.0.0:* users:(("mysqld",pid=2320,fd=32)) LISTEN 0 151 127.0.0.1:3306 0.0.0.0:* users:(("mysqld",pid=2320,fd=34)) LISTEN 0 5 [::1]:631 [::]:* users:(("cupsd",pid=572,fd=6)) LISTEN 0 511 *:80 *:* users:(("apache2",pid=2728,fd=4),("apache2",pid=2727,fd=4),("apache2",pid=2725,fd=4))
Sekarang kita dapat melihat bahwa systemd-resolve, cupsd, mysqld, dan apache2 adalah layanan yang menggunakan port untuk mendengarkan koneksi yang masuk.
Periksa port yang terbuka dengan nmap
Nmap adalah alat pengintai jaringan yang dapat digunakan untuk memeriksa port yang terbuka pada host jarak jauh. Namun, kami juga dapat menggunakannya untuk memeriksa sistem kami sendiri untuk mendapatkan daftar cepat port apa yang terbuka.
Biasanya, kami akan menentukan alamat IP jarak jauh untuk dipindai oleh Nmap. Sebagai gantinya, kita dapat memindai sistem kita sendiri dengan menentukan localhost
dalam perintah.
$ sudo nmap localhost Starting Nmap 7.80 ( https://nmap.org ) at 2021-03-12 20:43 EST Nmap scan report for localhost (127.0.0.1) Host is up (0.000012s latency). Not shown: 997 closed ports PORT STATE SERVICE 80/tcp open http 631/tcp open ipp 3306/tcp open mysql Nmap done: 1 IP address (1 host up) scanned in 0.18 seconds
Periksa port apa yang terbuka di ufw firewall
Ada peringatan besar yang harus Anda ingat. Saat menggunakan ss
atau nmap localhost
perintah pada sistem lokal kami, kami melewati firewall. Memang, perintah ini menunjukkan port yang berada dalam status mendengarkan, tetapi itu tidak berarti port tersebut terbuka ke internet, karena firewall kami mungkin menolak koneksi.
Periksa status ufw firewall dengan perintah berikut.
$ sudo ufw status verbose Status: active Logging: on (low) Default: deny (incoming), allow (outgoing), disabled (routed) New profiles: skip
Dari output, kita dapat melihat bahwa ufw menolak koneksi masuk. Karena port 80 dan 3306 belum ditambahkan sebagai pengecualian, HTTP dan MySQL tidak dapat menerima koneksi masuk, meskipun ss
dan nmap
melaporkan bahwa mereka dalam kondisi mendengarkan.
Mari tambahkan pengecualian untuk port ini dengan perintah berikut.
$ sudo ufw allow 80/tcp Rule added Rule added (v6) $ sudo ufw allow 3306/tcp Rule added Rule added (v6)
Kita dapat memeriksa status ufw lagi, untuk melihat apakah port tersebut sekarang terbuka.
$ sudo ufw status verbose Status: active Logging: on (low) Default: deny (incoming), allow (outgoing), disabled (routed) New profiles: skip To Action From -- ------ ---- 80/tcp ALLOW IN Anywhere 3306/tcp ALLOW IN Anywhere 80/tcp (v6) ALLOW IN Anywhere (v6) 3306/tcp (v6) ALLOW IN Anywhere (v6)
Sekarang dua port kami terbuka di firewall dan dalam status mendengarkan. Untuk mempelajari lebih lanjut tentang ufw firewall, termasuk contoh perintah, lihat panduan kami tentang menginstal dan menggunakan ufw firewall di Linux.
Pemikiran Penutup
Dalam panduan ini, kami melihat cara menggunakan ss
perintah, serta nmap
utilitas untuk memeriksa port mendengarkan di Ubuntu Linux. Kami juga mempelajari cara memeriksa firewall ufw untuk melihat port mana yang terbuka, dan menambahkan pengecualian jika perlu.
Jika port dalam status mendengarkan dan diizinkan melalui firewall, port tersebut harus terbuka untuk koneksi masuk. Namun ini juga bergantung pada router Anda atau perangkat jaringan lain yang berada di antara komputer Anda dan internet, karena perangkat tersebut mungkin memiliki aturannya sendiri yang memblokir koneksi masuk.