Score:1

ปัญหาระหว่างนักเทียบท่าและ firewalld/iptables

ธง co
dan

ผู้ใช้ OpenSUSE 15.3 ที่นี่ ฉันทำผิดกฎเริ่มต้นที่สร้างโดยนักเทียบท่าบน iptables และไม่สามารถหาวิธีแก้ไขได้ ฉันลองติดตั้งนักเทียบท่าใหม่แล้ว นี่คือสิ่งที่เกิดขึ้น:

vm-dev:~ # systemctl เริ่มนักเทียบท่า

vm-dev:~ # หาง /var/log/messages | grep ไฟร์วอลล์
2022-04-21T00:53:25.607359-04:00 vm-dev firewalld[19494]: คำเตือน: COMMAND_FAILED: '/usr/sbin/iptables -w10 -t nat -D OUTPUT -m addrtype --dst-type LOCAL - j DOCKER' ล้มเหลว: iptables: ไม่มีเชน/เป้าหมาย/ตรงกับชื่อนั้น
2022-04-21T00:53:25.610567-04:00 vm-dev firewalld[19494]: คำเตือน: COMMAND_FAILED: '/usr/sbin/iptables -w10 -t nat -D PREROUTING' ล้มเหลว: iptables: กฎไม่ถูกต้อง (ทำ มีกฎการจับคู่อยู่ในห่วงโซ่นั้นหรือไม่)
2022-04-21T00:53:25.614009-04:00 vm-dev firewalld[19494]: คำเตือน: COMMAND_FAILED: '/usr/sbin/iptables -w10 -t nat -D OUTPUT' ล้มเหลว: iptables: กฎไม่ถูกต้อง (ทำ มีกฎการจับคู่อยู่ในห่วงโซ่นั้นหรือไม่)
2022-04-21T00:53:25.646315-04:00 vm-dev firewalld[19494]: คำเตือน: COMMAND_FAILED: '/usr/sbin/iptables -w10 -t filter -F DOCKER-ISOLATION' ล้มเหลว: iptables: ไม่มีเชน/ กำหนดเป้าหมาย / ตรงกับชื่อนั้น
2022-04-21T00:53:25.649905-04:00 vm-dev firewalld[19494]: คำเตือน: COMMAND_FAILED: '/usr/sbin/iptables -w10 -t filter -X DOCKER-ISOLATION' ล้มเหลว: iptables: ไม่มีเชน/ กำหนดเป้าหมาย / ตรงกับชื่อนั้น
2022-04-21T00:53:25.705446-04:00 vm-dev firewalld[19494]: คำเตือน: COMMAND_FAILED: '/usr/sbin/iptables -w10 -D FORWARD -i docker0 -o docker0 -j DROP' ล้มเหลว: iptables : กฎไม่ถูกต้อง (มีกฎการจับคู่อยู่ในห่วงโซ่นั้นหรือไม่)
2022-04-21T00:53:25.890988-04:00 vm-dev firewalld[19494]: คำเตือน: COMMAND_FAILED: '/usr/sbin/iptables -w10 -D FORWARD -i docker0 -o docker0 -j DROP' ล้มเหลว: iptables : กฎไม่ถูกต้อง (มีกฎการจับคู่อยู่ในห่วงโซ่นั้นหรือไม่)

จากนั้นทุกครั้งที่ฉันทำ ไฟร์วอลล์ cmd --reload, ฉันเข้าใจ:

2022-04-21T00:53:35.536326-04:00 vm-dev firewalld[19494]: คำเตือน: COMMAND_FAILED: '/usr/sbin/iptables -w10 -D FORWARD -i docker0 -o docker0 -j DROP' ล้มเหลว: iptables : กฎไม่ถูกต้อง (มีกฎการจับคู่อยู่ในห่วงโซ่นั้นหรือไม่)

นี่คือข้อมูลเพิ่มเติมบางส่วนจากความคิดเห็น:

vm-dev:~ # iptables -t แนท --list
ห่วงโซ่ PREROUTING (ยอมรับนโยบาย)
เป้าหมาย prot เลือกปลายทางต้นทาง
นักเทียบท่าทั้งหมด -- ทุกที่ ทุก ADDRTYPE ตรงกับ dst-type LOCAL

เชนอินพุท (ยอมรับนโยบาย)
เป้าหมาย prot เลือกปลายทางต้นทาง

Chain OUTPUT (ยอมรับนโยบาย)
เป้าหมาย prot เลือกปลายทางต้นทาง
DOCKER ทั้งหมด -- ทุกที่ !127.0.0.0/8 ADDRTYPE ตรงกับ dst-type LOCAL

