El ProxyInfo de las WebExtensions de Firefox admite campos de nombre de usuario y contraseña SOCKS desde Firefox 64. Estos campos pertenecen a la interfaz de la extensión, no al diálogo de proxy manual.

Para una extensión existente con proxy y permisos de host coincidentes:

browser.proxy.onRequest.addListener(() => ({
  type: 'socks',
  host: 'proxy.example',
  port: 1080,
  username: proxyUser,
  password: proxyPassword,
  proxyDNS: true,
}), {urls: ['<all_urls>']});

Proporciona proxyUser y proxyPassword mediante la gestión de credenciales de la extensión. type: 'socks' significa SOCKS5; socks4 no ofrece la misma autenticación por contraseña.

proxyDNS: true delega explícitamente la resolución del nombre de destino al proxy. La referencia de ProxyInfo documenta un valor predeterminado de false; definir este campo explícitamente evita depender de ese valor.

Usa estos campos de nombre de usuario y contraseña para la autenticación SOCKS. proxyAuthorizationHeader sirve para los proxies de la familia HTTP.

El servidor SOCKS5 debe admitir y aceptar la cuenta. Este intercambio de usuario y contraseña no cifra el transporte; el HTTPS de destino conserva su propia verificación TLS.

Artículos relacionados