exportar HTTP_PROXY y caracteres especiales en passwd

8

Supongamos, en aras de la discusión, mi contraseña a continuación es abc123@

Necesito autenticar mi máquina Linux a través de un proxy corporativo para obtener parches y actualizaciones ... normalmente usaría esto:

export HTTP_PROXY='http://<Americas\Username>:<Password>@proxy.foo.com'
export http_proxy='http://<Americas\Username>:<Password>@proxy.foo.com'

Sin embargo, cuando sustituyo una contraseña real que termina con @y luego la ejecuto aptitude update, obtengo ...

[mpenning@netwiki ~]$ sudo -E aptitude update
Err http://mirror.anl.gov squeeze Release.gpg
  Could not resolve '@proxy.foo.com'
Err http://mirror.anl.gov/debian/ squeeze/main Translation-en
  Could not resolve '@proxy.foo.com'

He intentado escapar de la contraseña con \@, escapando con ambos \@\@, caracteres dobles ( @@), y nada parece hacer que esto funcione correctamente; Nunca tuve un problema hasta que cambié mi contraseña recientemente.

¿Cuál es la forma correcta de escapar de mi contraseña bash?

Mike Pennington
fuente

Respuestas:

1

¡Aún más simple y confiable!

Sintaxis general:

sudo {http,https,ftp}_proxy=http://<username>:<password>@<proxy_url/_proxyip>:<port>/ wget --timeout=5 --no-check-certificate http://<website_url>

Ejemplo:

[root@localhost ~]# sudo {http,https,ftp}_proxy=http://username:password-123@proxy.example.com:6050/ wget --timeout=5 --no-check-certificate http://google.com

{http, https, ftp} _proxy -> http, https, ftp urls. Separado por coma.

--timeout = 5 -> Conexión para mantenerse vivo en segundos.

-no-check-certificate -> Ignorar SSL / Verificación de certificado.

- araña -> Si desea probar la conectividad sin descargar el archivo.

Notas:

Convertidor en línea:

Reemplace los caracteres especiales con su equivalente hexadecimal unicode. Para obtener una lista de Unicodes, consulte el sitio web https://unicode-table.com (o) http://unicodelookup.com

Convertidor local usando Python:

Referencia: la conversión de la contraseña "p @ s # w: E" a Unicode será la siguiente,

@ = %40
$ = %24
# = %23
: = %3A
p@s#w:E = p%40s%23w%3AE

Entrada:

[root@localhost ~]# python -c "import sys, urllib as enc; print enc.quote_plus(sys.argv[1])" "p@s#w:E"

Salida:

p%40s%23w%3AE
MSArun
fuente
0

utilice% 40 en lugar de @ en su contraseña,

por ejemplo:

su contraseña es "A @ ple123" y luego use "A% 40ple123"

Vedavyas
fuente