Exportieren Sie HTTP_PROXY und Sonderzeichen in passwd

8

Angenommen, aus Gründen der Argumentation lautet mein Passwort unten abc123@

Ich muss meinen Linux-Computer über einen Unternehmens-Proxy authentifizieren, um Patches und Updates zu erhalten. Normalerweise würde ich Folgendes verwenden:

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

Wenn ich jedoch ein echtes Passwort ersetze, das mit endet @und dann ausgeführt wird aptitude update, erhalte ich ...

[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'

Ich habe versucht, das Kennwort mit Doppelzeichen ( ) zu \@maskieren und beide mit \@\@Doppelzeichen ( @@) zu maskieren, und nichts scheint dies korrekt zum Proxy zu bringen. Ich hatte nie ein Problem, bis ich kürzlich mein Passwort geändert habe.

Was ist der richtige Weg, um meinem Passwort zu entkommen bash?

Mike Pennington
quelle

Antworten:

1

Noch einfacher und zuverlässiger!

Allgemeine Syntax:

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

Beispiel:

[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. Durch Komma getrennt.

--timeout = 5 -> Verbindung, um in Sekunden am Leben zu bleiben.

-no-check-certificate -> SSL / Certificate Verification ignorieren.

--spider -> Wenn Sie die Konnektivität testen möchten, ohne die Datei herunterzuladen.

Anmerkungen:

Online-Konverter:

Ersetzen Sie Sonderzeichen durch den entsprechenden hexadezimalen Unicode. Eine Liste der Unicodes finden Sie auf der Website https://unicode-table.com (oder) http://unicodelookup.com

Lokaler Konverter mit Python:

Referenz: Die Konvertierung des Passworts "p @ s # w: E" in Unicode erfolgt wie folgt:

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

Eingang:

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

Ausgabe:

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

Bitte verwenden Sie% 40 anstelle von @ in Ihrem Passwort.

zum Beispiel:

Ihr Passwort lautet "A @ ple123" und verwenden Sie "A% 40ple123".

Vedavyas
quelle