2010-05-06 26 views

Respuesta

10

Hoy en día, mi enfoque para el "problema del proxy autenticado" es usar CNTLM. Es portátil, bastante fácil de configurar y puede ejecutarse como deamon.

+0

Esto es excelente, ¡gracias por la sugerencia! –

+0

CNTLM ha pasado por alto por completo todos mis problemas previos con el túnel http - No tengo quejas al respecto en absoluto.(En un proxy autenticado también) –

+0

Después de luchar con todas las configuraciones de proxy que pude encontrar, tengo que decir que las herramientas como 'CNTLM',' proxychains' son la mejor solución hasta el momento. Realmente espero que se pueda hacer algo para hacer una configuración de proxy de trabajo única en emacs. – squid

1

ELPA utiliza el paquete "URL". Hasta donde yo sé, no hay forma de hacer autenticación de proxy con ella.

¿Puede configurar su autenticación de proxy fuera de Emacs?

+0

, sí, en otros programas (por ejemplo, firefox) les puedo proporcionar mi nombre de usuario y contraseña para un proxy http determinado y todo va bien ... –

+0

Después de configurar el proxy como se describe en el texto de la pregunta, ELPA ahora solicita user/pw al actualizar la lista de paquetes y puede acceder al repositorio http a través de un proxy de autenticación. [Emacs 24.3.1, Windows, distribución de Vincent Goulet] –

4

Bueno, si realmente quiere hacer esto y no le importa usar otro programa entonces ... socat es la respuesta. Use socat para reenviar un puerto local a través de una conexión que pasa a través del proxy http. No lo está pasando por alto, simplemente "atornillando" la funcionalidad a una aplicación que no la tiene (en caso de que alguien lo pregunte). Esto podría ser difícil.

Otra solución que funcionaría muy bien si está en un sistema operativo unixy es instalar su propio proxy HTTP no autenticador que utiliza el proxy de autenticación (como squid). Esto podría parecer una elusión para algunas personas. Ten cuidado.

Por ejemplo, eche un vistazo a Proxytunnel.

ACTUALIZACIÓN: Mike Hoss parece ser correcto en el comentario que agrega al question vinculado al anterior. El paquete URL solicitará una identificación y contraseña. Al menos eso es lo que veo en el defun para url-http-create-request en el archivo url-http.el.

+2

Hoy en día siempre uso CNTLM para resolver este tipo de problema. –

1

En el caso de cualquier otra persona golpea lo que he luchado con:

Si utiliza cntlm o algún otro proxy de autenticación local, puede ser necesario especificar una dirección IP de bucle invertido en lugar de "localhost". Encontré que "localhost" silenciosamente falló, pero "127.0.0.1" funcionó.

+0

Esto tendría más sentido como un comentario a la respuesta que como una respuesta. –

6

que obtener una autorización de trabajo sin interacción del usuario por:

(setq url-proxy-services 
    '(("no_proxy" . "^\\(localhost\\|10.*\\)") 
    ("http" . "proxy.com:8080") 
    ("https" . "proxy.com:8080"))) 

(setq url-http-proxy-basic-auth-storage 
    (list (list "proxy.com:8080" 
       (cons "Input your LDAP UID !" 
         (base64-encode-string "LOGIN:PASSWORD"))))) 

Este trabajo para Emacs 24.3. Se basa en trucos API no públicas, por lo que podría no funcionar en las anteras versiones de Emacs ...

Reemplazar LOGIN y PASSWORD con su información de autenticación ...

+0

Funciona muy bien. Me pregunto si hay una forma de que pida mi contraseña. –

+0

Si mal no recuerdo, pregunte sobre la contraseña si solo configura 'url-proxy-services'. En Emacs 24.x – gavenkoa

+1

¡Oh, hombre! ¡Incluso quiero hacerte una donación! Me siento detrás del firewall corporativo, y no podía acceder a mepla, ¡pero ahora esta solución funciona! – Andrew