Wie überprüfe ich, ob Network Proxy wirklich angewendet wird?

16

Ich versuche, Network Proxy so einzustellen , dass die Internetverbindung meines LAN zum Aktualisieren von Paketen verwendet wird. Während die Proxy-Einstellungen auf meinem Firefox funktionieren , kann der Paket-Manager immer noch keine Verbindung zum Internet herstellen. Ich habe unter System >> Preferences >> Network Proxy"Details" den Proxy eingestellt und den Benutzer / Pass für den Proxy eingegeben.

Wie kann ich sicherstellen, dass das Proxy-Netzwerk korrekt angewendet wird?

Alexar
quelle

Antworten:

12

Stellen Sie zunächst sicher, dass Sie auf "Systemweit anwenden ..." klicken, wenn Sie die Proxy-Einstellungen in den Gnome-Netzwerk-Eigenschaften ( System -> Preferences -> Network Proxy) ändern . Dadurch werden http_proxy und zugehörige Umgebungsvariablen festgelegt. Dies sollte für alle Programme verfügbar sein, die nach der Proxy-Einstellung "Systemweit angewendet ..." gestartet wurden. Um ganz sicher zu gehen, können Sie sich abmelden und erneut anmelden, um dies zu überprüfen.

Wenn Sie ein Terminal öffnen und den Befehl verwenden set | grep -i proxy, werden die relevanten Umgebungsvariablen festgelegt. Idealerweise sollte dies ausreichen.

Ich habe jedoch Situationen erlebt, in denen das oben Genannte immer noch nicht funktioniert: Synaptic oder apt-get(über die Befehlszeile) können über den Proxy keine Verbindung zum Internet herstellen, selbst wenn dieser wie oben angegeben eingerichtet wurde. In solchen Fällen besteht eine Lösung darin, eine Datei /etc/apt/apt.conf.dmit einer bestimmten Proxy-Konfiguration für apt hinzuzufügen (diese wird von apt-get, aptitude, synaptic und Ubuntu Software Center verwendet).

Befolgen Sie die folgenden Schritte:

  1. Erstellen Sie /etc/apt/apt.conf.d/40proxy

    gksudo gedit /etc/apt/apt.conf.d/40proxy

  2. Fügen Sie die folgenden Inhalte ein - passen Sie die Inhalte an Ihre Situation an.

    Acquire::http::Proxy "http://proxy.site.com:8080";

