Dalam contoh OpenWRT saya, saya telah menambahkan aturan iptables dalam tabel filter Input, tetapi masalahnya adalah ketika saya menghidupkan sistem saya, saya menemukan bahwa aturan dihapus. Apa yang bisa saya lakukan agar aturan tidak terhapus secara otomatis.
3
ifconfig
keluaran? Seharusnya itu tidak perlu untuk pertanyaan ini.Jawaban:
OpenWRT
Ada beberapa cara untuk mengedit iptables di OpenWRT.
Penggunaan iptables secara langsung
OpenWRT akan menjalankan konten
/etc/firewall.user
saat startup. Ini adalah skrip shell, jadi akan terlihat seperti ini:Pengujian
/etc/firewall.user
Setelah mengedit
/etc/firewall.user
file, Anda mungkin ingin mengujinya. Ini karena Anda mungkin dapat melihat kesalahan jika Anda menjalankan skrip saat start up. Untuk menguji skrip:iptables -F
akan berfungsi, tetapi mungkin menghapus aturan yang tidak perlu Anda uji.bash /etc/firewall.user
. Anda ingin melihat apakah ada kesalahan dalam skrip. Jika Anda mendapatkan pesan kembali, Anda mungkin salah ketik.iptables -L
dan memastikan aturan yang ingin Anda tambahkan ditambahkan dengan benar.iptables-save
daniptables-restore
OpenWRT (bersama dengan distro lain), miliki a
iptables-save
perintah. Dengan berlariiptables-save > myrules
, Anda akan memiliki file yang berisi semua yang diperlukan untuk mengembalikan aturan iptables Anda.iptables-restore < myrules
akan membaca file aturan iptables dan menerapkannya.Jadi, Anda harus membuat
myrules
file, dan kemudian jalankaniptables-restore < myrules
saat boot. Anda dapat menjalankan saat boot dengan mengedit/etc/rc.local
mengajukan.Informasi lebih lanjut tentang
iptables-save
daniptables-restore
dapat ditemukan sini .Gunakan Sintaks Konfigurasi Firewall OpenWRTs
Itu
/etc/config/firewall
file dapat diedit juga. Firewall "menyediakan antarmuka konfigurasi yang abstrak dari sistem iptables untuk menyediakan model konfigurasi yang disederhanakan yang sesuai untuk sebagian besar keperluan reguler sembari memungkinkan pengguna untuk memasok aturan iptables yang dibutuhkan sendiri saat dibutuhkan."Informasi lebih lanjut dapat ditemukan sini
Distro lainnya
Debian atau Ubuntu
Jika Anda menjalankan Debian atau Ubuntu, Anda dapat mencoba
iptables-persistent
paket.Di atas akan menginstal layanan. Ini kemudian akan menyimpan aturan Anda
/etc/iptables/rules.v4
dan/etc/iptables/rules.v6
.Anda bisa mendapatkan lebih banyak info untuk Ubuntu 12.04 sini , Ubuntu 14.04 sini .
CentOS
Jika Anda menjalankan CentOS, Anda dapat menyimpan aturan dengan menjalankan:
yang akan menyimpan konten iptables ke
/etc/sysconfig/iptables
. Konten sebelumnya/etc/sysconfig/iptables
akan disimpan ke/etc/sysconfig/iptables.save
.Anda bisa mendapatkan info lebih lanjut sini .
sumber
os.system
, mengapa tidak menggunakannya dua kali. Juga jalankan aos.system("echo iptables -D INPUT -m mac-source --mac" + mac + "j DROP") >> /etc/firewall.user
. Juga, waspadalah terhadap risiko injeksi perintah yang mencolok di komputer Andaos.system
penggunaan, pastikan karakter baik daftar putih.Anda dapat menulis skrip shell yang berisi semua perintah iptables Anda, lalu menambahkan baris ke /etc/rc.local untuk menjalankan skrip shell secara otomatis ketika sistem melakukan booting. Lihat http://bash.cyberciti.biz/firewall/linux-iptables-firewall-shell-script-for-standalone-server/ untuk tutorial yang baik tentang cara melakukan ini.
sumber