Panduan Pemula untuk iptables, Linux Firewall

Aug 27, 2025
Privasi dan Keamanan

Iptables adalah utilitas firewall yang sangat fleksibel yang dibuat untuk sistem operasi Linux. Baik Anda seorang ahli Linux pemula atau administrator sistem, mungkin ada beberapa cara agar iptables dapat sangat berguna bagi Anda. Baca terus selagi kami tunjukkan cara mengkonfigurasi firewall Linux yang paling serbaguna.

Tentang iptables

iptables adalah utilitas firewall baris perintah yang menggunakan rantai kebijakan untuk mengizinkan atau memblokir lalu lintas. Ketika koneksi mencoba untuk membangun dirinya sendiri di sistem Anda, iptables mencari aturan dalam daftarnya untuk dicocokkan. Jika tidak menemukannya, itu akan menggunakan tindakan default.

iptables hampir selalu sudah diinstal sebelumnya pada distribusi Linux mana pun. Untuk memperbarui / menginstalnya, cukup ambil paket iptables:

sudo apt-get install iptables

Ada alternatif GUI untuk iptables seperti Pemantik api , tetapi iptables tidak terlalu sulit setelah Anda memiliki beberapa perintah. Anda ingin sangat berhati-hati saat mengonfigurasi aturan iptables, terutama jika Anda menggunakan SSH di server, karena satu perintah yang salah dapat mengunci Anda secara permanen hingga diperbaiki secara manual di mesin fisik.

Jenis Rantai

iptables menggunakan tiga rantai berbeda: input, forward, dan output.

Memasukkan - Rantai ini digunakan untuk mengontrol perilaku koneksi masuk. Misalnya, jika pengguna mencoba SSH ke PC / server Anda, iptables akan mencoba mencocokkan alamat IP dan port ke aturan dalam rantai input.

Meneruskan - Rantai ini digunakan untuk koneksi masuk yang sebenarnya tidak dikirim secara lokal. Pikirkan sebuah router - data selalu dikirim ke sana tetapi jarang benar-benar ditujukan ke router itu sendiri; data hanya diteruskan ke targetnya. Kecuali Anda melakukan semacam perutean, NATing, atau hal lain di sistem Anda yang memerlukan penerusan, Anda bahkan tidak akan menggunakan rantai ini.

Ada satu cara pasti untuk memeriksa apakah sistem Anda menggunakan / membutuhkan rantai maju atau tidak.

iptables -L -v

Tangkapan layar di atas adalah dari server yang telah berjalan selama beberapa minggu dan tidak memiliki batasan pada koneksi masuk atau keluar. Seperti yang Anda lihat, rantai masukan telah memproses 11GB paket dan rantai keluaran telah memproses 17GB. Rantai maju, di sisi lain, tidak perlu memproses satu paket pun. Ini karena server tidak melakukan penerusan apa pun atau digunakan sebagai perangkat penerusan.

Keluaran - Rantai ini digunakan untuk koneksi keluar. Misalnya, jika Anda mencoba melakukan ping ke howtogeek.com, iptables akan memeriksa rantai keluarannya untuk melihat apa aturannya tentang ping dan howtogeek.com sebelum membuat keputusan untuk mengizinkan atau menolak upaya koneksi.

Peringatan itu

Meskipun melakukan ping ke host eksternal tampak seperti sesuatu yang hanya perlu melintasi rantai keluaran, perlu diingat bahwa untuk mengembalikan data, rantai masukan juga akan digunakan. Saat menggunakan iptables untuk mengunci sistem Anda, ingatlah bahwa banyak protokol akan membutuhkan komunikasi dua arah, jadi rantai masukan dan keluaran perlu dikonfigurasi dengan benar. SSH adalah protokol umum yang orang lupa izinkan di kedua rantai.

Perilaku Default Rantai Kebijakan

Sebelum masuk dan mengonfigurasi aturan tertentu, Anda sebaiknya memutuskan apa yang Anda inginkan untuk perilaku default dari ketiga rantai tersebut. Dengan kata lain, apa yang Anda ingin iptables lakukan jika koneksi tidak cocok dengan aturan yang ada?

Untuk melihat apa yang rantai kebijakan Anda saat ini dikonfigurasi untuk dilakukan dengan lalu lintas yang tidak cocok, jalankan iptables -L perintah.

Seperti yang Anda lihat, kami juga menggunakan perintah grep untuk memberi kami keluaran yang lebih bersih. Di tangkapan layar itu, rantai kami saat ini dianggap menerima lalu lintas.

Lebih sering daripada tidak, Anda ingin sistem Anda menerima koneksi secara default. Kecuali Anda telah mengubah aturan rantai kebijakan sebelumnya, setelan ini seharusnya sudah dikonfigurasi. Apa pun pilihannya, berikut adalah perintah untuk menerima koneksi secara default:

iptables --policy INPUT ACCEPT
iptables --Policy OUTPUT ACCEPT
iptables --policy FORWARD ACCEPT

Secara default ke aturan accept, Anda kemudian dapat menggunakan iptables untuk menolak alamat IP atau nomor port tertentu, sambil terus menerima semua koneksi lainnya. Kita akan membahas perintah itu sebentar lagi.

Jika Anda lebih suka menolak semua koneksi dan secara manual menentukan yang mana yang ingin Anda izinkan untuk terhubung, Anda harus mengubah kebijakan default rantai Anda untuk dijatuhkan. Melakukan ini mungkin hanya berguna untuk server yang berisi informasi sensitif dan hanya memiliki alamat IP yang sama yang terhubung dengannya.

iptables --policy INPUT DROP
iptables --policy OUTPUT DROP
iptables --policy FORWARD DROP

Tanggapan Khusus Koneksi

Dengan kebijakan rantai default Anda dikonfigurasi, Anda dapat mulai menambahkan aturan ke iptables sehingga iptables tahu apa yang harus dilakukan ketika menemukan koneksi dari atau ke alamat IP atau port tertentu. Dalam panduan ini, kita akan membahas tiga "tanggapan" yang paling dasar dan umum digunakan.

Menerima - Izinkan koneksi.

Penurunan - Putuskan koneksi, bertindak seperti itu tidak pernah terjadi. Ini yang terbaik jika Anda tidak ingin sumber menyadari bahwa sistem Anda ada.

Menolak - Jangan izinkan koneksi, tetapi kirim kembali kesalahan. Ini paling baik jika Anda tidak ingin sumber tertentu terhubung ke sistem Anda, tetapi Anda ingin mereka tahu bahwa firewall Anda memblokirnya.

Cara terbaik untuk menunjukkan perbedaan antara ketiga aturan ini adalah dengan menunjukkan seperti apa saat PC mencoba melakukan ping ke mesin Linux dengan iptables yang dikonfigurasi untuk masing-masing pengaturan ini.

Mengizinkan koneksi:

Menjatuhkan koneksi:

Menolak koneksi:

Mengizinkan atau Memblokir Koneksi Tertentu

Dengan rantai kebijakan Anda dikonfigurasi, Anda sekarang dapat mengonfigurasi iptables untuk mengizinkan atau memblokir alamat, rentang alamat, dan port tertentu. Dalam contoh ini, kami akan mengatur koneksi ke PENURUNAN , tetapi Anda dapat mengalihkannya ke MENERIMA atau MENOLAK , tergantung pada kebutuhan Anda dan bagaimana Anda mengkonfigurasi rantai kebijakan Anda.

Catatan: Dalam contoh ini, kami akan menggunakan iptables -A untuk menambahkan aturan ke rantai yang ada. iptables dimulai dari bagian atas daftar dan melewati setiap aturan sampai menemukan yang cocok. Jika Anda perlu memasukkan aturan di atas yang lain, Anda dapat menggunakan iptables -I [chain] [number] untuk menentukan nomor itu harus ada dalam daftar.

Koneksi dari satu alamat IP

Contoh ini menunjukkan cara memblokir semua koneksi dari alamat IP 10.10.10.10.

iptables -A INPUT -s 10.10.10.10 -j DROP

Koneksi dari berbagai alamat IP

Contoh ini menunjukkan cara memblokir semua alamat IP di jangkauan jaringan 10.10.10.0/24. Anda dapat menggunakan netmask atau notasi garis miring standar untuk menentukan kisaran alamat IP.

iptables -A INPUT -s 10.10.10.0/24 -j DROP

atau

iptables -A INPUT -s 10.10.10.0/255.255.255.0 -j DROP

Koneksi ke port tertentu

Contoh ini menunjukkan cara memblokir koneksi SSH dari 10.10.10.10.

iptables -A INPUT -p tcp --dport ssh -s 10.10.10.10 -j DROP

Anda dapat mengganti "ssh" dengan protokol atau nomor port apa pun. Itu -p tcp bagian dari kode memberi tahu iptables jenis koneksi apa yang digunakan protokol. Jika Anda memblokir protokol yang menggunakan UDP daripada TCP, maka -p udp akan diperlukan sebagai gantinya.

Contoh ini menunjukkan cara memblokir koneksi SSH dari alamat IP mana pun.

iptables -A INPUT -p tcp --dport ssh -j DROP

Status Koneksi

Seperti yang kami sebutkan sebelumnya, banyak protokol akan membutuhkan komunikasi dua arah. Misalnya, jika Anda ingin mengizinkan koneksi SSH ke sistem Anda, rantai input dan output akan membutuhkan aturan yang ditambahkan padanya. Tetapi, bagaimana jika Anda hanya ingin SSH yang masuk ke sistem Anda diizinkan? Tidakkah menambahkan aturan ke rantai keluaran juga memungkinkan upaya SSH keluar?

Di situlah status koneksi masuk, yang memberi Anda kemampuan yang Anda perlukan untuk memungkinkan komunikasi dua arah tetapi hanya memungkinkan koneksi satu arah dibuat. Lihat contoh ini, di mana koneksi SSH DARI 10.10.10.10 diizinkan, tetapi koneksi SSH KE 10.10.10.10 tidak. Namun, sistem diizinkan untuk mengirim kembali informasi melalui SSH selama sesi telah dibuat, yang memungkinkan komunikasi SSH antara dua host ini.

