ผู้ใช้ 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
อินเทอร์เฟซอยู่ใน นักเทียบท่า
โซนใน ไฟร์วอลล์
. ฉันไม่เห็นอะไรพิเศษในนั้น ฉันต้องทำอย่างไรเพื่อแก้ไขข้อผิดพลาดเหล่านี้ ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชม