Score:1

ปัญหา iptables บนเดสก์ท็อป Ubuntu-20.04.3

ธง in

ฉันต้องการทดสอบกฎ iptables กฎคือการปฏิเสธการรับส่งข้อมูลขาออกทั้งหมดยกเว้น DNS
ดังนั้นฉันจึงเปลี่ยนกฎเริ่มต้นของ OUTPUT ของตารางตัวกรองเป็น DROP โดยใช้คำสั่งนี้

sudo iptables -t filter -P OUTPUT DROP

จากนั้นฉันต่อท้ายกฎนี้เพื่อยอมรับการรับส่งข้อมูล DNS

sudo iptables -t filter -A OUTPUT -p udp --dport 53 -o ens33 -j ยอมรับ

และฉันรันคำสั่งนี้เพื่อทดสอบนโยบาย

nslookup google.com

และก่อนที่จะเรียกใช้คำสั่งนี้ ฉันเรียกใช้ wireshark บน vm และโฮสต์ของฉัน
จากนั้นคำสั่ง nslookup ใช้เวลาสักครู่และให้ข้อความนี้แก่ฉัน

หมดเวลาการเชื่อมต่อ; ไม่สามารถเข้าถึงเซิร์ฟเวอร์ได้

และ wireshark (บน vm และบนโฮสต์) ไม่ได้จับแพ็กเก็ตใด ๆ

ดังนั้นฉันจึงลบกฎนี้และเพิ่มกฎใหม่

sudo iptables -t filter -A OUTPUT -p udp --dport 53 -j ยอมรับ

และทำเช่นเดิม
ข้อความเดิมปรากฏขึ้นอีกครั้ง แต่ wireshark (บน vm และบนโฮสต์) ดักจับแพ็กเก็ต (คำขอและการตอบสนอง)

จากนั้นฉันก็ลบกฎนี้และเพิ่มกฎถัดไป

sudo iptables -t filter -A OUTPUT -p udp -j ยอมรับ

และทำเช่นเดิม
คราวนี้คำสั่ง nslookup กลับมาพร้อมกับผลลัพธ์และ wireshark captcher แพ็กเก็ต

เหตุใดจึงเกิดขึ้น

ก่อนการทดสอบเหล่านี้ ฉันติดตั้ง snort (บน vm อื่น) และฉันพยายามปล่อยแพ็กเก็ตบางแพ็กเก็ต แต่ก็ไม่ได้
แพ็กเก็ตถูกบันทึกแต่ไม่ตกหล่น
ฉันไม่รู้ว่ากรณีเหล่านี้เกี่ยวข้องกันหรือไม่

Score:0
ธง gn

คำถามของคุณเป็นคำถามที่ดีจริงๆ ไม่มีข้อความแสดงข้อผิดพลาดและทุกอย่างดูถูกต้องด้วยเครื่องมือสอบถามต่างๆ ของ iptables

อย่างไรก็ตาม คุณต้องอนุญาตให้ทราฟฟิกเข้า/ออกจากอินเทอร์เฟซโลคัลลูปแบ็ค แท้จริงแล้ว ดังนั้นคุณต้องมีกฎอีกข้อหนึ่ง อย่างไรก็ตาม คุณไม่จำเป็นต้องใช้ -t ตัวกรอง ส่วนหนึ่ง. ดังนั้นและแก้ไขสำหรับอินเทอร์เฟซเครือข่ายคอมพิวเตอร์ทดสอบของฉัน และฉันใช้ tcpdump แทน wireshark และฉันมีสองเหตุการณ์ที่กำลังทำงานอยู่ หนึ่งเหตุการณ์ใน lo และอีกครั้งใน NIC ของฉัน:

sudo iptables -A OUTPUT -o lo -j ยอมรับ
sudo iptables -A OUTPUT -p udp --dport 53 -o br0 -j ยอมรับ
sudo iptables -P OUTPUT DROP
nslookup google.com
เซิร์ฟเวอร์: 127.0.0.53 <<<<<<< หมายเหตุ:
ที่อยู่: 127.0.0.53#53

