2. Aturan-aturanini akandisusundalamkelompokyangdisebutrantai.Sebuah rantai adalahseperangkat
aturan yangpaketdiperiksaterhadapberurutan.Ketikapaketcocokdengansalahsatuaturan,
dijalankantindakanterkaitdantidakdiperiksaterhadapaturanyangtersisadalamrantai.
Seorangpenggunadapatmenciptakanrantai yang diperlukan.Adatigarantai didefinisikansecara
default.Mereka:
INPUT: Rantai ini menangani semuapaketyangditujukanke serverAnda.
OUTPUT: Rantai ini berisi aturanuntuklalulintasyangdibuatolehserverAnda.
MAJU: Rantai ini digunakanuntukmenanganilalulintasdiperuntukkanuntukserverlainnyayangtidak
dibuatpada serverAnda.Rantai ini padadasarnyaadalahcara untukmengkonfigurasi serverAnda
untukpermintaanrute ke mesinlain.
Setiaprantai dapat berisi nol ataulebihaturan,danmemiliki kebijakandefault.Kebijakanmenentukan
apa yang terjadi ketikasebuahpakettetesmelaluisemuaaturandalamrantai dantidaksesuai aturan
apapun.Andajuga dapatdrop paketatau menerimapaketjikatidakadaaturansesuai.
Melalui modul yangdapatdimuatmelalui aturan,iptablesjugadapatmelacakkoneksi.Ini berarti Anda
dapat membuataturanyang mendefinisikanapayangterjadi padapaketberdasarkanhubungannya
denganpaketsebelumnya.Kami menyebutnyakemampuanini"pelacakannegara","pelacakan
koneksi",ataumengkonfigurasi "mesinnegara".
Untuk panduanini,kami terutamaakanmencakupkonfigurasi rantai INPUT,karenamengandung
seperangkataturanyangakan membantukitamenyangkal lalulintasyangtidakdiinginkandiarahkan
pada serverkami.
IPv4 IPv6Versus
Firewall netfilteryangdisertakandalamkernelLinux terusIPv4danIPv6lalulintasbenar-benarterpisah.
Demikianjuga,alatyangdigunakanuntukmemanipulasitabel yangberisiaturanfirewall yangberbeda
juga.JikaAndamemiliki IPv6diaktifkanpadaserverAnda,Andaakanharusmengkonfigurasikeduatabel
untukmengatasi lalulintasserveryangdikenakan.
Perintahiptablesbiasadigunakanuntukmemanipulasi tabel yangberisi aturanyangmengaturlalulintas
IPv4.Untuk lalulintasIPv6,perintahpendampingdisebutip6tablesdigunakan.Ini adalahpoinpenting
untukinternalisasi,karenaituberarti bahwasetiapaturanyangAndatetapkandenganiptablestidak
akan mempengaruhipadapaketmenggunakanversi6protokol.
3. Sintaksantara perintahkembaradalahsama,sehinggamenciptakanrulesetuntuksetiaptabel ini tidak
terlalubesar.Hanyaingatuntukmemodifikasi keduatabel setiapkali Andamembuatperubahan.
Perintahiptablesakanmembuataturan-aturanyangberlakuuntuklalulintas IPv4,danip6tables
perintahakanmembuataturan-aturanyangberlakuuntuklalulintasIPv6.
Andaharus yakinuntukmenggunakanalamatIPv6sesuai serverAndauntukkerajinanaturanip6tables.
Hal yangPerluMind
Sekarangkitatahu bagaimanaiptablesmengarahkanpaketyangdatangmelalui antarmuka
(mengarahkanpaketke rantai yangtepat,memeriksaterhadapsetiapaturansampai salahsatucocok,
masalahkebijakandefaultrantai jikatidakadayangcocok),kitabisa mulai melihatbeberapaperangkap
untukmenyadari seperti yangkitamembuataturan.
Pertama,kitaperlumemastikanbahwakitamemiliki aturanuntukmenjagakoneksi saataktif jikakita
menerapkankebijakanpenurunandefault.Hal ini terutamapentingjikaAndaterhubungke serverAnda
melalui SSH.JikaAndatanpasengajamenerapkanaturanataukebijakanyangteteskoneksi Andasaat
ini,Andaselaludapatloginke DigitalOceanVPSAndadenganmenggunakankonsol web,yang
menyediakanout-of-bandakses.
Satu hal yang perludiingatadalahbahwaurutanaturandi setiapmateri rantai.Sebuahpakettidakharus
menemukanaturanyanglebihumumbahwaitucocokjikaitudimaksudkanuntukmencocokkanaturan
yang lebihspesifik.
Karenaitu,aturan dekatbagianatas rantai harus memilikitingkatyanglebihtinggi dari kekhususandari
aturan di bagianbawah.Anda harusmencocokkankasus-kasustertentupertama,dankemudian
memberikanaturanyanglebihumumuntukmencocokkanpolayanglebihluas.Jikapaketjatuhmelalui
seluruhrantai (tidaksesuai aturanapapun),ituakanmemukul aturanyangpalingumum, kebijakan
default.
Untuk alasanini,kebijakandefaultrantai sangatkuatmenentukanjenisaturanyangakan dimasukkan
dalamrantai.Sebuahrantai dengankebijakandefaultACCEPTakanberisi aturanyangsecara eksplisit
drop paket.Sebuahrantai yangdefaultnyaDROPakanberisi pengecualianuntukpaketyangharus
diterimasecarakhusus.