Configuración manual de la configuración de proxy de Google Chrome en Ubuntu

9

Tengo una aplicación que necesita cambiar la configuración del proxy utilizada por Google Chrome, luego usar el navegador y luego cambiar automáticamente el proxy a lo que era.

No he podido encontrar en qué parte de mi sistema Ubuntu están almacenadas estas configuraciones. No está seguro en el archivo de preferencias. ¿Alguna idea sobre cómo realizar esta tarea?

Elitecoder
fuente
Parece que desea cambiar mediante programación la configuración del proxy. Cambiarlos manualmente implicaría abrir la sección de Preferencias del navegador Chrome. Lo que quiere hacer parece muy extraño: ¿cuál es el objetivo subyacente de lo que está tratando de lograr? Puede haber una forma más simple de lograr ese objetivo.
Mike Rowave
Puede estar explicando por qué deseo realizar tal cosa que ayudará a las personas a ofrecer soluciones alternativas. Deseo registrar todo el tráfico que sirve Google Chrome. Para eso, tengo un cliente que actúa como un servidor proxy. Ahora, si configuro el proxy de Chrome en localhost y un cierto puerto, todo el tráfico pasará por mi cliente y mi cliente podrá registrar todo lo que sucedió. Y cuando termine de grabar lo que necesito, cerraré Chrome y restauraré su configuración de proxy original. No deseo utilizar argumentos de línea de comandos pasados ​​al navegador Chrome y deseo hacerlo mediante programación.
Elitecoder

Respuestas:

12

Puede usar la configuración de proxy de Chromium desde la línea de comandos. La página del manual te dice cómo. Así que aquí hay un extracto de man chromium-browser de mi Ubuntu Natty:

   --proxy-server=host:port
          Specify the HTTP/SOCKS4/SOCKS5 proxy server to use for requests.  This overrides any environment variables or settings picked via the options dialog.  An individual
          proxy server is specified using the format:

            [<proxy-scheme>://]<proxy-host>[:<proxy-port>]

          Where <proxy-scheme> is the protocol of the proxy server, and is one of:

            "http", "socks", "socks4", "socks5".

          If the <proxy-scheme> is omitted, it defaults to "http". Also note that "socks" is equivalent to "socks5".

          Examples:

            --proxy-server="foopy:99"
                Use the HTTP proxy "foopy:99" to load all URLs.

            --proxy-server="socks://foobar:1080"
                Use the SOCKS v5 proxy "foobar:1080" to load all URLs.

            --proxy-server="sock4://foobar:1080"
                Use the SOCKS v4 proxy "foobar:1080" to load all URLs.

            --proxy-server="socks5://foobar:66"
                Use the SOCKS v5 proxy "foobar:66" to load all URLs.

          It is also possible to specify a separate proxy server for different URL types, by prefixing the proxy server specifier with a URL specifier:

          Example:

            --proxy-server="https=proxy1:80;http=socks4://baz:1080"
                Load https://* URLs using the HTTP proxy "proxy1:80". And load http://*
                URLs using the SOCKS v4 proxy "baz:1080".

La ventaja de usar los argumentos de la línea de comandos es que no tiene que cambiar la configuración global del sistema.

Por ejemplo:

$ chromium-browser --proxy-server="http://127.0.0.1:8080"

También eche un vistazo a la publicación de Justin en este hilo donde también describe cómo usar el proxy para la solicitud de DNS.

Strubbl
fuente
1
¿Hay alguna manera de establecer dominios específicos que NO deberían usar proxy? Algo similar a la No proxy for configuración en Firefox ...
becko
1
chromeno funciona porque no tiene opción--host-resolver-rules="MAP * 0.0.0.0 , EXCLUDE 127.0.0.1"
BeGood
no funciona Chrome ignora todas las configuraciones de proxy
user27636
3

La respuesta de Strubbl es correcta, esta es la mejor solución, ya que no necesita seguir habilitando / deshabilitando la configuración del proxy en todo el sistema.

Yo agregaría que también deberías usar este interruptor en conjunto

--host-resolver-rules="MAP * 0.0.0.0 , EXCLUDE 127.0.0.1" 

donde 127.0.0.1 es su servidor proxy. Este interruptor evita que Chrome realice solicitudes de DNS externas, lo que cuando la privacidad es importante no filtrará ninguna información de DNS.

Entonces el comando completo es el siguiente.

/usr/bin/google-chrome-stable %U --proxy-server="socks5://127.0.0.1:9050" --host-resolver-rules="MAP * 0.0.0.0 , EXCLUDE 127.0.0.1"
Justin
fuente
1

Para Ubuntu 14.04 LTS, vaya a la terminal. Abra este archivo pero guárdelo primero

& cp /usr/share/applications/chromium-browser.desktop /home/@user/

& sudo su

(passwd)

Entonces

& gedit /usr/share/applications/chromium-browser.desktop &

Ir a la primera línea "Exec"

Exec=chromium-browser %U

Cámbialo a

Exec=chromium-browser %U --proxy-server="127.0.0.1:8118"

127.0.0.1:8118o lo que sea. Guarde este archivo y cierre el editor e inicie el navegador nuevamente y pruébelo.

Para hacer este cambio de regreso

& sudo su

(passwd)

& cp /home/@user/chromium-browser.desktop /usr/share/applications/

o reescribir esta línea a

Exec=chromium-browser %U

¡disfrutar!

TheRabi71
fuente