ฉันมี Ubuntu VM ที่ทำหน้าที่เป็น WireGuard เครือข่ายของฉันมีเพียงพอร์ต WireGuard ที่ส่งต่อไปยัง VM ของฉัน (51820 ถึง 192.168.1.2)ฉันคิดว่า iptables ของฉัน (ด้านล่าง) ได้รับการตั้งค่าให้อนุญาตเฉพาะ (1) SSH จาก LAN ของฉัน (2) การเชื่อมต่อไปยังพอร์ต WireGuard ของฉัน (3) SSH จาก WG peer ของฉัน (4) ทราฟฟิกที่เกี่ยวข้อง/สร้างขึ้น และ (5) ทราฟฟิกย้อนกลับ
อย่างไรก็ตาม ฉันยังคงทิ้งการเชื่อมต่อขาเข้าไปยังพอร์ตที่ไม่ใช่ WireGuard เช่น:
14 ก.พ. 03:42:08 เคอร์เนล wireguard: [672816.748776] DROPPED IN=ens3 OUT= MAC=b0:a4:66:b9:e6:0b:1b:73:02:d8:fa:6f:08:00 SRC= 90.114.208.130 DST=192.168.1.2 LEN=40 TOS=0x00 PREC=0x00 TTL=50 ID=44010 DF PROTO=TCP SPT=443 DPT=34548 WINDOW=0 RES=0x00 RST URGP=0
MAC และ SRC ถูกสุ่ม; อย่างไรก็ตาม ส่วนแรกของ MAC คือที่อยู่ MAC ของอินเทอร์เฟซ ens3 ของ VM ของฉัน ส่วนที่สองอยู่ใกล้กับ MAC ของเราเตอร์ของฉัน (อักขระตัวสุดท้ายต่างกัน)
คำถาม: จะมีคำขอการเชื่อมต่อเข้ามาที่พอร์ตได้อย่างไร นอกเหนือจาก 51820 เมื่อเราเตอร์ของฉันเปิดและส่งต่อเพียงพอร์ตเดียว เราเตอร์จะไม่ทิ้งแพ็กเก็ตเหล่านั้นเนื่องจากพอร์ต (เช่น 34548) ไม่ได้เปิดอยู่ใช่หรือไม่
iptables (สำหรับการอ้างอิง):
Chain INPUT (นโยบาย DROP 310 แพ็คเก็ต, 24890 ไบต์)
num pkts bytes target prot เลือกใช้ปลายทางต้นทาง
1 3155 218K ยอมรับ tcp -- ens3 * 192.168.1.0/24 0.0.0.0/0 tcp dpt:22 ctstate ใหม่ ก่อตั้งแล้ว
2 0 0 ยอมรับ udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:51820
3 0 0 ยอมรับ tcp -- wg0 * 10.6.0.2 0.0.0.0/0 tcp dpt:22 ctstate ใหม่ ก่อตั้งแล้ว
4 175K 398M ยอมรับทั้งหมด -- * * 0.0.0.0/0 0.0.0.0/0 ctstate ที่เกี่ยวข้อง ก่อตั้ง
5 266 19635 ยอมรับทั้งหมด -- แท้จริง * 0.0.0.0/0 0.0.0.0/0
6 310 24890 LOG ทั้งหมด -- * * 0.0.0.0/0 0.0.0.0/0 LOG แฟล็ก 0 ระดับ 4 คำนำหน้า "DROPPED "
เชน FORWARD (นโยบาย DROP 0 แพ็กเก็ต 0 ไบต์)
num pkts bytes target prot เลือกใช้ปลายทางต้นทาง
1 0 0 WG_wg0 ทั้งหมด -- * * 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (นโยบายยอมรับแพ็กเก็ต 23M, 32G ไบต์)
num pkts bytes target prot เลือกใช้ปลายทางต้นทาง
เชน WG_wg0 (อ้างอิง 1 รายการ)
num pkts bytes target prot เลือกใช้ปลายทางต้นทาง
1 0 0 ยอมรับทั้งหมด -- * wg0 0.0.0.0/0 0.0.0.0/0 ctstate ที่เกี่ยวข้อง ก่อตั้ง
2 0 0 ยอมรับทั้งหมด -- wg0 * 10.6.0.2 0.0.0.0/0
3 0 0 วางทั้งหมด -- wg0 * 0.0.0.0/0 0.0.0.0/0
4 0 0 คืนทั้งหมด -- * * 0.0.0.0/0 0.0.0.0/0