คำสั่ง iptables --dport
ไม่ตระหนักถึงหนึ่งในตัวเลือกที่นิยมใช้มากที่สุดเมื่อกำหนดกฎ:
ฉันได้รับข้อผิดพลาดนี้:
[root@dragonweyr /home/calyodelphi]# iptables -A INPUT --dport 7777 -j ACCEPT_TCP_UDP
iptables v1.4.7: unknown option `--dport'
Try `iptables -h' or 'iptables --help' for more information.
คำสั่งเพิ่มกฎด้านบนเป็นเพียงตัวอย่างสำหรับการเปิดใช้งานการเชื่อมต่อ Terraria
นี่คือสิ่งที่ฉันมีในปัจจุบันเป็นการกำหนดค่า iptables เปล่า ( listiptables
เป็นนามแฝงiptables -L -v --line-numbers
) และเป็นที่ชัดเจนว่า--dport
ได้ทำงานในอดีตที่ผ่านมา:
root@dragonweyr /home/calyodelphi]# listiptables
Chain INPUT (policy DROP 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
1 39 4368 ACCEPT all -- lo any anywhere anywhere
2 114 10257 ACCEPT all -- any any anywhere anywhere state RELATED,ESTABLISHED
3 1 64 ACCEPT tcp -- eth1 any anywhere anywhere tcp dpt:EtherNet/IP-1
4 72 11610 ACCEPT all -- eth1 any anywhere anywhere
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 91 packets, 10045 bytes)
num pkts bytes target prot opt in out source destination
Chain ACCEPT_TCP_UDP (0 references)
num pkts bytes target prot opt in out source destination
1 0 0 ACCEPT tcp -- any any anywhere anywhere
ฉันพยายามกำหนดโซ่แบบกำหนดเอง (โดยได้รับแรงบันดาลใจจากคำถามนี้ ) เพื่อยอมรับการเชื่อมต่อ tcp & udp ดังนั้นฉันจึงไม่ต้องกำหนดกฎสองข้อสำหรับทุกสิ่งที่ฉันต้องการเปิดใช้งาน tcp และ udp สำหรับ (เช่น Minecraft หรือ เซิร์ฟเวอร์ Terraria หรือบริการอื่นทั้งหมด) แต่สิ่งนี้ใช้ไม่ได้:
[root@dragonweyr /home/calyodelphi]# iptables -P ACCEPT_TCP_UDP DROP
iptables: Bad built-in chain name.
นี่เป็นเรื่องที่น่าหงุดหงิดมากในแง่ที่สุภาพ (จำนวนการสบประมาทที่เกี่ยวข้องกับเรื่องนี้จะทำให้กะลาสีบอกให้ฉันดูปากของฉัน) Google-fu ของฉันแย่มากดังนั้นฉันยังหาวิธีแก้ปัญหาไม่ได้เลย ฉันใช้ CentOS 6.5 บนเราเตอร์ ความช่วยเหลือและคำแนะนำใด ๆ ที่คุณสามารถเสนอได้นั้นยอดเยี่ยม
แก้ไข:
คำถามโบนัส: ฉันวางแผนที่จะกำหนดค่าการส่งต่อพอร์ตเช่นกัน ยังจำเป็นต้องตั้งกฎเพื่อยอมรับการเชื่อมต่อขาเข้าผ่านพอร์ตที่ระบุหรือไม่
-p all
และฉันได้รับข้อผิดพลาดเดียวกันทั้งหมดunknown option --dport
. มันใช้งานได้-p tcp
แต่นั่นไม่ได้ช่วยฉันในกรณีนี้เพราะมันนำไปสู่ปัญหาเดียวกัน: การกำหนดกฎ tcp / udp เฉพาะสำหรับทุกสิ่ง