ฉันต้องการความช่วยเหลือในการกำหนดค่าสถานการณ์ต่อไปนี้: การท่องเว็บของเครือข่ายสถาบันขนาดเล็กทำผ่านพร็อกซีเซิร์ฟเวอร์ที่มีการกำหนดค่าการรับรองความถูกต้องใน Debian เป็นพร็อกซี/ไฟร์วอลล์ (โดยใช้กฎ iptables) และเชื่อมต่อกับพร็อกซีหลัก ไคลเอ็นต์ของ LAN จะไม่ทำการสืบค้น DNS ใดๆ ภายนอกเนื่องจากการท่องเว็บทั้งหมดผ่านพร็อกซี และไม่จำเป็นต้องใช้การเข้าถึงบริการภายนอกประเภทอื่นๆ ตอนนี้: เราต้องเข้าถึงเซิร์ฟเวอร์ jitsi ที่ที่อยู่ IP เฉพาะ xxx.xxx.xxx.xxxการเข้าถึงเว็บไปยังเซิร์ฟเวอร์ jitsi นั้นใช้ได้ในแง่ที่ว่าพร็อกซีดูแลมัน แต่แพ็กเก็ตไปยังพอร์ต UDP 10000 และ TCP 4443 ตามลำดับ ฉันไม่สามารถจัดการได้ในกฎ iptables
รูปแบบเครือข่ายมีดังนี้:
LAN บน eth0 (192.168.0.0/24) ---- (192.168.0.1 ens18)debian proxy/firewall(192.168.1.2 ens19) -- (192.168.1.1)MODEM ROUTER---->ISP
กฎ iptables มีดังนี้:
*กรอง
:ทิ้งไปข้างหน้า [0:0]
:อินพุตลดลง [0:0]
:เอาต์พุตลดลง [0:0]
# ##### INPUT chain ###### ยอมรับการเชื่อมต่อที่เกี่ยวข้องหรือเสถียร
-A INPUT -m เชื่อมต่อ ! -i lo --ctstate ที่เกี่ยวข้อง ก่อตั้งขึ้น -j ยอมรับ
-A INPUT -p icmp -m icmp --icmp-type echo-request -j ยอมรับ
-A INPUT -p udp -m udp -m conntrack --dport 33434:33534 --ctstate ใหม่ -j ปฏิเสธ
#กฎป้องกันการปลอมแปลง
-อินพุต ! -s 192.168.0.0/24 -i ens18 -j LOG --log-คำนำหน้า "SPOOFED PKT"
-อินพุต ! -s 192.168.0.0/24 -i ens18 -j DROP
# LAN ไปยังพร็อกซีท้องถิ่น
-A INPUT -p tcp -m state -s 192.168.0.0/24 -i ens18 --dport 8080 --state NEW -j ยอมรับ
# การเข้าถึงรายงานเว็บ
-A INPUT -p tcp -m state -s 192.168.0.2/24 -i ens18 --dport 80 --state NEW -j ยอมรับ
# การเข้าถึง SSH
-A INPUT -p tcp -m state -s 192.168.0.2/24 -i ens18 --dport 22 --state NEW -j ยอมรับ
# ซิงค์เวลาสำหรับ LAN
-A INPUT -p udp -i ens18 -m state --sport 123 --state NEW -j ยอมรับ
# การเข้าถึงเว็บมิน
-A INPUT -p tcp -m state -s 192.168.0.2/24 -i ens18 --dport 10,000 --state NEW -j ยอมรับ
# บันทึกส่วนที่เหลือและปล่อยตามห่วงโซ่อินพุตเริ่มต้น
-อินพุต ! -i lo -j LOG --log-คำนำหน้า "DROP INPUT" --log-ip-options --log-tcp-options
-A OUTPUT -m state --state INVALID -j LOG --log-prefix "DROP INVALID" --log-ip-options --log-tcp-options
-A OUTPUT -m state --state INVALID -j DROP
-A OUTPUT -m state --state ESTABLISHED, RELATED -j ยอมรับ
# ##### OUTPUT chain ###### ## ยอมรับกฎสำหรับการอนุญาตการเชื่อมต่อออก
-A OUTPUT -p tcp -m state --dport 21 --state ใหม่ -j ยอมรับ
-A OUTPUT -p tcp -m state --dport 80 --state ใหม่ -j ยอมรับ
-A OUTPUT -p tcp -m state --dport 443 --state ใหม่ -j ยอมรับ
-A OUTPUT -p udp -m state --dport 123 --state NEW -j ยอมรับ
# เซิร์ฟเวอร์ DNS ภายนอก (เข้าถึงได้เท่านั้น ไม่เปิดใช้งานการเรียกซ้ำ)
-A OUTPUT -p udp -m state -d XXX.XXX.XXY.131 --dport 53 --state NEW -j ยอมรับ
-A OUTPUT -p tcp -m state -d XXX.XXX.XXX.132 --dport 53 --state NEW -j ยอมรับ
-A OUTPUT -m state -d XXX.XXX.XXX.68 --state NEW -j ยอมรับ
**# พยายามเข้าถึงเซิร์ฟเวอร์ JITSI
-A OUTPUT -m สถานะ -d XXX.XXX.ZXX.XXX --state ใหม่ -j ยอมรับ **
-A OUTPUT -p icmp --icmp-type echo-request -j ยอมรับ
# ##### FORWARD chain ###### ยอมรับการเชื่อมต่อที่เกี่ยวข้องหรือเสถียร
-A FORWARD -m state --state INVALID -j LOG --log-prefix "DROP INVALID" --log-ip-options --log-tcp-options
-A FORWARD -m state --state INVALID -j DROP
-A FORWARD -m state --state ESTABLISHED, RELATED -j ยอมรับ
-ไปข้างหน้า ! -s 192.168.0.0/24 -i ens18 -j LOG --log-คำนำหน้า "SPOOFED PKT"
-ไปข้างหน้า ! -s 192.168.0.0/24 -i ens18 -j DROP
# ป้องกันการส่งต่อแพ็คเก็ตสำหรับการเชื่อมต่อที่เริ่มต้นจากภายนอก (การปลอมแปลง)
-A FORWARD -m state -i ens19 --state NEW -j DROP
# ## กฎบันทึกเริ่มต้น
-ไปข้างหน้า ! -i lo -j LOG --log-คำนำหน้า "DROP FORWARD" --log-ip-options --log-tcp-options
ให้สัญญา
# สมบูรณ์
# สร้างโดยเว็บมิน
* แหลกเหลว
:เอาต์พุตยอมรับ [0:0]
:อินพุต ยอมรับ [0:0]
:ส่งต่อ ยอมรับ [0:0]
: ยอมรับ [0:0]
:หลังยอมรับ [0:0]
ให้สัญญา
# สมบูรณ์
# สร้างโดยเว็บมิน
*แนท
:เอาต์พุตยอมรับ [0:0]
:อินพุต ยอมรับ [0:0]
: ยอมรับ [0:0]
:หลังยอมรับ [0:0]
# แหล่ง NAT สำหรับเครือข่าย LAN บน
-A POSTROUTING -o ens19 -j SNAT --to-source 192.168.1.2
# สวมหน้ากาก (สำหรับที่อยู่ IP แบบไดนามิกในกรณีของโมเด็ม DHCP)
-A โพสต์ -s 192.168.0.0/24 -o ens19 -j MASQUERADE
ให้สัญญา
# สมบูรณ์
**** สิ่งที่น่าสนใจด้วยกฎไฟร์วอลล์เดียวกันนี้: เราสามารถเข้าถึงการประชุมทางวิดีโอบนเซิร์ฟเวอร์ได้ https://meet.jit.si โดยไม่มีปัญหา
ผู้ดูแลระบบเซิร์ฟเวอร์ jitsi ที่ xxx.xxx.xxx.xxx ระบุว่าจำเป็นต้องเข้าถึงพอร์ต UDP 10000 และ TCP 4443 เท่านั้นตามที่ฉันอธิบาย และแน่นอน 443 (ซึ่งจัดการโดยพร็อกซีเครือข่าย)