Il ProxyInfo delle WebExtensions di Firefox supporta i campi nome utente e password SOCKS da Firefox 64. Questi campi appartengono all'interfaccia dell'estensione, non alla finestra del proxy manuale.

Per un'estensione esistente con proxy e autorizzazioni host corrispondenti:

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

Fornisci proxyUser e proxyPassword tramite la gestione delle credenziali dell'estensione. type: 'socks' significa SOCKS5; socks4 non offre la stessa autenticazione con password.

proxyDNS: true delega esplicitamente la risoluzione del nome di destinazione al proxy. Il riferimento a ProxyInfo documenta un valore predefinito false; impostare esplicitamente questo campo evita di dipendere da quel valore predefinito.

Usa questi campi nome utente/password per l'autenticazione SOCKS. proxyAuthorizationHeader serve invece ai proxy della famiglia HTTP.

Il server SOCKS5 deve supportare e accettare l'account. Questo scambio di nome utente e password non crittografa il trasporto; l'HTTPS di destinazione mantiene la propria verifica TLS.

Articoli correlati