แพ็กเกจการจัดเตรียมสร้างการเชื่อมต่อ IKEv2 และโปรไฟล์ที่ได้จะเจรจาสิ่งอื่นที่ไม่ใช่ชุดที่คุณตั้งใจไว้ แพ็กเกจทำหน้าที่ของมันแล้ว มันไม่เคยมีฟิลด์สำหรับงานที่คุณสันนิษฐานไว้เลย มองชุดการเข้ารหัสว่าเป็นขั้นตอนการจัดเตรียมแยกต่างหากที่ตรวจสอบได้

ทำห้าข้อด้านล่างตามลำดับ และแยกผลการยอมรับออกจากกัน

นโยบายสองแบบภายใต้ชื่อที่คล้ายกัน

Windows แยกนโยบายที่ปกป้องการแลกเปลี่ยนคีย์ออกจากนโยบายที่ปกป้องทราฟฟิก ฝั่ง IKE กำหนดค่าด้วยวิธีการเข้ารหัสและวิธีการตรวจสอบความสมบูรณ์ ฝั่งข้อมูลกำหนดค่าด้วยค่าคงที่ของไซเฟอร์และค่าคงที่ของการแปลงการรับรองความถูกต้อง และค่าคงที่เหล่านั้นใช้ชื่อของตัวเอง การคัดลอกป้ายกำกับ AES หนึ่งป้ายลงในฟิลด์ผิดจะสร้างการเชื่อมต่อที่ก่อตั้งขึ้นภายใต้นโยบายที่ไม่มีใครอนุมัติ

กลุ่มการแลกเปลี่ยนคีย์และความลับสมบูรณ์แบบไปข้างหน้าอยู่ในการเจรจาเดียวกันและต้องเป็นที่ยอมรับของเกตเวย์ การตั้งค่าโดยไม่ตรวจสอบปลายทางไกลทำให้เกิดความล้มเหลวในขั้นตอนที่มาหลังจากขั้นตอนที่คุณกำลังแก้ไข ซึ่งเป็นเหตุให้ข้อผิดพลาดเหล่านี้ดูเหมือนปัญหาเกตเวย์

สร้างนโยบายที่สมบูรณ์ ไม่ใช่ชื่ออัลกอริทึมสองชื่อ

เขียนทุกฟิลด์อย่างชัดเจน รวมถึงฟิลด์ที่คุณคิดว่าเป็นค่าเริ่มต้น นโยบายบางส่วนที่ใช้กับแฟล็กบังคับจะกลายเป็นคอนฟิกูเรชันที่บันทึกไว้ และค่าที่คุณละไว้คือค่าที่แพลตฟอร์มมีอยู่ในขณะนั้น ค่าที่ขึ้นต้นด้วยคำนำหน้าเดียวกันไม่สามารถใช้แทนกันระหว่างฟิลด์ได้ และหนึ่งในชื่อการแปลงที่รู้จักใช้ได้เฉพาะในฐานะการแปลงการรับรองความถูกต้อง

$policy = @{
    ConnectionName = 'Corp IKEv2'
    AllUserConnection = $true
    EncryptionMethod = 'AES256'
    IntegrityCheckMethod = 'SHA384'
    CipherTransformConstants = 'AES256'
    AuthenticationTransformConstants = 'SHA384128'
    DHGroup = 'Group19'
    PfsGroup = 'PFS2048'
    Force = $true
}
Set-VpnConnectionIPsecConfiguration @policy

มองบล็อกนั้นเป็นชุดตัวอย่างที่ทั้งสองฝ่ายต้องรองรับ ไม่ใช่ข้อแนะนำ สวิตช์บังคับระงับข้อความถาม มันไม่อนุมัติแพ็กเกจที่คุณยังไม่ได้ตรวจทาน

สร้างก่อน แล้วจึงนำไปใช้ — ในขอบเขตเดียว

