Packages update über einen Proxy Server
-
@viragomann so wi ich dein bild deute hast du ja am WAN nichts angeschlossen (keine netzwerk was als WAN dienen kann) oder deute ich deine grafik falsch.
hier so habe ich es bei mir, WAN und LAN und noch ein wenig vlan usw.
┌──────────────────────────┐ │ │ │ WAN / Internet (PPPoe) │ │ Willy.tel │ │ 1000/250Mbit/s Glasfaser │ │ │ └─────────────┬────────────┘ ─ ─ ─ ─ ─ ─ ─ ─WAN─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─│─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ WAN ─ ─ ─ ─ ─ ─ ─ ─ │ ╔═══════╩═════════════════ pfSense 2.5.2 ═╗ Stand: ─ ─ ┐ ┌────────────────┐ ┌────────────────┐ ║ ║ │ │ │ │ UBNT │ ║ Intel NUC BNUC11TNHV50L00║ 29.12.2021 │ │ TrueNAS ├───┤EdgeSwitch 8 XP ├───╣ LAN: 192.168.3.0/24║ │ │ │ │ │ ║ Gäste (W)LAN (VLAN33): 192.168.33.0/24║ ─ ─ ─ ─ ─ ─ ┘ └────────────────┘ └───┬─────────┬──┘ ║DynDNS über Cloudflare mit eigener Domain║ ┌────────────────┐ │ │ ║ VPN's:║ │ Fritzbox 7490 │ │ │ ║ 2 x Fritzbox (7490 & 6591) IPSec║ │ (Nur VoIP) ├───────┤ │ ║ 1 x OpenVPN Road Warrior (172.16.3.0/24)║ │ │ │ │ ║ 1 x WireGuard Road Warrior║ └────────────────┘ │ │ ║ (172.16.33.0/24)║ ┌────────────────┐ │ │ ╚═════════════════════════════════════════╝ │ UBNT │ │ │ ┌────────────────┐ ┌────────────────┐ │UniFi Cloud Key ├───────┤ │ │ Switch │ │ 1 x UBNT │ │ │ │ └───────┤Netgear GS110TPP├───┤UniFi AP-Flex-HD│ └────────────────┘ │ │ │ │ │ ┌────────────────┐ │ └─────────┬──────┘ └────────────────┘ │ 2 x UBNT │ │ │ ┌────────────────┐ │UniFI AP AC Pro ├───────┘ │ │ │ │ │ └──────────┤ Clients │ └────────────────┘ │ │ └────────────────┘
-
Also mit DNS muss ich ja nicht konfigurieren da dies der Proxy übernehmen soll. Ich werde auch https://forum.netgate.com nie auflösen können da ja meine Testumgebung nicht direkt mit dem Internet verbunden ist. Daher ja der Proxy.
Das stimmt ich habe am WAN nicht angeschlossen da es ja kein richtiges WAN in dem Fall gibt sondern der zeit nur 2 LANs die mit einer FW getrennt sind.
-
@cheesi said in Packages update über einen Proxy Server:
Also mit DNS muss ich ja nicht konfigurieren da dies der Proxy übernehmen soll. Ich werde auch https://forum.netgate.com nie auflösen können da ja meine Testumgebung nicht direkt mit dem Internet verbunden ist. Daher ja der Proxy.
Moment mal, DNS hat aber nichts mit Internetzugang zu tun. Ohne DNS ist es völlig egal, ob Internetzugang, Proxy oder sonstwas nicht klappt, die Sense oder irgendwas dahinter kann dann schlicht nichts mit "domain.de" anfangen. DNS muss also natürlich konfiguriert werden und sauber funktionieren, woher sollen Systeme sonst wissen WO sie überhaupt hin sollen? Erst danach kommt die Frage ins Spiel wie ich rausgehe. Geht das direkt, geht es via Proxy oder sonstwie.
Also selbst wenn eine Box keinen Zugriff zum Internet hat, braucht sie trotzdem vernünftig funktionierendes DNS damit Kern Funktionen laufen können. Ich kann ja bspw. auch kein Debian Server in ne "tote Zone" hängen ohne Internet etc. und dann via Proxy ein "APT Update" machen, wenn in den APT Sourcen eben was von "mirror.de.debian.org" drinsteht. Da kann der Proxy noch so korrekt konfiguriert sein, das System kann aber mit der URL/der Domain nichts anfangen weil die Auflösung nicht klappt.
Sicher kann man bei Servern sowas ggf. hinbasteln und doktoren, dass man ohne DNS auskommt und alles rein mit IP macht, aber bei einer Firewall die dafür gebaut ist, Upstream ihre Pakete von einem Server im Netz etc. zu bekommen, wird das nicht funktionieren.
Soweit ich mich erinnere steht das auch recht klar in den Dokus drin, dass der Proxy Eintrag da für gesperrte HTTP/HTTPS Verbindungen etc. funktioniert, dass aber trotzdem erwartet wird, dass das Gerät mind. DNS und HTTP/S ausgehend machen kann, da sonst intern der Paketmanager von FreeBSD keine Antwort bekommt.
Alternativ für komplett abgeschottete Umgebungen kann man das System erst mit Internet installieren und dann isolieren oder je nach Umfang der Pakete die Paketliste und PKGs manuell kopieren und händisch einspielen.
Cheers
-
@cheesi said in Packages update über einen Proxy Server:
Also mit DNS muss ich ja nicht konfigurieren da dies der Proxy übernehmen soll.
Der Proxy? Zuvor hast du geschrieben:
Der Proxy lässt HTTP und HTTPs anfragen druch und diese funktionieren auch einwandfrei.
Kann der nun DNS auch?
Wie auch immer, du musst aber der pfSense verraten, wen sie fragen darf, wenn sie gerne einen Hostnamen aufgelöst hätte.
Bei dir ist da nur localhost
Wenn der DNS Resolver läuft, wird der dann verwendet. Allerdings muss dieser auch wieder an seine Root-Server kommen. Also muss DNS erlaubt sein.
-
Hi Community,
sorry natürlich macht der Proxy nicht DNS. DNS spielt die Sense, jedoch hat sie ja keine Upstream DNS. So wie die Ganze Umgebung keine Upstream DNS hat. Jedes der 2 Lans hat einen "Lokal" DNS, damit er die lokalen anfragen auflösen kann. Jedoch kommen die anderen Komponenten in der Umgebung ja über den Proxy ins Internet auch ohne Upstream DNS. Entweder verstehe ich den "Proxy" falsch oder ich tappe im dunklen. Wenn ich doch einen Proxy in einer Applikation konfiguriere, dann sollten doch alle HTTP/HTTPs frage zum Proxy geschickt werden und der macht dann den Rest?
Danke vielmals für eure Hilfe!
-
@cheesi said in Packages update über > > einen Proxy Server: Jedes der 2 Lans hat einen "Lokal" DNS, damit er die lokalen anfragen auflösen kann. Jedoch kommen die anderen Komponenten in der Umgebung ja über den Proxy ins Internet
Ich habe den Eindruck, dass du immer noch nicht DNS und HTTP(S) Traffic auseinander hältst trotz aller Erläuterungsversuche.
Wenn deine lokalen Geräte ein lokales DNS verwenden und damit auch öffentliche Domains auflösen können, muss dein lokales DNS für sich öffentliche Namen auflösen können.
Dann könnte ja auch die pfSense einen der lokalen Server verwenden. -
Glaube auch das ich es nicht ganz verstehe. Aber zuerst Danke für deine Hilfe! .... Noch ein versuch ....
Windows Server im 172.21.100.0/24 LAN kann nicht www.forum.netgate.com auflösen da der Domain Controller ja keine Upstream DNS erreicht weil er ja abgeschottet ist. Daher kann er ja auch keine öffentlichen Domains auflösen.
Wobei ich jedoch im Browser www.forum.netgate.com sehr wohl erreiche. Somit erschließt sich mir nicht ganz wo der "lokale" DNS hier jetzt reinspielt. Oder ich den Proxy Server nicht, da er ja das "Internet" Handling ja für das LAN macht. -
@cheesi said in Packages update über einen Proxy Server:
Windows Server im 172.21.100.0/24 LAN kann nicht www.forum.netgate.com auflösen da der Domain Controller ja keine Upstream DNS erreicht weil er ja abgeschottet ist. Daher kann er ja auch keine öffentlichen Domains auflösen.
Wobei ich jedoch im Browser www.forum.netgate.com sehr wohl erreiche. Somit erschließt sich mir nicht ganz wo der "lokale" DNS hier jetzt reinspielt. Oder ich den Proxy Server nicht, da er ja das "Internet" Handling ja für das LAN macht.Ich weiß jetzt nicht, ob dieser Browser auf dem genannten Windows Server läuft, könnte aber sein.
Bei Browser musst du auch die Möglichkeit von DNS over HTTPS (DoH) in Betracht ziehen. D.h. Browser, die diese Funktion nutzen, lösen Hostnamen über das HTTPS Protokoll auf. Dies würde der Proxy dann ermöglichen.Wir sprechen aber im allgemeinen bei DNS aber nicht von DoH und auch die pfSense verwendet das nicht.
Teste die Auflösung mittels nslookup oder dig auf den Geräten, oder auf der pfSense mit dem Tool aus dem Diagnostic Menü. -
Danke Viragomann für deine Hilfe!
Ja genau also mein Windows Server der Browser würde dann eine http request an den Proxy schicken und der Proxy löst dann die Anfrage auf IP um. Wie erwähnt kann kein Device in der Umgebung externe IPs auflösen und muss vertrauen, dass es der Proxy tut.Gut damit ist alles gesagt, dass die Sense kein DNS over HTTPS unterstützt. Somit heißt es im Umkehrschluss, dass ich meine Sense auch nie ans Internet bekomme. Damit die Packages und Download funktioniert könnte ich hier mit Lokalen Hostfiles arbeiten? Weil dann kann er ja die Externe ip über das Hostfile auflösen und schickt dann den HTTP request zum proxy mit der benötigten IP?
-
@cheesi said in Packages update über einen Proxy Server:
Gut damit ist alles gesagt, dass die Sense kein DNS over HTTPS unterstützt.
Du willst damit aber nicht allen Ernstes sagen, dass du da erwartet hättest?
DoH ist kein Standard, das ist ein Geschwür in der Netzwerktechnik. Du kannst nicht annehmen, dass eine ordentlich Firewall so etwas verwendet.Auch darfst du von den Leuten hier nicht erwarten, dass sie verstehen, warum in deinem Netz keine DNS-Anfrage nach draußen gehen dürfen. Wenn man das Netzwerk diesbezüglich absichern möchte, dann betreibt man ein internes DNS und dieses muss natürlich Anfragen für öffentliche Domains in Internet schicken. Die Zielserver kann man dabei noch vergeben und du könntest es auch so einrichten, dass es die Anfragen via DoT macht, was dann nicht mitgelesen werden könnte.
Schließlich geht DoH auch nach draußen, und zwar von jedem einzelnen Gerät, das HTTPS am Proxy erlaubt hat, wie und wohin es ihm gefällt. Und das sind auch DNS Anfragen.Aber gut, für das pfSense Update könntest du dir auf deinem DNS einfach einen Host-Override einrichten und den Server auf der pfSense eintragen, oder den Resolver verwenden und das das Host-Override setzen.
-
This post is deleted! -
soweit ich mich erinnere benötigt man bei der Verwendung eines HTTP(s) Proxy Servers keinen DNS der die Anfragen auflöst. Die Auflösung der externen Domain übernimmt ja der Proxy und nicht das lokale System. Natürlich muss (falls notwendig) das lokale System die interne Domain/den internen Namen des Proxies auflösen können.
Daher erstmal curl mit Proxy nutzen:
curl --proxy "http://user:password@ip_des_proxies:port" "http://externe_domain.com"
Klappt das?
-
@mansior said in Packages update über einen Proxy Server:
Die Auflösung der externen Domain übernimmt ja der Proxy und nicht das lokale System.
Ach, das habe ich erst nicht so verstanden. Danke für die Aufklärung.
-
Lieber Viragomann ich bedanke mich für deinen Input. Sorry, dass ich fragen stelle wie ein Anfänger das bin ich leider auch :(. Tut mir sehr leid dafür.
Wie Mansior schreibt wenn ich eine HTTP(s) anfrage mit einem Proxy stelle benötige ich ja kein DNS. So hätte ich das verstanden und auch glaub ich stunden lange heute recherchiert :).
Damit ich das jetzt richtig versteh braucht man jetzt für externe Domain wenn man über einen Proxy geht keinen DNS? Da die externen Domaine der Proxy auflöst.
curl --proxy "http://172.21.100.8:3128" "http://www.google.at" funktioniert einwand frei bekomme den html code der seite zurück
<!doctype html><html itemscope="" itemtype="http://schema.org/WebPage" lang="de-AT"><head><meta content="text/html; charset=UTF-8" http-equiv="Content-Type"><meta content="/logos/doodles/2022/get-vaccinated-wear-a-mask-save-lives-january-20-copy-6753651837109686-law.gif" itemprop="image"><meta content="Lass dich impfen. Trag eine Maske. Rette Leben." property="twitter:title"><meta content="Lass dich impfen. Trag eine Maske. Rette Leben. #GoogleDoodle" property="twitter:description">.......
und so weite. Danke für eure Hilfe !
-
@cheesi said in Packages update über einen Proxy Server:
curl --proxy "http://172.21.100.8:3128"
Genau so hast du auch die Proxy-Einstellungen in der pfSense gemacht?
Vielleicht solltest du auch noch in System > General Setup den DNS rauslöschen, damit die pfSense nicht versucht ist, selbst aufzulösen.
Bzw. bei "DNS Resolution Behavior" "ignore local DNS" auswählen.Sollte es nicht funktionieren, wäre interessant, was denn würde ich mal ins System-Log schauen, ob es Hinweise auf das Problem gibt.
-
@viragomann
Sollte alles so haben
werde mal auch in der zwischen Zeit mal System logs durchwühlen
Danke für eure Hilfe !!
-
Habe paar Logs durchforstet aber glaube habe das richtig log nicht gefunden.
Im Systemlog steht leider nichts und im Upgrade Log auch nichts.
Habt Ihr eine Idee wo die Update abfrage gelogt werden könnte.vi upgrade_log.txt
ERROR: It was not possible to determine pkg remote version
ERROR: It was not possible to determine pfSense-repo remote version
ERROR: Unable to compare version of pfSense-repoLG und Danke,
-
@cheesi
Bei sowas stöbere ich immer etwas im dunkeln, aber ich würde einfach mal ein pcap aufzeichnen und schauen wohin die Anfrage geht. Quell IP müsste die von der pfSense sein.... -
@mansior Hi sorry war ein wenig beruflich eingespannt. Werde mal schauen wie ein pcap aufzeichent und werde es hier posten. Danke mal für deinen Tipp
-
Hallo Community,
leider hänge ich immer noch an meinem Problem, dass ich über einen Proxy keine Updates ziehen kann.
Ich habe jetzt auch mit einem 2 Proxy-Server getestet
HTTP_PROXY=172.21.100.5:3333 HTTPS_PROXY=172.21.100.5:3333 [2.5.2-RELEASE][admin@cpststzgw01.cpstst.jc.local]/etc: pfSense-upgrade -d -c >>> Updating repositories metadata... pkg-static: Warning: Major OS version upgrade detected. Running "pkg bootstrap -f" recommended Updating pfSense-core repository catalogue... pkg-static: https://pkg.pfsense.org/pfSense_v2_4_5_amd64-core/meta.txz: Bad Gateway repository pfSense-core has no meta file, using default settings pkg-static: https://pkg.pfsense.org/pfSense_v2_4_5_amd64-core/packagesite.txz: Bad Gateway Unable to update repository pfSense-core Updating pfSense repository catalogue... pkg-static: https://pkg.pfsense.org/pfSense_v2_4_5_amd64-pfSense_v2_4_5/meta.txz: Bad Gateway repository pfSense has no meta file, using default settings pkg-static: https://pkg.pfsense.org/pfSense_v2_4_5_amd64-pfSense_v2_4_5/packagesite.txz: Bad Gateway Unable to update repository pfSense Error updating repositories! ERROR: Unable to compare version of pfSense-repo
Jedoch passt alles mit CURL
curl --proxy "http://172.21.100.5:3333" "http://packages.netgate.com/pfSense_v2_4_5_amd64-core/packagesite.txz" <!doctype html> <html> <head> <meta charset='utf-8'> <title></title><style type='text/css'> @charset 'utf-8'; html, body { height: 100%; margin: 0; } body { font-family: 'Helvetica Neue','Helvetica','Segoe UI', Arial, sans-serif; color:#5c5c5c; background: #fafafa} a { text-decoration: none; color: #169ad5; }
Ich habe auch ein Packet Trace mitlaufen lassen! Ich würde es auch gerne zu Verfügung stellen
Ich weiß leider nicht mehr weiter und würde auf eure Hilfe hoffen.
LG und Danke!