İptables Nedir?

iptables, Linux işletim sistemlerinde kullanılan bir güvenlik duvarı ve paket filtreleme aracıdır. Ağ trafiğini filtrelemek, izin verilen veya reddedilen trafiği yönetmek, Network Address Translation (NAT) işlemlerini gerçekleştirmek ve ağ güvenliğini sağlamak için kullanılır. Ancak, iptables ile tanımlanan kurallar oturum sona erdiğinde veya sistem yeniden başlatıldığında kaybolur. İşte bu noktada, iptables-persistent devreye girer.

İptables-Persistent Nedir?

iptables-persistent, Debian tabanlı Linux dağıtımlarında kullanılan bir pakettir. Bu paket, iptables ile oluşturulan güvenlik duvarı kurallarını kalıcı olarak saklamak ve yeniden yükleme işlemlerini yönetmek için kullanılır. Bu sayede, oluşturduğunuz kuralların sistemi yeniden başlattığınızda veya servisleri yeniden başlattığınızda kaybolmasını önler.

bash: /etc/iptables/iptables.rules: No such file or directory Hatasının Çözümü

root@sercancelenk.com:~# iptables-save > /etc/iptables/iptables.rules
-bash: /etc/iptables/iptables.rules: No such file or directory

Bunun hatanın nedeni iptables-persistent paketinin sistemimde eksik olmasıdır.
Yukarıdaki hatayı gidermek için aşağıda gösterildiği gibi komutu kullanarak paketi kurun.

root@sercancelenk.com:~# apt install iptables-persistent
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
ipset libipset13 libnftables1 python3-decorator python3-firewall python3-nftables python3-selinux
Use 'apt autoremove' to remove them.
The following additional packages will be installed:
netfilter-persistent
The following NEW packages will be installed:
iptables-persistent netfilter-persistent
0 upgraded, 2 newly installed, 0 to remove and 213 not upgraded.
Need to get 13.8 kB of archives.
After this operation, 89.1 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y

Başarılı kurulumun ardından sisteminize yüklenen tüm dosyaları paketten listelemeye çalışırsanız, iptables-persistent adında bir dizin göreceksiniz.

root@sercancelenk.com:~# dpkg -L iptables-persistent
/.
/etc
/etc/iptables
/etc/systemd
/etc/systemd/system
/etc/systemd/system/netfilter-persistent.service.d
/etc/systemd/system/netfilter-persistent.service.d/iptables.conf
/usr
/usr/share
/usr/share/doc
/usr/share/doc/iptables-persistent
/usr/share/doc/iptables-persistent/copyright
/usr/share/netfilter-persistent
/usr/share/netfilter-persistent/plugins.d
/usr/share/netfilter-persistent/plugins.d/15-ip4tables
/usr/share/netfilter-persistent/plugins.d/25-ip6tables
/usr/share/doc/iptables-persistent/README
/usr/share/doc/iptables-persistent/changelog.gz

Bu dizinin içine girerseniz, paket kurulumundan sonra oluşturulan iki dosyayı (rules.v6 ve Rules.v4) göreceksiniz.

root@sercancelenk.com:~# cd /etc/iptables/
root@sercancelenk.com:/etc/iptables# ls -lrt
total 12
-rw-r--r-- 1 root root 195 Jan 26 00:46 rules.v6
-rw-r--r-- 1 root root 288 Jan 26 00:46 rules.v4

Şimdi aynı komutu tekrar çalıştırmayı denerseniz, aşağıda görebileceğiniz gibi çalıştırabilmeniz gerekir.

root@sercancelenk.com:~# iptables-save > /etc/iptables/iptables.rules