การเชื่อมต่อต้องมีอยู่ก่อนจึงจะกำหนดนโยบายได้ และขอบเขตต้องตรงกันในทุกขั้นตอน ขั้นตอนในบริบทของเครื่องไม่สามารถค้นหาโปรไฟล์ส่วนตัวของผู้ใช้ใด ๆ ได้เพียงเพราะชื่อที่แสดงเหมือนกัน การเชื่อมต่อสำหรับผู้ใช้ทั้งหมด การเชื่อมต่อของผู้ใช้ และไดเรกทอรีสถานะของมัน เป็นออบเจ็กต์แยกที่มีชื่อแยก

ลำดับสำคัญกว่าที่เห็นในแพ็กเกจการจัดเตรียม เพราะสองคำสั่งอาจทำงานใกล้กันมากกว่าเวลาที่ใช้สร้างการเชื่อมต่อ จัดแพ็กงานหลังการกำหนดค่าเป็นคำสั่งการจัดเตรียมที่อนุมัติแล้วพร้อมบริบทการทำงานที่ประกาศไว้ และให้เอนจินการจัดเตรียมจัดลำดับแทนการแทรกความล่าช้าที่คาดเดา การนอนหลับที่นานพอบนฮาร์ดแวร์ทดสอบของคุณคือสภาวะการแข่งขันที่แนบความล่าช้าไว้ บันทึกการพึ่งพา ไม่ใช่ระยะเวลา

ฟิลด์ Configuration Designer ที่มีเอกสารอธิบายอธิบายการตั้งค่า VPN หนึ่งรายการ และไม่ได้เปิดเผยการควบคุม IPsec ดั้งเดิมทุกอย่าง หากข้อกำหนดคือการจัดส่งแบบมีการจัดการ ผู้ให้บริการการกำหนดค่า VPNv2 มีส่วนชุดการเข้ารหัสเพื่อจุดประสงค์นี้โดยเฉพาะ

กำหนดเจ้าของนโยบายเพียงรายเดียว

การอัปเดตโปรไฟล์การจัดการในภายหลังสามารถสร้างการเชื่อมต่อใหม่และแทนที่สิ่งที่สคริปต์ใช้ และการแทนที่นั้นจะดูเหมือนการถดถอย ตัดสินใจว่าชุดนี้เป็นของโปรไฟล์ สคริปต์ หรือช่องทางการจัดการ และทำให้การอัปเดตตามปกติเดินเส้นทางเดียวกับการติดตั้งครั้งแรก

เจ้าของสองรายเท่ากับไม่มีเจ้าของเมื่อทั้งสองไม่เห็นด้วย เขียนชื่อเจ้าของลงในบันทึกการเปลี่ยนแปลงของโปรไฟล์ การอัปเดตครั้งถัดไปจะทำตามสิ่งที่บันทึกนั้นบอก

ตรวจสอบผลลัพธ์ที่เจรจา ไม่ใช่แพ็กเกจ

อ่านโปรไฟล์ที่บันทึกไว้และขอบเขตของมัน จากนั้นสร้างการเชื่อมต่อใหม่และเปรียบเทียบข้อเสนอที่เลือกที่เกตเวย์ ยืนยันพฤติกรรมการสร้างคีย์ใหม่ด้วย เพราะการจับมือครั้งแรกอาจสำเร็จกับชุดที่ขั้นตอนหลังปฏิเสธ

Get-VpnConnection -Name 'Corp IKEv2' -AllUserConnection | Format-List
Get-ChildItem 'C:\ProgramData\Microsoft\Network\Connections\Pbk' | Select-Object Name, LastWriteTime

ผลการยอมรับสามอย่างไม่ใช่เหตุการณ์เดียวกัน แพ็กเกจติดตั้งแล้ว โปรไฟล์มีอยู่พร้อมนโยบายที่ตั้งใจ และคู่เจรจาได้เจรจามัน แยกไว้จากกัน เพื่อให้ฟิลด์ที่หายไปไม่ถูกซ่อมด้วยการทำให้การรับรองความถูกต้องอ่อนลงหรือการเปิดใช้ทางเลือกสำรองที่ไม่มีใครเลือก

บทความที่เกี่ยวข้อง