Usare la proprietà del socket per spezzare un ciclo di reindirizzamento del proxy locale
Escludete i socket in uscita del processo proxy da un reindirizzamento OUTPUT locale invece di indovinare le sue porte di origine.
Un proxy di intercettazione locale apre nuove connessioni in uscita. Se un reindirizzamento OUTPUT generale cattura anche quei socket, rimanda il proxy al suo stesso listener.
Per una configurazione IPv4 iptables NAT esistente, un'identità di servizio dedicata può distinguere quei socket:
-A OUTPUT -p tcp -m owner ! --uid-owner proxyuser \
-m multiport --dports 80,443 -j REDIRECT --to-ports 8080
Questo frammento di regole presuppone che il listener capace di intercettazione esista già sulla porta 8080 e che i socket in uscita del proxy appartengano a proxyuser. Le connessioni di quell'utente sono escluse da questa regola; le connessioni idonee di altri utenti vengono reindirizzate.
Un browser di solito sceglie una porta di origine effimera. Far corrispondere la porta di origine 80 o 443 non è un modo affidabile per riconoscere le sue connessioni al sito né per esentare il proxy.
La corrispondenza del proprietario riguarda il traffico generato localmente con la proprietà del socket. Non sostituisce una politica di indirizzo di origine per i pacchetti in arrivo da altre macchine.
Tenete presente l'ordine delle regole esistente e la politica di rete. Il reindirizzamento non trasforma un listener SOCKS grezzo in un adattatore di intercettazione, e anche IPv6 ha bisogno della sua configurazione appropriata.