มีการเพิ่มกฎ iptables โดยไม่ต้องรีสตาร์ทหรือไม่


24

(เซิร์ฟเวอร์ Ubuntu) กำลังทำงานอยู่

sudo iptables -A INPUT -s 127.0.0.1 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 4/sec -j ACCEPT

แล้ว

sudo iptables-save

เพื่อให้ได้ฟังก์ชั่นของกฎ iptables มันเพียงพอหรือไม่ที่จะทำเฉพาะคำสั่งข้างต้น (โดยไม่ต้องรีสตาร์ท iptables)?

คำตอบ:


15

เพื่อความชัดเจนiptables-saveฟังก์ชั่นคำสั่งจะไม่เปิดใช้งานกฎโดยมีวัตถุประสงค์เพื่อบันทึกกฎสำหรับการใช้งานในภายหลัง การใช้งานทั่วไปคือ:

iptables-save > iptables.dat

iptables.datนี้ช่วยประหยัดกฎปัจจุบัน คุณสามารถคืนค่ากฎนี้ด้วยคำสั่ง:

iptables-restore < iptables.dat

คุณสามารถใส่บรรทัดนี้rc.localเพื่อกู้คืนกฎหลังจากรีบูตเนื่องจากการรีบูตจะล้างกฎทั้งหมดตามค่าเริ่มต้น


7
และอย่าลืมiptables-applyถ้าคุณต้องการที่จะสงบสติอารมณ์ (ค่าเริ่มต้น 10 วินาที)
gertas

13

@cewebugil เท่าที่คำถามดั้งเดิมของคุณคือมันเพียงพอที่จะใช้กฎ IPTABLE ขณะที่คุณใช้กฎ IPTABLE มันจะกลายเป็นใช้งานได้ทันที แต่จะไม่สามารถรีบูตได้

เพื่อให้สามารถอยู่รอด IPTABLES การรีบูตในไฟล์กำหนดค่าเครือข่าย / etc / network / interfaces (ฉันอ้างถึงระบบ Debian / Ubuntu) คุณต้องเพิ่มบางตำแหน่ง
pre-up iptables-restore < firewall.txt

ตรวจสอบความสับสนของเธรดนี้ในการตั้งค่าไฟร์วอลล์บนบริดจ์และลิงก์นี้ http://www.debian-administr.org/articles/445

แนวทางปฏิบัติที่ดีสองข้อเพื่อช่วยตัวคุณเองจากการล็อค

1) เป็นความคิดที่ดีเสมอในขณะที่ทดสอบ IPTABLES เพื่อให้มีรายการงาน cron ที่ล้างกฎของคุณทุก ๆ 15 นาทีดังนั้นถ้าคุณบังเอิญใช้กฎที่ผิดหลังจาก 15 นาทีกฎนั้นจะถูกลบและคุณสามารถเข้าสู่ระบบได้อีกครั้ง จะช่วยให้คุณประหยัดจากการล็อคที่เป็นไปได้ถ้าบางกฎ IPTABLE ผิด

2) สิ่งนี้สามารถทำได้โดย

 iptables-restore < iptables_rules; sleep 30; iptables-restore < clean_rules

แนวคิดนี้ใช้กฎรอ 30 วินาทีและใช้กฎชุดหนึ่งเพื่ออนุญาตการเข้าถึงทั้งหมด เมื่อคุณรันบรรทัดนี้ให้กด Enter สองสามครั้งและอาจเกิดขึ้นสองสิ่ง:

กฎของคุณล็อคคุณไว้ (การกด Enter จะไม่ปรากฏบนหน้าจอดังนั้นรอเวลาที่จะหมดและพวกเขาจะถูกล้างหากกฎของคุณทำงานและคุณสามารถเห็นบรรทัดใหม่บนหน้าจอ CTRL + C ก่อนที่โหมดสลีปจะสิ้นสุดลง และคุณก็ทำได้ดี


15
iptables-apply -t 30 iptables_rulesหรือคุณสามารถใช้ iptables-applyจะรอให้คุณยืนยันกฎที่ใช้ในเชิงบวกและหากหลังจาก 30 วินาทีที่คุณไม่ได้ตอบกลับมันจะเปลี่ยนกลับไปเป็นกฎก่อนหน้า
pepoluan

@epoluan ขอบคุณสำหรับข้อมูลนี้ฉันไม่ทราบ
สมาชิกที่ลงทะเบียน

ใช่เพิ่งรู้ว่าตัวเองเกี่ยวกับสัปดาห์ที่แล้ว ตอนนี้ฉันอยู่ไม่ได้ถ้าไม่มี :-)
pepoluan

12

ใช่เมื่อคุณเพิ่มกฎลงใน iptables มันจะเปิดใช้งานทันที - นี่คือเหตุผลที่คุณควรระมัดระวังกฎของคุณเนื่องจากเป็นไปได้ที่จะล็อคตัวเอง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.