ฟิลเตอร์ทราฟฟิก VPN หรือกฎ IPsec: Windows บังคับพอร์ตที่ไหน
เส้นทางเห็นปลายทาง ไม่ใช่บริการ ตัดสินใจว่าคุณต้องมีฟิลเตอร์การเข้าถึงบนโปรไฟล์ VPN หรือกฎ IPsec ที่กำหนดให้ต้องมีการป้องกันสำหรับโฟลว์
ผู้ใช้ VPN ของ Windows หนึ่งคนควรเข้าถึง HTTPS บนเซิร์ฟเวอร์และไม่เข้าถึง SMB บนเซิร์ฟเวอร์เดียวกัน และเส้นทางไม่สามารถแสดงสิ่งนั้นได้ คำขอทั้งสองมีที่อยู่ปลายทางเดียวกัน ดังนั้นคำนำหน้าที่ส่งทราฟฟิกเข้าอุโมงค์ก็พาโฟลว์ที่คุณต้องการกันออกไปด้วย การแยกทั้งสองต้องใช้กฎที่ตรวจสอบสิ่งที่ละเอียดกว่าปลายทาง
เจตนาที่แตกต่างกันสองอย่างถูกสร้างด้วยกลไก Windows ที่แตกต่างกันสองแบบ การผสมทั้งสองเข้าด้วยกันทำให้ได้นโยบายที่ดูสมบูรณ์แต่บังคับใช้เพียงครึ่งเดียวของสิ่งที่คุณตั้งใจ
เส้นทางไม่สามารถแยกบริการสองอย่างบนที่อยู่เดียว
การกำหนดเส้นทาง VPN แบบดั้งเดิมอิงกับคำนำหน้า โดยตัดสินว่าเส้นทางใดไปในอุโมงค์และเส้นทางใดอยู่ข้างนอก เป็นเครื่องมือที่ถูกต้องในการเก็บซับเน็ตหนึ่งไว้ข้างในและอีกอันไว้ข้างนอก และโดยโครงสร้างแล้วมันมองไม่เห็นพอร์ต ฟิลเตอร์ทราฟฟิกบนโปรไฟล์ VPN เพิ่มมิติที่สอง คือจับคู่โปรโตคอล ที่อยู่ระยะไกล และ พอร์ตระยะไกล กับสิ่งที่อาจข้ามส่วนต่อประสานนั้นได้ กฎ IPsec ทำงานในที่ที่สาม และแสดงว่าโฟลว์ใดต้องมีการป้องกันและตรวจสอบสิทธิ์กับใคร ทั้งสามตอบคำถามต่างกันและไม่มีสิ่งใดแทนที่กันได้
เริ่มด้วยการเขียนประโยคที่ตั้งใจไว้ การอนุญาตเฉพาะ HTTPS เป็นประโยคเรื่องการเข้าถึง ขณะที่การกำหนดให้ต้องมี IPsec สำหรับ HTTPS เป็นประโยคเรื่องการป้องกัน และทั้งสองนำไปสู่การกำหนดค่าที่ต่างกัน
ข้อจำกัดการเข้าถึงและข้อกำหนดการป้องกันแยกจากกัน
ข้อจำกัดการเข้าถึงบอกว่าอะไรใช้ส่วนต่อประสานได้ และบังคับใช้โดยอนุญาตชุดหนึ่งและปฏิเสธทุกอย่างอื่น ข้อกำหนดการป้องกันบอกว่าโฟลว์ใดต้องถูกเข้ารหัสและตรวจสอบสิทธิ์ และบังคับใช้โดยเจรจาความเชื่อมโยงความปลอดภัยที่สอดคล้องกัน อย่างแรกสร้างคำขอที่ถูกบล็อกเมื่อบางสิ่งไม่อยู่ในรายการ ส่วนอย่างที่สองสร้างการเชื่อมต่อที่อาจพาการป้องกันที่กำหนดหรือไม่เกิดขึ้นเลย การปฏิบัติต่อสิ่งหนึ่งเหมือนอีกสิ่งหนึ่งคือวิธีที่นโยบายลงเอยด้วยการไม่บล็อกอะไรเลยหรือไม่ป้องกันอะไรเลย
ผลในทางปฏิบัติคือรายการฟิลเตอร์เป็นชุดปิด เมื่อมีรายการบนโปรไฟล์ ทราฟฟิกบนส่วนต่อประสานนั้นที่ไม่ตรงกับรายการใดจะถูกปฏิเสธ ดังนั้น DNS การแลกเปลี่ยนการตรวจสอบสิทธิ์ และการพึ่งพาใดที่แอปพลิเคชันต้องการต้องมีรายการของตัวเอง การเพิ่มกฎกว้างหนึ่งข้อเพื่อระงับการปฏิเสธจะเปิดส่วนต่อประสานทั้งหมดอีกครั้งและยกเลิกข้อจำกัดอย่างเงียบ ๆ รายการควรสั้นเท่าที่ข้อกำหนดอนุญาตและครบถ้วนเท่าที่แอปพลิเคชันต้องการ
สร้างรายการฟิลเตอร์เป็นชุดที่สมบูรณ์
โปรไฟล์ VPNv2 มีรายการฟิลเตอร์แยกจากรายการเส้นทาง และรายการย่อยเป็นคุณสมบัติของโปรไฟล์ไม่ใช่คำสั่ง สำหรับตัวอย่าง HTTPS รายการต้องมีโปรโตคอล 6 ที่อยู่ระยะไกล และพอร์ตระยะไกล ซึ่งนำไปใช้ผ่านช่องทางบริหารจัดการหรือ ProfileXML สำหรับชนิดโปรไฟล์ที่ใช้อยู่ คำนิยามฟิลเตอร์ทราฟฟิก VPNv2 ของ Microsoft ระบุว่าเงื่อนไขภายในกฎเดียวรวมกัน ขณะที่ตัวระบุกฎแยกทำหน้าที่เป็นทางเลือก
TrafficFilterList/0/Protocol = 6
TrafficFilterList/0/RemoteAddressRanges = 10.60.4.20/32
TrafficFilterList/0/RemotePortRanges = 443
RouteList/0/Address = 10.60.4.0/24
ค่าพอร์ตในรายการนั้นอธิบายพอร์ตบริการที่ปลายทางไกล และพอร์ตภายในควรคงไว้โดยไม่มีข้อจำกัดเพื่อไม่ให้พอร์ตต้นทางชั่วคราวของไคลเอนต์ถูกฟิลเตอร์ออก การทำกลับกันจะได้กฎที่ไม่ตรงกับสิ่งใดและปริศนาที่กินเวลาครึ่งวัน
เขียนเส้นทางและฟิลเตอร์เป็นสองการตัดสินใจแยกกัน เส้นทางตัดสินว่าเซิร์ฟเวอร์นี้เข้าถึงได้ผ่านอุโมงค์ และฟิลเตอร์ตัดสินว่าบริการใดใช้เส้นทางนั้นได้
พิสูจน์ผลลัพธ์ทั้งสองด้วยคำขอสองครั้ง
ทดสอบโฟลว์ที่อนุญาตและโฟลว์ที่ถูกปฏิเสธแยกกัน และอ่านความล้มเหลวแทนหน้าที่หายไป การปฏิเสธที่มาเร็วคือการตัดสินนโยบาย ขณะที่การหมดเวลาน่าจะเป็นเส้นทางที่หายไปหรือบริการที่ไม่ได้รับฟัง คำสั่งด้านล่างรันคำขอทั้งสองและแสดงกฎที่บังคับใช้
Test-NetConnection 10.60.4.20 -Port 443
Test-NetConnection 10.60.4.20 -Port 445
Get-NetIPsecRule -DisplayName *Vpn*
Get-VpnConnection -Name Corp
การปฏิเสธอย่างรวดเร็วในการทดสอบ SMB พร้อมการทดสอบ HTTPS ที่สำเร็จคือผลลัพธ์ที่ฟิลเตอร์ควรสร้าง การปฏิเสธบนทั้งสองพอร์ตหมายความว่ารายการขาดสิ่งที่เซสชันต้องการ และการหมดเวลาบนทั้งสองชี้ไปที่การกำหนดเส้นทางมากกว่าการฟิลเตอร์ หากโฟลว์ที่ได้รับการป้องกันแสดง ไม่มีความเชื่อมโยงความปลอดภัย ในผลลัพธ์ IPsec แสดงว่าข้อกำหนดการป้องกันไม่บรรลุแม้การเชื่อมต่อจะสำเร็จ อ่านผลลัพธ์ทั้งสี่ร่วมกัน เพราะแต่ละอย่างเดียวสนับสนุนเรื่องราวที่ต่างกัน
บันทึกโปรไฟล์ที่มีผล ชุดกฎ และนโยบายของอีกฝ่ายพร้อมผลลัพธ์ บันทึกความเข้ากันได้ในอดีตเกี่ยวกับไคลเอนต์ Windows รุ่นเก่าไม่ได้อธิบายว่าคุณลักษณะโปรไฟล์ที่จัดการในปัจจุบันรองรับอะไรบนเกตเวย์หนึ่ง ๆ พฤติกรรมเฉพาะเวอร์ชันเป็นของบันทึก ไม่ใช่ของสมมติฐาน