Firefox WebExtensions: ตั้งค่าข้อมูลรับรอง SOCKS5 ใน ProxyInfo
ระบุชื่อผู้ใช้และรหัสผ่านในผลลัพธ์ proxy.onRequest ของ Firefox พร้อมระบุเวอร์ชัน SOCKS และนโยบาย DNS ระยะไกลอย่างชัดเจน
ProxyInfo ของ WebExtension ใน Firefox รองรับฟิลด์ชื่อผู้ใช้และรหัสผ่านสำหรับ SOCKS ตั้งแต่ Firefox 64 ฟิลด์เหล่านี้เป็นของอินเทอร์เฟซส่วนขยาย ไม่ใช่ไดอะล็อกพร็อกซีแบบกำหนดเอง
สำหรับส่วนขยายที่มีอยู่แล้วซึ่งมีพร็อกซีและสิทธิ์โฮสต์ที่ตรงกัน:
browser.proxy.onRequest.addListener(() => ({
type: 'socks',
host: 'proxy.example',
port: 1080,
username: proxyUser,
password: proxyPassword,
proxyDNS: true,
}), {urls: ['<all_urls>']});
ระบุ proxyUser และ proxyPassword ผ่านการจัดการข้อมูลรับรองของส่วนขยาย type: socks หมายถึง SOCKS5 ส่วน socks4 ไม่มีการพิสูจน์ตัวตนด้วยรหัสผ่านแบบเดียวกัน
proxyDNS: true มอบหมายการแปลงชื่อปลายทางให้พร็อกซีอย่างชัดเจน เอกสารอ้างอิง ProxyInfo ระบุค่าเริ่มต้นเป็น false การกำหนดฟิลด์นี้อย่างชัดเจนจะหลีกเลี่ยงการพึ่งพาค่าเริ่มต้นนั้น
ใช้ฟิลด์ชื่อผู้ใช้และรหัสผ่านเหล่านี้สำหรับการพิสูจน์ตัวตน SOCKS ส่วน proxyAuthorizationHeader ใช้กับพร็อกซีตระกูล HTTP
เซิร์ฟเวอร์ SOCKS5 ต้องรองรับและยอมรับบัญชี การแลกเปลี่ยนชื่อผู้ใช้และรหัสผ่านนี้ไม่ได้เข้ารหัสการรับส่ง ปลายทาง HTTPS ยังคงมีการตรวจสอบ TLS แยกต่างหาก SOCKS5 เข้ารหัสทราฟฟิกหรือไม่.