คำตอบที่ไม่ได้รับอนุญาต:
ชื่อ: google.co.th
ที่อยู่: 142.251.33.78
ชื่อ: google.co.th
ที่อยู่: 2607:f8b0:400a:806::200e

และ:

doug@s19:~/iptables/tmp$ cat c06.txt
2021-11-21 09:41:07.851723 IP 192.168.111.136.37847 > 192.168.111.1.53: 52661+ [1au] A? กูเกิล.คอม. (39)
2021-11-21 09:41:07.879409 IP 192.168.111.1.53 > 192.168.111.136.37847: 52661 1/0/1 A 142.251.33.78 (55)
2021-11-21 09:41:07.884300 IP 192.168.111.136.52279 > 192.168.111.1.53: 58740+ [1au] AAAA? กูเกิล.คอม. (39)
2021-11-21 09:41:07.899157 IP 192.168.111.1.53 > 192.168.111.136.52279: 58740 1/0/1 AAAA 2607:f8b0:400a:806::200e (67)

และ:

doug@s19:~/iptables/tmp$ cat l01.txt
2021-11-21 09:41:07.850815 IP 127.0.0.1.51470 > 127.0.0.1.51470: UDP ความยาว 1
2021-11-21 09:41:07.851625 IP 127.0.0.1.46738 > 127.0.0.53.53: 31736+ A? กูเกิล.คอม. (28)
2021-11-21 09:41:07.879486 IP 127.0.0.53.53 > 127.0.0.1.46738: 31736 1/0/0 A 142.251.33.78 (44)
2021-11-21 09:41:07.884223 IP 127.0.0.1.35841 > 127.0.0.53.53: 58878+ AAAA? กูเกิล.คอม. (28)
2021-11-21 09:41:07.899259 IP 127.0.0.53.53 > 127.0.0.1.35841: 58878 1/0/0 AAAA 2607:f8b0:400a:806::200e (56)

เหตุใดเซิร์ฟเวอร์จึงดูเหมือนอยู่ในเครื่อง ตามค่าเริ่มต้น Ubuntu จะเรียกใช้ตัวแก้ไขแบบโลคัลสำหรับการบัฟเฟอร์ระเบียน DNS และเช่น:

doug@s19:~$ sudo ss -tulpn | เกรป ":53"
สถานะ Netid Recv-Q Send-Q ที่อยู่ในระบบ:ที่อยู่พอร์ตเพียร์:กระบวนการพอร์ต
udp UNCONN 0 0 127.0.0.53%lo:53 0.0.0.0:* ผู้ใช้:(("systemd-resolve",pid=834,fd=12))
tcp LISTEN 0 4096 127.0.0.53%lo:53 0.0.0.0:* ผู้ใช้:(("systemd-resolve",pid=834,fd=13))

ดูผลลัพธ์ได้จาก sudo systemctl สถานะ systemd- แก้ไขแล้ว และ หน้าคนที่เกี่ยวข้อง.

keroles gamal avatar
in flag
ขอบคุณมาก ฉันทำตามที่คุณบอกและได้ผล แต่ข้อความตอบกลับ nslookup ไม่ใช่สิ่งที่ฉันคาดไว้ คุณช่วยอธิบายได้ไหมว่าเหตุใดข้อความตอบกลับ nslookup จึงบอกว่าเซิร์ฟเวอร์คือลูปแบ็ค "127.0.0.53" ของฉัน ฉันคาดหวัง 8.8.8.8 ฉันลองใช้หลายโดเมนและเซิร์ฟเวอร์ยังคงเป็นลูปแบ็ค "127.0.0.53" ของฉัน เกิดอะไรขึ้นเบื้องหลัง ?
Doug Smythies avatar
gn flag
แก้ไขคำตอบด้วยการตอบกลับความคิดเห็นของคุณ

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา