กระบวนการติดตั้งใบรับรอง Charles บน MacOS และ iOS โดยใช้ SIMCTL เกี่ยวข้องกับขั้นตอนที่แตกต่างกันซึ่งสะท้อนให้เห็นถึงสภาพแวดล้อมของระบบปฏิบัติการที่แตกต่างกันและกลไกความปลอดภัย การทำความเข้าใจความแตกต่างเหล่านี้เป็นสิ่งสำคัญสำหรับการกำหนดค่า Charles Proxy อย่างถูกต้องสำหรับการดีบักการรับส่งข้อมูลเครือข่ายโดยเฉพาะการรับส่งข้อมูล HTTPS ในทั้งสองระบบ
ใน MacOS การติดตั้งใบรับรอง Charles ส่วนใหญ่เกี่ยวข้องกับการรวมเข้ากับพวงกุญแจระบบและการกำหนดค่าการตั้งค่าความน่าเชื่อถือ ก่อนอื่นผู้ใช้จะเปิดพร็อกซี Charles และจากเมนูวิธีใช้เลือก "SSL Proxying"> "ติดตั้งใบรับรอง Charles Root" การดำเนินการนี้เปิดแอพการเข้าถึงพวงกุญแจด้วยการเน้นใบรับรอง Charles จากนั้นผู้ใช้จะต้องค้นหาใบรับรองภายในระบบหรือพวงกุญแจเข้าสู่ระบบดับเบิลคลิกเพื่อเปิดรายละเอียดและตั้งค่าการตั้งค่าความน่าเชื่อถือให้เป็น "ความน่าเชื่อถือเสมอ" ในส่วนความน่าเชื่อถือ ขั้นตอนนี้มีความสำคัญเนื่องจากโมเดลความน่าเชื่อถือของ MacOS ต้องการการตั้งค่าความน่าเชื่อถือที่ชัดเจนสำหรับใบรับรองที่จะได้รับการยอมรับโดยไม่มีการเตือน หลังจากทำการเปลี่ยนแปลงเหล่านี้ผู้ใช้อาจจำเป็นต้องรีสตาร์ทเบราว์เซอร์หรือแม้แต่ระบบเพื่อให้แน่ใจว่าความน่าเชื่อถือได้รับการยอมรับในทุกแอปพลิเคชัน ด้วยใบรับรองที่เชื่อถือได้ผู้ใช้จะเปิดใช้งานพร็อกซ์ SSL ใน Charles Proxy ภายใต้เมนูพร็อกซีหลังจากนั้นระบบจะถูกกำหนดค่าสำหรับการสกัดกั้นการรับส่งข้อมูล HTTPS ขั้นตอนเพิ่มเติมเช่นการรีสตาร์ท Charles Proxy และเบราว์เซอร์แนะนำให้ตั้งค่าเสร็จสิ้น การแก้ไขปัญหาอาจเกี่ยวข้องกับการตรวจสอบการตั้งค่าความน่าเชื่อถือหรือติดตั้งใบรับรองอีกครั้งหากปัญหายังคงอยู่
ในทางตรงกันข้ามการติดตั้งใบรับรอง Charles บน iOS โดยเฉพาะอย่างยิ่งภายในเครื่องจำลองเกี่ยวข้องกับกระบวนการที่แตกต่างกันซึ่งอาจซับซ้อนมากขึ้นเนื่องจากนโยบายความปลอดภัยที่เข้มงวดของระบบปฏิบัติการมือถือ การใช้ SIMCTL เครื่องมือบรรทัดคำสั่งของ Apple สำหรับการจัดการเครื่องจำลองให้วิธีการทำให้กระบวนการเป็นไปโดยอัตโนมัติ วิธีหนึ่งเกี่ยวข้องกับการส่งออกใบรับรองรูทจากชาร์ลส์จากนั้นเพิ่มลงในพวงกุญแจของตัวจำลองโดยตรงโดยใช้คำสั่ง `xcrun simctl พวงกุญแจบูต add-root-cert` วิธีการนี้ช่วยให้การจัดการความน่าเชื่อถืออัตโนมัติและหลีกเลี่ยงการโต้ตอบด้วยตนเองภายในเครื่องจำลอง ทางเลือกด้วยตนเองเกี่ยวข้องกับการดาวน์โหลดใบรับรอง Charles Root จาก URL `https: // chls.pro/ssl` บน Safari ของตัวจำลองจากนั้นติดตั้งโปรไฟล์ผ่านการตั้งค่า> ทั่วไป> โปรไฟล์หรือการจัดการอุปกรณ์
นอกจากนี้เอกสารและชุมชนผู้เชี่ยวชาญยังแนะนำการพิจารณาที่สำคัญหลายประการเมื่อทำงานกับเครื่องจำลอง iOS สิ่งเหล่านี้รวมถึงการรับรองว่าใบรับรองจะถูกนำเข้าและเชื่อถือได้อย่างเหมาะสมจัดการกับปัญหาที่อาจเกิดขึ้นเช่นการปักด้วย SSL ที่ป้องกันไม่ให้ชาร์ลส์สกัดกั้นการรับส่งข้อมูลและติดตั้งใบรับรองอีกครั้งหากปัญหาความน่าเชื่อถือเกิดขึ้น สำหรับอุปกรณ์ทางกายภาพกระบวนการเกี่ยวข้องกับการกำหนดค่าอุปกรณ์ให้ใช้ Charles เป็นพร็อกซี HTTP นำทางไปยัง URL ที่ให้ไว้เพื่อดาวน์โหลดใบรับรองและไว้วางใจด้วยตนเองผ่านการตั้งค่า> ทั่วไป> เกี่ยวกับ> การตั้งค่าความน่าเชื่อถือของใบรับรอง กระบวนการบนอุปกรณ์มีความคล้ายคลึงกัน แต่มักจะเกี่ยวข้องกับขั้นตอนเพิ่มเติมเช่นการตั้งค่าการกำหนดค่าพร็อกซีและเชื่อถือใบรับรองอย่างชัดเจนซึ่งเป็นสิ่งจำเป็นเนื่องจาก iOS บังคับใช้การตรวจสอบใบรับรอง SSL ที่เข้มงวด
ความแตกต่างหลักระหว่างการติดตั้งใบรับรอง Charles บน MacOS และ iOS โดยใช้ SIMCTL อยู่กึ่งกลาง:
- วิธีการติดตั้งใบรับรอง: MACOS อาศัยการนำเข้าด้วยตนเองในการเข้าถึงพวงกุญแจและการกำหนดค่าความน่าเชื่อถือในขณะที่บน iOS simulators กระบวนการสามารถอัตโนมัติผ่าน SIMCTL หรือ MANUAL ผ่าน Safari และการตั้งค่าด้วยการปรับความน่าเชื่อถือ
- การกำหนดค่าความน่าเชื่อถือ: MacOS ต้องการการตั้งค่าความน่าเชื่อถืออย่างชัดเจนในระบบพวงกุญแจ บน iOS simulators ความน่าเชื่อถือสามารถตั้งโปรแกรมผ่าน SIMCTL หรือผ่านการตั้งค่าความน่าเชื่อถือในโปรไฟล์อุปกรณ์และสำหรับอุปกรณ์ทางกายภาพการตั้งค่าความน่าเชื่อถือได้รับการจัดการผ่านการตั้งค่าการจัดการอุปกรณ์
- ความสามารถในระบบอัตโนมัติ: SIMCTL เปิดใช้งานการเขียนสคริปต์และระบบอัตโนมัติสำหรับเครื่องจำลอง iOS ช่วยให้สามารถเพิ่มและเชื่อถือได้โดยไม่ต้องมีการโต้ตอบกับ GUI ด้วยตนเองซึ่งเป็นไปไม่ได้ใน MACOS เนื่องจากเกี่ยวข้องกับการดัดแปลงพวงกุญแจด้วยตนเอง
- นโยบายความปลอดภัย: นโยบายความปลอดภัยของ iOS นั้นเข้มงวดยิ่งขึ้นโดยเฉพาะอย่างยิ่งในอุปกรณ์การผลิตที่ต้องได้รับการรับรองอย่างชัดเจนสำหรับการสกัดกั้น HTTPS และ SSL แบบเต็มรูปแบบเพื่อทำงานอย่างถูกต้อง MacOS ในขณะที่ยังปลอดภัยให้ความยืดหยุ่นมากขึ้นในการไว้วางใจใบรับรองผ่านการจัดการพวงกุญแจระบบ
เป้าหมายโดยรวมในสภาพแวดล้อมทั้งสองคือการสร้างใบรับรองรูทที่เชื่อถือได้ซึ่งอนุญาตให้ Charles Proxy สามารถถอดรหัสทราฟฟิก HTTPS สำหรับการดีบัก วิธีการเกี่ยวกับ MacOS เน้นการกำหนดค่าความน่าเชื่อถือด้วยตนเองภายในการเข้าถึงพวงกุญแจในขณะที่บน iOS simulators โฟกัสคือการใช้ประโยชน์จากคำสั่ง SIMCTL หรือการจัดการความน่าเชื่อถือตามโปรไฟล์โดยมีการพิจารณาเพิ่มเติมสำหรับนโยบายการตรึง SSL และนโยบายความปลอดภัยของอุปกรณ์
ทั้งสองวิธีต้องมีการตรวจสอบอย่างรอบคอบเพื่อให้แน่ใจว่าใบรับรองได้รับการติดตั้งและเชื่อถือได้อย่างถูกต้องช่วยให้การสกัดกั้น HTTPS ไร้รอยต่อใน Proxy Charles สำหรับการดีบักที่มีประสิทธิภาพและการตรวจสอบการรับส่งข้อมูลเครือข่ายใน MacOS, iOS Simulators หรืออุปกรณ์จริง