iptables -A INPUT -p tcp --dport ssh -s 10.10.10.10 -m state --state NEW, ESTABLISHED -j ACCEPT

iptables -A OUTPUT -p tcp --sport 22 -d 10.10.10.10 -m state --state ESTABLISHED -j ACCEPT

Menyimpan perubahan

Perubahan yang Anda buat pada aturan iptables Anda akan dihapus saat berikutnya layanan iptables dimulai ulang kecuali Anda menjalankan perintah untuk menyimpan perubahan. Perintah ini dapat berbeda tergantung pada distribusi Anda:

Ubuntu:

sudo / sbin / iptables-save

Topi Merah / CentOS:

/ sbin / service iptables simpan

Atau

/etc/init.d/iptables simpan

Perintah Lainnya

Buat daftar aturan iptables yang saat ini dikonfigurasi:

iptables -L

Menambahkan -di pilihan akan memberi Anda informasi paket dan byte, dan menambahkan -n akan mencantumkan semuanya secara numerik. Dengan kata lain - nama host, protokol, dan jaringan dicantumkan sebagai angka.

Untuk menghapus semua aturan yang saat ini dikonfigurasi, Anda dapat mengeluarkan perintah flush.

iptables -F

Iptables Walkthrough (Linux Firewall)

Introduction To Linux IPTables

Introduction To Linux Firewall

Using `iptables` On Linux

Iptables Firewall Examples (ITS335, L23, Y14)

07 Iptables Firewall Rules

Firewalling In Linux Using IPtables Sp8scorp

Introduction To Linux: #15 - Iptables

Introduction To Iptables

Introduction To IPTables

Linux Firewall Configurations - Intro To Firewalld (RHCE Topic)

Linux Iptables - Configuring And Implementing Linux Iptables - Learn About Ip Values And Ranges #41

Advanced Linux Firewall Config. With Firewalld Rich Rules And IPset - Rich Rules + Ipset

Ubuntu Server 18.04 Administration Guide Part 11 - Configuring Firewall Rules With UFW

Intro To IPTables With Jason

Understand The Security At OS & Network Level | Configure Linux Firewall | DevOps Tutorial | Edureka


Privasi dan Keamanan - Artikel Terpopuler

Cara Menghapus Histori YouTube Anda Secara Otomatis

Privasi dan Keamanan Oct 4, 2025

Google sekarang menawarkan alat itu menghapus secara otomatis riwayat penelusuran dan aktivitas Anda dari YouTube. Secara default, data Anda disimpan selamanya, tetap..


Cara Memeriksa Apakah Laptop HP Anda Memiliki Keylogger Conexant

Privasi dan Keamanan May 12, 2025

KONTEN TIDAK CACHED Banyak laptop HP yang dirilis pada tahun 2015 dan 2016 memiliki masalah besar. Driver audio yang disediakan oleh Conexant telah mengaktifkan kode debug, dan it..


Cara Menghubungkan Mac Anda ke VPN Apa Pun (dan Menghubungkan Ulang Secara Otomatis)

Privasi dan Keamanan Jun 18, 2025

KONTEN TIDAK CACHED Mac OS X memiliki dukungan bawaan untuk menghubungkan ke jenis yang paling umum VPN . Jika Anda ingin memastikan Mac Anda secara otomatis terhub..


Cara Mendapatkan Izin Penuh untuk Mengedit Kunci Registri yang Dilindungi

Privasi dan Keamanan Jul 5, 2025

Kami berbicara tentang banyak hal keren di sini di How-To Geek yang dapat Anda lakukan dengan mengedit Windows Registry. Namun, terkadang, Anda akan menemukan kunci atau ni..


Apa Yang Berbeda Tentang Panel Kontrol Windows 10, Sejauh Ini

Privasi dan Keamanan Aug 4, 2025

KONTEN TIDAK CACHED Banyak hal yang berubah di Windows 10. Yang paling utama di antaranya adalah perpindahan dari Panel Kontrol lama yang kita semua kenal dengan baik ..


AirDrop 101: Mengirim Konten dengan Mudah Antara iPhone, iPad, dan Mac Terdekat

Privasi dan Keamanan Jan 31, 2025

AirDrop memungkinkan Anda dengan cepat dan mudah mengirim tautan, foto, file, dan lebih banyak konten antara iPhone, iPad, dan Mac terdekat. Cukup buka panel Bagikan dan ketuk peran..


Stok Android Tidak Sempurna: 3 Hal Buruk

Privasi dan Keamanan Dec 30, 2024

KONTEN TIDAK CACHED Stok Google Android sering kali mendapat tumpangan gratis dari para pecinta Android yang berduyun-duyun ke Nexus dan Perangkat Edisi Goo..


Mungkinkah Pengarsip KGB Menjadi Alat Kompresi Terbaik yang Tersedia? Atau Hanya Paling Lambat?

Privasi dan Keamanan Jan 31, 2025

Kompresi file ada di mana-mana sehingga sekarang dibangun di banyak sistem operasi sebagai fitur standar. File zip umumnya merupakan format arsip default - terkadang diganti dengan ..


Kategori