Cara Membuka Port di Linux
Linux Ubuntu Dasar Dasar Ubuntu Pahlawan / / March 02, 2022
Terakhir diperbarui saat
Jika Anda ingin mengizinkan koneksi luar ke PC atau server, Anda harus membuka port yang benar. Pengguna Linux dapat membuka port menggunakan panduan bermanfaat ini.
Perlu terhubung ke PC atau server luar—atau perlu PC atau server lain untuk terhubung dengan Anda? Jika Anda menjalankan Linux, Anda harus memastikan port yang benar terbuka.
Sementara sistem operasi lain biasanya memiliki beberapa alat grafis untuk ini, Linux tidak sesederhana itu. Kami akan memandu Anda melalui cara membuka port di Linux di bawah ini.
Apa itu Port dan Mengapa Saya Perlu Membukanya?
Port adalah titik akhir pada jaringan. Anggap saja seperti pintu yang mengarah ke ruangan tertentu atau dunia luar, tetapi di komputer Anda. Semua yang Anda lakukan di internet menggunakan port atau rangkaian port tertentu.
Misalnya, katakanlah Anda ingin menjalankan server Minecraft Anda sendiri. Untuk melakukannya, Anda harus membuka port agar pengguna dapat terhubung melaluinya. Hal yang sama akan berlaku untuk menjalankan server web, email, atau FTP Anda sendiri.
Pelabuhan adalah terstandarisasi di semua jaringan yang terhubung perangkat. 1.024 port pertama (dari 0 hingga 1023) disebut sebagai nomor port terkenal. Mereka dicadangkan untuk layanan yang paling umum digunakan, seperti HTTP dan HTTP (masing-masing port 80 dan 443) dan SSH (port 22).
Nomor port di atas 1024 disebut sebagai pelabuhan sementara, dan biasanya tersedia untuk Anda gunakan untuk game online, server web pribadi, dan sebagainya. Nomor port 1024 hingga 49151 disebut terdaftar atau port pengguna, sedangkan yang dari 49152 hingga 65535 dikenal sebagai dinamis atau pelabuhan pribadi.
Mendaftar Port Terbuka di Linux
Sebelum Anda mulai mencoba membuka port di Linux, Anda harus memastikan port tersebut belum digunakan. Anda dapat melakukannya dengan menggunakan status bersih perintah, disertakan pada sebagian besar distribusi Linux. Jika distribusi Anda tidak memiliki status bersih, kamu bisa memakai ss alih-alih.
netstat -lntu.
Ini akan mencetak semua soket pendengar (-l), bersama dengan nomor port (-n). Ini termasuk port TCP (-T) serta UDP (-u). Jika sistem Anda tidak memiliki status bersih, gunakan saja ss dengan parameter yang sama.
ss -lntu.
Cara Membuka Port di Linux
Demi contoh ini, kami akan menganggap kami ingin membuka port 4000 ke koneksi TCP. Pertama-tama kita perlu memastikan port belum digunakan. Kami melakukan ini melalui status bersih atau ss.
netstat -na | sip :4000. ss -na | sip :4000.
Dengan asumsi output kosong, kita dapat menambahkan aturan port yang sesuai ke firewall sistem. Metode untuk ini akan bervariasi tergantung pada distribusi Anda dan apakah itu menggunakan yang lebih baru ufw firewall atau firewalld. Kesukaan Ubuntuufw, ketika CentOS biasanya menggunakanfirewalld alih-alih. Tentu saja, masih ada beberapa distribusi Linux yang menggunakan versi lama iptables firewall.
Untuk Pengguna Ubuntu dan Sistem Berbasis Firewall ufw Lainnya
Daripada menggunakan yang lebih tua iptables firewall, Ubuntu dan beberapa distribusi lainnya menggunakan ufw. Di bawah sistem ini, perintah berikut akan membuka port.
sudo ufw izinkan 4000.
Lewati beberapa langkah berikutnya, dan uji port yang baru dibuka untuk memastikannya berfungsi.
Cara Membuka Port di Linux Menggunakan CentOS dan Sistem Berbasis Firewall Lainnya
Jika sistem Anda menggunakan firewalld, taruhan terbaik Anda adalah menggunakan firewall-cmd perintah untuk memperbarui aturan.
sudo firewall-cmd --add-port=4000/tcp.
Ini tidak akan menjadi perubahan permanen, tetapi kami akan membahas cara membuat aturan tetap ada setelah mem-boot ulang setelah kami menguji port.
Untuk Distribusi Linux Lainnya
Jika sistem Linux Anda tidak memiliki ufw atau firewalld, Anda harus menggunakan iptables. Jika tidak diinstal, lanjutkan dan dapatkan menggunakan manajer paket pilihan Anda. Setelah diinstal, perintah ini akan membuka port 4000:
sudo iptables -A INPUT -p tcp --dport 4000 -j MENERIMA. Sudo service iptables restart.
Jika sistem Anda menggunakan sistemctl, ganti perintah kedua dengan:
sudo systemctl restart iptables.
Menguji Port yang Baru Dibuka untuk Koneksi
Selanjutnya, kita harus menguji port untuk memastikan port tersebut menerima koneksi. Kami melakukan ini dengan menggunakan netcat (nc) untuk mendengarkan port, lalu mencoba melakukan telnet ke port tersebut.
Pertama, buka jendela terminal dan jalankan perintah ini:
sudo ls | nc -l -p 4000.
Biarkan berjalan (mendengarkan) dan buka jendela terminal kedua. Di jendela itu, Anda akan menggunakan telnet untuk menguji konektivitas. Jika telnet tidak diinstal, lakukan dengan menggunakan manajer paket Anda.
telnet [nama host/alamat IP] [nomor port]
Mengganti [nama host/alamat IP] dengan alamat IP sistem Anda, dan [nomor port] dengan nomor port yang Anda buka.
telnet localhost 4000.
Anda akan melihat output seperti di bawah ini, menunjukkan koneksi terbuka dengan nc.
Kami juga dapat menunjukkan port terbuka menggunakan nmap. Sekali lagi, jika perintah belum diinstal, gunakan manajer paket Anda untuk mengambilnya.
nmap localhost -p 4000.
Perhatikan bahwa nmap hanya akan mencantumkan port terbuka yang mendengarkan koneksi. Itu sebabnya kami menggunakan netcat untuk pengujian, untuk mendengarkan di port itu. Jika tidak, port tidak akan terdaftar sebagai terbuka.
Saya Tidak Dapat Terhubung ke Port yang Baru Saya Buka, Sekarang Apa?
Jika Anda menjalankan semua langkah di atas dan tidak dapat mencapai koneksi ke port, periksa kembali pengetikan Anda. Jika Anda yakin telah memasukkan semuanya dengan benar, kemungkinan Anda perlu mengkonfigurasi ulang router jaringan Anda untuk mengizinkan lalu lintas.
Karena setiap router jaringan memiliki layar konfigurasi yang berbeda, Anda harus berkonsultasi dengan halaman dukungan atau manual pengguna untuk peralatan khusus Anda. Anda harus memeriksa penerusan port atau pengaturan pemetaan port, serta firewall bawaan yang mungkin digunakan router.
Cara Membuka Port Secara Permanen di Linux
Setelah Anda menguji port terbuka Anda dan memastikannya berfungsi, Anda mungkin ingin membuat perubahan itu permanen. Jika tidak, perubahan mungkin tidak bertahan setelah reboot. Jika Anda pengguna Ubuntu, atau gunakan ufw firewall, Anda tidak perlu khawatir tentang ini. Itu ufw aturan tidak diatur ulang saat reboot.
Untuk Pengguna firewalld
Membuat aturan port tetap ada setelah reboot mudah dilakukan dengan firewalld. Tambahkan saja -permanen tandai ke perintah awal Anda, dan itu akan disertakan dalam aturan firewall sistem Linux Anda saat startup.
sudo firewall-cmd --add-port=4000/tcp --permanent.
Jika Anda Masih Menggunakan iptables
Itu iptables firewall jauh lebih merepotkan (mungkin alasan yang baik untuk meningkatkan ke firewalld atau ufw). Untuk "secara permanen" membuka port di iptables, Anda dapat menginstal iptables-persisten paket untuk membantu.
Saat pertama kali menginstal iptables-persisten pada sistem berbasis Debian, ini akan menyimpan aturan Anda saat ini ke /etc/iptables/rules.v4 atau /etc/iptables/rules.v6. Untuk menambahkan aturan baru, Anda akan mengeluarkan perintah berikut:
sudo iptables-save > /etc/iptables/rules.v4.
ATAU
sudo iptables-save > /etc/iptables/rules.v6.
Bagi mereka yang menjalankan distribusi Linux berbasis RPM, ini sedikit berbeda. Paket tersebut disebut iptables-services, dan file simpannya adalah /etc/sysconfig/iptables dan /etc/sysconfig/ip6tables.
Pada distribusi berbasis RPM, ada juga perintah berbeda yang digunakan untuk port IPv6. Menyimpan aturan Anda dilakukan dengan menggunakan salah satu dari dua perintah ini:
sudo iptables-save > /etc/sysconfig/iptables. sudo ip6tables-save > /etc/sysconfig/iptables.
Pastikan untuk Memantau Penggunaan Port Anda
Seiring berjalannya waktu, kebutuhan server Anda dapat berubah. Seperti yang seharusnya ikuti terus akun pengguna pada mesin Linux Anda, Anda juga harus mengaudit port terbuka Anda secara teratur. Tutup semua port terbuka yang tidak lagi diperlukan. Seiring dengan teratur mengubah kata sandi Anda, ini adalah praktik keamanan yang baik yang akan membantu Anda menghindari intrusi sistem dan eksploitasi keamanan.