ห่วงโซ่โพสต์ (ยอมรับนโยบาย)
เป้าหมาย prot เลือกปลายทางต้นทาง
สวมหน้ากากทั้งหมด -- 172.17.0.0/16 ที่ใดก็ได้

Chain DOCKER (ข้อมูลอ้างอิง 2 รายการ)
เป้าหมาย prot เลือกปลายทางต้นทาง
คืนทั้งหมด - ทุกที่ทุกที่

ข้อมูลเพิ่มเติมบางส่วนที่ร้องขอโดย @4snok:

vm-dev:~ # ค้นหา /etc/firewalld/ -ชื่อ "*.xml"
/etc/firewalld/lockdown-whitelist.xml
/etc/firewalld/zones/public.xml
/etc/firewalld/zones/trusted.xml
/etc/firewalld/zones/docker.xml

vm-dev:~ # cat /etc/firewalld/zones/docker.xml
<?xml version="1.0" encoding="utf-8"?>
<โซนเวอร์ชัน="1.0" target="ACCEPT">
  <short>นักเทียบท่า</short>
  <description>โซนสำหรับการเชื่อมต่อเครือข่าย docker bridge</description>
  <ชื่ออินเทอร์เฟซ="docker0"/>
</โซน>

ฉันไม่มีนักเทียบท่าที่กำลังทำงานอยู่ อันที่จริง ฉันถอนการติดตั้งนักเทียบท่า ลบออกแล้ว /var/lib/นักเทียบท่า สมบูรณ์แล้วติดตั้งใหม่และข้อผิดพลาดยังคงอยู่ เดอะ นักเทียบท่า0 อินเทอร์เฟซอยู่ใน นักเทียบท่า โซนใน ไฟร์วอลล์. ฉันไม่เห็นอะไรพิเศษในนั้น ฉันต้องทำอย่างไรเพื่อแก้ไขข้อผิดพลาดเหล่านี้ ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชม

Stephan Pieterse avatar
ca flag
จากข้อผิดพลาดแรก คุณมีเชนใน iptables ชื่อ DOCKER หรือไม่ `iptables -t nat --list` ควรแสดงเมื่อรันด้วย `sudo` หากไม่มี คุณสามารถลองเพิ่มด้วย `iptables -t nat -N DOCKER` แล้วลองใหม่อีกครั้ง
dan avatar
co flag
dan
@StephanPieterse `DOCKER` อยู่ที่นั่น ฉันเพิ่มผลลัพธ์ไปยังโพสต์หลักแล้ว
co flag
คุณกำลังประสบกับความล้มเหลวอะไรบ้าง? นี่คือคำเตือน และฉันสงสัยว่าคำเตือนอาจมากเกินไปสำหรับข้อความบันทึกนั้นหรือไม่ ข้อมูลน่าจะเหมาะสมกว่า
dan avatar
co flag
dan
ไม่มีคำเตือนหลังจากติดตั้งใหม่ ฉันไม่พบความล้มเหลวใดๆ มีเพียงคำเตือนในบันทึกที่ Nagios ตรวจสอบ...
4snok avatar
es flag
แฟล็ก D F & X ลบกฎ โดยพื้นฐานแล้วนักเทียบท่ากำลังพยายามลบกฎที่ไม่มีอยู่ :)
dan avatar
co flag
dan
@4snok นี่คือเมื่อเปิดบริการนักเทียบท่าหรือเมื่อใดก็ตามที่โหลดไฟร์วอลล์ใหม่ ฉันต้องแก้ไขอะไรใน firewalld เพื่อป้องกันไม่ให้พยายามลบกฎเมื่อมีการโหลดซ้ำ
4snok avatar
es flag
ตรวจสอบไฟล์นี้ /etc/firewalld/direct.xml ซึ่งควรมีกฎปัญหาของคุณ
4snok avatar
es flag
หากเป็นเซิร์ฟเวอร์สำหรับนักพัฒนา คุณสามารถลบไฟล์นี้และติดตั้งนักเทียบท่าใหม่ได้
dan avatar
co flag
dan
@4snok ฉันแก้ไขข้อความต้นฉบับของฉันด้วยเนื้อหาของ /etc/firewalld/ ไม่มี direct.xml ฉันได้ลองลบ docker.xml แล้ว แต่นั่นก็ไม่ได้ช่วยอะไรเช่นกัน

โพสต์คำตอบ

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