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

สองการสนทนา สองข้อมูลรับรอง

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

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

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

ตรวจสอบ 1: พร็อกซีใดที่ถูกเลือกจริง

เริ่มต้นด้วยการเลือก เนื่องจากเบราว์เซอร์ที่ละเว้นการตั้งค่าพร็อกซีของคุณจะไม่พบกับความท้าทายเลย ใน Chrome การตั้งค่าสถานะคือ --proxy-server=proxy.example:3128 โดยมี --proxy-bypass-list สำหรับการยกเว้น และ Selenium เปิดเผยสิ่งเดียวกันผ่านตัวเลือกเบราว์เซอร์ ไฟล์ PAC เป็นกลไกที่แตกต่างโดยมีโหมดความล้มเหลวในตัวมันเอง

จากนั้นยืนยันจากภายในสภาพแวดล้อมของเบราว์เซอร์ที่ทำงานอยู่ แทนที่จะยืนยันจากเชลล์ของคุณ โพรบอิสระที่มีพร็อกซีเดียวกันคือ curl -x http://proxy.example:3128 -v https://example.com และเอาต์พุตแบบละเอียดแสดงว่า CONNECT สำเร็จหรือไม่ Proxy-Authenticate ใดที่ส่งคืน และ 407 ถูกส่งคืนหรือไม่ หาก curl ได้รับ 407 และเบราว์เซอร์ค้าง แสดงว่าเส้นทางข้อมูลประจำตัวเป็นปัญหา ไม่ใช่เครือข่าย หาก curl สำเร็จและเบราว์เซอร์ไม่ทำ แสดงว่าเบราว์เซอร์ไม่ได้ใช้พร็อกซีที่คุณคิด

ตรวจสอบ 2: ใครเป็นผู้ตอบ 407

407 มีเจ้าของ และการตั้งชื่อจะเป็นตัวกำหนดว่าการแก้ไขจะไปที่ใด หากปัญหามาจากพร็อกซีของบริษัท การแก้ไขจะเป็นข้อมูลรับรองที่เบราว์เซอร์สามารถแสดงได้โดยไม่ต้องดูแล หากมาจากพร็อกซีอัปสตรีมที่อันแรกส่งต่อไป ข้อมูลรับรองเป็นของฮอพที่สองนั้น และพร็อกซีแรกอาจถ่ายทอดความท้าทายไม่เปลี่ยนแปลง อ่านขอบเขตการรับรองความถูกต้องและโฮสต์ในส่วนหัว Proxy-Authenticate เนื่องจากตั้งชื่อกล่องที่ถาม

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

ตรวจสอบ 3: เส้นทางข้อมูลรับรอง

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

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

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

ตรวจสอบ 4: บริบทเครือข่ายของกระบวนการเบราว์เซอร์เอง

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

บันทึกข้อเท็จจริงห้าประการสำหรับงานที่ล้มเหลว: โฮสต์ของเบราว์เซอร์ พร็อกซีที่กำหนดค่า เส้นทางตัวแก้ไขเริ่มต้น เส้นทางที่เลือก และเจ้าของการตรวจสอบสิทธิ์ จากนั้นส่งคำขอที่ได้รับอนุญาตที่ไม่เป็นอันตรายหนึ่งรายการจากบริบทที่แน่นอนนั้น โดยเปิดการตรวจสอบ TLS ปลายทางและการอนุญาตแอปพลิเคชันตามปกติไว้ เบราว์เซอร์ที่ไม่มีส่วนหัวที่เริ่มต้นได้สำเร็จจะพิสูจน์ได้ว่าไม่มีการรับพร็อกซีหรือความครอบคลุมของ VPN และภาพหน้าจอของหน้าว่างก็พิสูจน์ไม่ได้อะไรเลย คำขอที่ส่งคืน 200 ผ่านทั้งเชนเป็นเพียงหลักฐานเดียวที่นับได้

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

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