Wenn Sie einen Benutzernamen und ein Kennwort haben, können Sie dasselbe in der Proxy-URL ( http://username:[email protected]:8080wie folgt ) verschlüsseln, oder Sie können zur besseren Kontrolle etwas wie ntlmaps verwenden.

Weitere Informationen finden Sie hier .

koushik
quelle
1
Vielen Dank! zuerst für die Einführung set. dann gab es, wie du vorhergesagt hast, immer noch probleme mit apt-get und update manager ... und durch das erstellen wurde 40proxyes gelöst. das einzig verbleibende problem sieht nur root den proxy. zB wget whatismyip.comhat unterschiedliche Ausgaben mit normalem Benutzer und root.
Alexar
Können Sie Ihr verbleibendes Problem erläutern? Wenn Sie beispielsweise den Proxy mithilfe von festlegen System -> Preferences -> Network Proxyund Apply System-wide...dann sagen, dass Befehle, die als Root-Benutzer ausgeführt werden, diese Einstellung nicht sehen? ( sudo wget whatismyip.com
Bedeutet, dass
Stellen Sie außerdem sicher, dass Sie diese 40-Proxy-Datei sichern (z. B. irgendwo in Ihrem privaten Ordner), da diese auf mysteriöse Weise verschwunden ist. Ich denke, die Auswahl Direct connection to Internetim Network ProxyDialogfeld löscht dies wahrscheinlich. Es könnte auch ein Problem mit meinem System sein, aber nicht sicher.
Koushik
5

Haben Sie auf die Schaltfläche Systemweit anwenden (hervorgehoben) geklickt? Wenn Sie keine lokalen Proxy-Einstellungen für Ihre Gnome-Sitzung festlegen und daher beim rootHerunterladen von Paketen nicht die gleichen Netzwerkeinstellungen verwendet werden.

Proxy-Einstellungen

Oli
quelle
Ja, das habe ich getan.
Alexar
5

Es gibt eine Reihe guter Antworten, die Ihnen bei Problemen helfen (was Ihre Frage impliziert). Dies ist jedoch eine Antwort auf die enge Frage, ob die Netzwerk-Proxy-Einstellungen angewendet wurden:

Methode 1: Starten Sie eine neue Shell (xterm) und überprüfen Sie die Umgebungsvariablen:

% env | grep -i proxy
http_proxy=http://172.17.0.130:8080/
ftp_proxy=ftp://172.17.0.130:8080/
all_proxy=socks://172.17.0.130:8080/
...

Beachten Sie, dass vorhandene Shells keine aktualisierten Umgebungsvariablen enthalten. Wenn Sie also einen Befehl ausführen, bei dem Umgebungsvariablen nach ihren Proxy-Einstellungen durchsucht werden, starten Sie ihn in einer Shell, die nach den Änderungen an den Proxy-Einstellungen erstellt wurde.

Methode 2: Verwenden Sie gconftooldiese Option, um die gconf-Einstellungen abzufragen (die unter gespeichert sind ~/.gconf):

% gconftool -R /system/proxy 
 old_ftp_port = 0
 old_ftp_host = 
 old_secure_port = 0
 old_secure_host = 
 autoconfig_url = 
 mode = manual
 ftp_host = 172.17.0.130
 secure_host = 172.17.0.130
 ...

% gconftool -R /system/http_proxy 
 use_authentication = false
 authentication_password = 
 authentication_user = 
 ignore_hosts = [localhost,127.0.0.0/8,*.local,...]
 use_http_proxy = true
 port = 8080
 use_same_proxy = true
 host = 172.17.0.130

Stellen Sie, wie andere angemerkt haben, sicher, dass Ihr Browser und andere Apps auf "Systemproxyeinstellungen verwenden" eingestellt sind.

Craigster
quelle
1

Um einen Proxy vorübergehend einzurichten, können Sie ein Terminal starten und eintreten

export http_proxy="http://yourproxy:yourport"

Starten Sie dann das Programm, zB Synaptic für die Paketverwaltung. Die Konsole gibt möglicherweise hilfreiche Informationen darüber aus, was schief geht.

Phi
quelle
1
Um die Umgebungsvariable nur für einen Befehl http_proxy="http://yourproxy:yourport" synaptic
festzulegen
1

Wenn du es versuchst:

curl http://www.google.com

Wenn Sie über die Befehlszeile HTML zurückerhalten, funktioniert der Proxy.

bnieland
quelle
0

Ich verwende auch einen Proxy und musste die Proxy-Einstellungen speziell für Synergy und Update Manager festlegen (mithilfe von Synergy: Konfiguration-> Einstellungen-> Netzwerk). Es gibt keine Möglichkeit, die "Systemeinstellungen" zu verwenden, und selbst wenn dies funktionieren sollte, konnte ich den Proxy-Server auf Systemebene nicht aktualisieren :-(

Ich bin an einer Lösung interessiert, mit der es funktioniert :-)

Kleiner Jawa
quelle
0

Klicken Sie auf "Systemweit anwenden ..." und überprüfen Sie, ob alle Ihre Internetanwendungen so eingestellt sind, dass sie den System-Proxy verwenden. Es gibt nichts mehr als das. Konfigurationsdateien und Startskripte müssen nicht manipuliert werden.

Radu Cotescu
quelle
0

Jeder, der daran gedacht hat, Einstellungen zu überprüfen / hinzuzufügen, um:

/ etc / environment

versuche es mit:

http_proxy = "http: // Benutzer: Kennwort @ Proxyserver: Port" https_proxy = "http: // Benutzer: Kennwort @ Proxyserver: Port" ftp_proxy = "http: // Benutzer: Kennwort @ Proxyserver: Port"

t0m5k1
quelle
-1

Eine systemweite Anwendung reicht nicht aus! Ich denke, vielleicht ISA Server oder vielleicht synaptische Reset-Verbindung für jede Abfrage ins Web dieses Problem, dass Login und Passwort-Authentifizierung liegen. Oder ISA Server akzeptiert möglicherweise keine Übermittlung von Abfragen, die nicht über das HTTP-Protokoll beantwortet werden. Dies ist jedoch nicht mein Favorit.

DarkTemplar
quelle