Microsoft Update skrze proxy a tunel

Tunelář

Microsoft Update skrze proxy a tunel
« kdy: 18. 08. 2013, 11:41:38 »
Zdravím.

Můj občasný ISP - BLESKMobil se zbláznil a znefunkčnil službu Windows/Microsoft Update (od 15.8.2013 do "stále trvá"). Samotná Telefonica, pod svou původní značkou, tuto službu (poskytovanou zřejmě i skrze stejnou základovou stanici) nezařízla. Technicky: jsou špatné parametry pro připojení k serverům Akamai a Microsoft, vyprší timeout.

Než u BLESKMobilu utratím těch pár posledích stovek (bacha na jejich dobíjecí pobídku - pokud tuhle službu potřebujete, je to pro blázny co neví co s penězi) a skončím s nimi, napadlo mne tuto službu svést do tunelu "HTTP proxy --> TOR" který občas používám.

Použil jsem příkaz

netsh interface portproxy add v4tov4 listenadress=* listenport=* connectaddress="adresa proxy serveru" connectport="port proxy serveru" protocol=tcp

jenže výsledek se jaksi nedostavil.

Otázky:
- Neví někdo co dělám špatně?
- Chápu správně, že pokud namísto čísla portu použiji krátký název služby Windows Update - "wuauserv", automaticky boudou použity správné porty?

- Výchozí IPv4 brána má metriku 31. Mám přidělenou Teredo IPv6 adresu, metrika 36. Co by se přesně stalo kdybych metriku Tereda změnil? Chápu-li to správně musel bych metriku změnit u adresy odpovídající "Spojení - místní adresa IPv6"? Tato adresa se mění s každým novým připojením do Internetu?

Vidíte, že se příliš neorientuji, tak mne prosím ušetřete jízlivých poznámek. Děkuji za vysvětlení a pomoc. Jiné návrhy a doporučení vítám taktéž.

P.S.
Jen pro úplnost ještě uvádím, že z počátku jsem se domníval, že u mne dochází k podobné chybě jako popisuje KB836941 - Při použití webu Windows Update a Microsoft Update dochází k dočasným chybám souvisejícím s připojením (http://support.microsoft.com/kb/836941/cs).

Jenže jednak se mi to děje na Vistách, což nic neznamená. Jednak jednoznačně Microsoft Update skrze mobilní Internet od vlastní Telefoniky (prostě kurví systematicky) i T-Mobile funguje řádně. Nemobilní Internet také, i když zrovna ten od Telefoniky jsem nezkoušel.


Lol Phirae

Re:Microsoft Update skrze proxy a tunel
« Odpověď #1 kdy: 18. 08. 2013, 11:51:53 »
- Chápu správně, že pokud namísto čísla portu použiji krátký název služby Windows Update - "wuauserv", automaticky boudou použity správné porty?

Huh? To není server, ale klient.

Tunelář

Re:Microsoft Update skrze proxy a tunel
« Odpověď #2 kdy: 18. 08. 2013, 12:45:39 »
Lol: Tvůj povzdych nechápu. Bavím se pochopitelně o "listenport"

Použití: add v4tov4 [listenport=]<celé_číslo>|<název_služby>
             [connectaddress=]<adresa IPv4>|<název_hostitele>
            [[connectport=]<celé_číslo>|<název_služby>]
            [[listenaddress=]<adresa IPv4>|<název_hostitele>]
            [[protocol=]tcp]

Parametry:

       Příznak              Hodnota
       listenport     - Port IPv4, na kterém se má naslouchat.
       connectaddress - Adresa IPv4, ke které se má provést připojení.
       connectport    - Port IPv4, ke kterému se má provést připojení.
       listenaddress  - Adresa IPv4, na které se má naslouchat.
       protocol       - Používaný protokol. Nyní je podporován pouze protokol TCP.

Poznámky: Přidá položku pro naslouchání pro port IPv4 a připojení přes server proxy prostřednictvím protokolu IPv4.

P.S.
Pro případ, že by měl někdo problém, ještě jednou. Chci na počítači nastavit globální proxy server (pomocí Net Shell-u) který by byl sveden do proxy serveru, který je dále napojen na TOR tunel. Ten proxy server pro TOR tunel je nutností protože TOR sám o sobě požívá SOCK.
Kromě jiného se ptám co se stane když metriku pseudo tunelu (IPv6, teredo) nastavím tak aby šlo o výchozí bránu. Je vůbec tento tunel použitelný i pro odchozí komunikaci?

Lol Phirae

Re:Microsoft Update skrze proxy a tunel
« Odpověď #3 kdy: 18. 08. 2013, 12:54:13 »
Ano, a co jako? Co to má dělat se službou wuauserv? To je z tohohle hlediska normální HTTP/HTTPS klient, o jakých speciálních portech je proboha řeč?

Lol Phirae

Re:Microsoft Update skrze proxy a tunel
« Odpověď #4 kdy: 18. 08. 2013, 12:58:38 »
Jo, a jinak to děláš na úplně blbém místě. Nastav si tu proxy v IE a napiš:

Kód: [Vybrat]
netsh winhttp import proxy source=ie


Tunelář

Re:Microsoft Update skrze proxy a tunel
« Odpověď #5 kdy: 18. 08. 2013, 13:56:14 »
Díky Lole.

Takže import nastavení z IE funguje (netsh winhttp import proxy source=ie). Importovaná pravidla by se měla zobrazit ve výpisu.

Je ale potřeba změnit nastavení pro proxy kterou používá IE (inetcpl.cpl), tak aby se týkala uživatele - Správce. Nastavení jednotlivých uživatelů pro IE mohou zůstat zachována. Jak je to při více správcích na jednom počítači nevím, snad se musí použít globální nastavení stejné pro všechny uživatele počítače.

Vlastní HTTP Proxy (ten co směruje pakety pro TOR-tunel) může zůstat klidně spuštěný v kontextu uživatele který i vytvořil připojení do Internetu. Není třeba nic z toho spouštět nově jako služby dostupné pro celý počítač a všechny uživatele.

Jen pro úplnost uvádím, že odstranění pravidel importovaných z IE se odstraní příkazem "netsh winhttp reset".

Nakolik věříte TORu pro aktualizaci skrze něj nevím. Ale alespoň pro aktualizaci antiviru od Microsoftu, kdy certifikáty  pro ověření necháte stahovat jinou cestou (výjimka v proxy) je to docela použitelné. Pochopitelně, pokud vám záleží na anonymitě, je to způsob jak se kompromitovat (spusttě si několik TOR-tunelů).

---

Co přesně má tedy dělat kontext PortProxy (netsh interface portproxy)? Myslel jsem, že jde o universální (ve smyslu IPv4 <--> IPv6) možnost jak nastavit globální proxy?
n krátký název služby
Jak je to s tím IPv6 tunelem a odchozí komunikací? Respektive tedy po změně metriky?

---

Služba "wuauserv". Z nápovědy, kterou jsem překopíroval i do diskuse, jsem měl za to, že není třeba porty vyplňovat ručně, ale stačí zadat název služby a porty se přiřadí automaticky, viz [listenport=]<celé_číslo> nebo <název_služby>.

V každém případě, Lole, díky za současnou nápovědu.

---

Co se děje s tím BLESKMobilem nevíte? Začátek spolupráce Telefonica - Vodafone, testovaná selektivně na uživatelích BLESKMobilu? Budoucí nový úžasný FUP limit, nebo prostě jen další kurvítko.

Jak je to s tím NATem náhodou nevíte? Stav služby Teredo mi teď ukazuje, že za NATem nejsem, ale vždy když jsem zkoušel nějakou službu tak jsem byl. Teď hned to vyzkoušet nemohu, protože teď jedu skrze TOR a nerad míchám komunikaci, obzvlášťe způsobem který nemám zmáknutý. Díky za případný komentář.

Lol Phirae

Re:Microsoft Update skrze proxy a tunel
« Odpověď #6 kdy: 18. 08. 2013, 14:06:37 »
Citace
Co přesně má tedy dělat kontext PortProxy (netsh interface portproxy)?

Ten MU/WU kram taha neco pres BITS, "univerzalni" proxy tam nefunguje.

Tunelář

Re:Microsoft Update skrze proxy a tunel
« Odpověď #7 kdy: 18. 08. 2013, 15:00:18 »
K těm dvěma TOR-tunelům. Prostě si spusťtě ještě jeden, jen pro danou činnost a mějte pod kontrolou všechny ExitNodes.

K té proxy. Jak nastavení proxy v IE, tak import/změna pomocí NetSh může mít značné zpoždění při aplikaci pravidel. Například resetovaná proxy se může klidně i po desítkách minut zůstávat nastavená, i po ukončení všech aktivních spojení. Zatím nevím přesně jak spolehlivě zajistit okamžitou změnu pravidel. Vůbec se to chová celé podivně (zapnout to jde snáze než vypnout).

Příkazy jsem nezadával přímo z NetSh (ten má navíc mód online/off-line... který je výchozí?) ale sakum prdum, tedy jak je vidíte "netsh winhttp ...". GPUpdate také nic nezajistí. Kdyby vás něco napadlo, napište.

Lol Phirae

Re:Microsoft Update skrze proxy a tunel
« Odpověď #8 kdy: 18. 08. 2013, 15:11:43 »
Myslím, že bych změnil poskytovatele. Ušetřených několik stovek absolutně to nestojí za čas tím strávený. Mimochodem, i to Teredo je příšerný bazmek.

Tunelář

Re:Microsoft Update skrze proxy a tunel
« Odpověď #9 kdy: 18. 08. 2013, 15:31:18 »
Však já mám těch ISP pro mobilní Internet několik. Zrovna mi udělal dočasnou nabídku na slevu pár stovek T-Mobile, ten mi navíc nic neblokuje a rychlost je maximální dostupná, jenže je taky nejdražší (0,4Kč/MB) a dělám opravdu jen to nejnutnější (zase mu neplatím žádný paušál).

V česku je na mobilní Internet nutné používat několika ISP. Pro různé lokality, pro různé neblokované služby,...

To abych okamžitě, bez změny připojení do Internetu, nemohl zkontolovat aktualizace a virové definice mi opravdu vadí a poskytovatele kvůli tomu změním. Myslím, že i pro ně škoda - rozhodně je nijak nepumpuji, jsem umírněný a měsíčně mi stačí 2-3 GB (pokud stahuji větší množství dat, tak jen proto že něco blokují a já musím použít okliku - update definic klienskou aplikací: 20-400 kB, update prostřednictvím souboru s definicemi: 5-80 MB).
Nikde navíc není napsáno, že příště je nenapadne blokovat něco jiného. Komunikovat se s nimi rozumně nedá, a já pokaždé nebudu přehazovat SIM kartu do telefonu abych provolal dvacku a oni mi řekli že v podmínkách služby zakazují úplně vše a ve smlouvě garantují jen rychlost 16kbps.

Tunelář

Re:Microsoft Update skrze proxy a tunel
« Odpověď #10 kdy: 18. 08. 2013, 16:19:27 »
Tak ještě je všechno jinak.

Na začátek podotýkám, že Windows/Microsoft Update je nastavena tak, že ji může spouštět kterýkoli uživatel počítače.

TOR sám o sobě, ve výchozím nastavení, svede i spojení se servery Microsoftu do svého tunelu. Tato vlastnost se mi nelíbila a tak jsem tuto komunikaci, stahování certifikátů, aktualizaci času a ještě pár věcí směroval jinudy - standardní cestou, mimo TOR-tunel. ISP provedl změnu a tato standardní cesta (k serverům Microsoftu a Akamai) se uzavřela.

Vtip je v tom, že vůbec není třeba pomocí Net Shell-u importovat nastavení z IE proxy do globální proxy, po jejím nastavení.
Úplně stačí změnit nastavení IE proxy uživatele, který vytvořil připojení do Internetu a v jehož kontextu zrovna běží služba Windows Update. Nastavení IE proxy kteréhokoli jiného uživatele může zůstat beze změny.
 
Zajímavé je, a to právě vnášelo chaos, že pokud Windows Update blokuje nastavení IE proxy uživatele, ale natsavení IE proxy správce ho umožňuje tak se aktualizace provede pomocí takto definovaného spojení. Díky menší prodlevě při změně nastavení IE proxy, jsem hned nepoznal jak to funguje.

Tunelář

Re:Microsoft Update skrze proxy a tunel
« Odpověď #11 kdy: 18. 08. 2013, 19:02:22 »
Tak je to musí být jinak, bohužel nevím jak. Ten import proxy pravidel se zřejmě někdy musí udělat. Jestli na to příjdu, tak sem časem napíši jak to je. Zatím mi v tom ta časová prodleva dělá neskutečný bordel. Jsem schopný to zprovoznit a ověřit funkčnost i bezpečnost, ale nemám dostatečnou kázeň, disciplínu, trpělivost a čas abych mohl zaručeně říci jak to funguje a několikrát to s časovým odstupem vyzkoušel.

Píši to jen, pro případ, že by mne chtěl někdo následovat. Problém je zřejmě v tom, že ne každá aktualizace běží ve stejném uživatelském kontextu, a i to musí být pro mnohé matoucí, protože jde o systémovou službu.

Zatím se mějte. Klidně sem dávejte poznámky, studijní zdroje,...

Lol Phirae

Re:Microsoft Update skrze proxy a tunel
« Odpověď #12 kdy: 18. 08. 2013, 19:14:45 »
Samomluva je prvním příznakem šílenství, říkal náš matikář.

Re:Microsoft Update skrze proxy a tunel
« Odpověď #13 kdy: 19. 08. 2013, 11:45:56 »
...Problém je zřejmě v tom, že ne každá aktualizace běží ve stejném uživatelském kontextu, a i to musí být pro mnohé matoucí, protože jde o systémovou službu....

Ahoj, mohl bys rozvést, jak to myslíš? Možná o tom píšeš, ale nějak to nechápu.

Jinak k tomu, že Blesk mobil blokuje Windows updates, pokud tomu opravdu tak je, tak určitě od nich pryč (zkus schválně změnit primární DNS server, místo toho, co ti poskytne Bleskmobil, dej jiný, nějaký veřejný, protože pokud se nemýlím, tak standardní WSUS servery od Micosoftu dostupné pro veřejnost by měly používát 80 a 443 porty, u XP tomu tak bylo, a vzhledem k tomu, že WSUS jde hromadně nastavit jak pro XP, tak i pro Visty, 7, 8 a samozřejmě i serverové edice, tak nevidím důvod, proč by měl mít jiné porty).

Pokud ti WSUS pojede - pak jej Bleskmobil blokuje na základě DNS záznamu (což mi příjde neetické), pokud ti to nepojede, tak ti pravděpodobně nepojede internet vůbec, protože Bleskmobil bude pravděpodobně blokovat ostatní DNS servery (firewallovací pravidlo není pro tento příúpad zas tak složité) (v tomto případě mi to příjde taky neetické).

Co se týče BITS, tak ten je nutný k tomu, aby ti to nevytížilo celou síťovku (velmi zjednodušeně řečeno, celá problematika je složitější, ale to je nad rámec tohoto tématu).

Tunelář

Re:Microsoft Update skrze proxy a tunel
« Odpověď #14 kdy: 19. 08. 2013, 15:10:20 »
Čau Withy, čekal jsem zda se ozveš. Zkusím k tomu něco říci, ale... no však uvidíš sám. Bude to možná trochu nesourodé protože bych potřeboval prostorový zápis informací.

Jejich DNS, ani jiných ISP jsem nikdy nepoužíval, možná na zkoušku. Momentálně používám Open DNS a jako záložní mám Google DNS. Není problém použít cokoli, ale tady problém opravdu není.

Ono je to totiž celé trochu jinak. Jestli to správně chápu a mám vypozorováno, tak některé z těch nedostupných serverů Akamai právě dělají překlad pro servery ctldl.windowsupdate.com, *.download.windowsupdate.com, *.update.microsoft.com, crl.microsoft.com. Pokud vím tak systém Windows Update využívá jen IP adres (můžeš klidně mít blokované DNS) - překládá si sám názvy a určuje servery které budou použity pro poskytnutí služby (ony zmíněné servery Akamai a Microsft, znám i přesné sítě ale nemá cenu hovořit o stéble z kupky sena).

---
Analyzovat celý systém Windows Update je celkem fuška na moji představivost. Zejména proto, že si je snadné udělat zjednodušenou představu, která se vždy časem ukáže jako mylná. Kromě toho co jsem uvedl, jsem třeba vůbec neuváděl, že chování při blokovaném IE na firewallu je také odlišné, a odlišné je i při neomezené odchozí komunikaci.

Třeba Security Essentials Client přes svoji službu/cmd komunikuje se službou WU a ta se násle postará o získání aktualizace. Jenže se zdá, že u některých jiných aplikací, nebo prostě jen za jiné situace (možná automatické hledání nových aktualizací, nebo jen certifikátů) to může proběhnout odlišně. Podle mne v tom hraje roli právě to zda může IE komunikovat a pokud je nastavena proxy tak podle jakých pravidel.
Mám podezdření, že třeba mscrl.microsoft.com (který jsem z TOR-tunelu vyjmul) je služba běžící na nedostupném serveru, nebo není známa její adresa (tady se myslím již IP nepoužívají). Ale kupodivu pokud selže přímé (skrze ISP) stažení CRL, tak služba Windows Update zajistí nějak získání jinou cestou (zřejmě stejnou jakou se stahují samotné aktualizace). Osobně se mi ten TOR-tunel nelíbí, protože v poslední době vydím nustále jen komunikaci na portu 80 (serverů nabízejích službu), kdežto dříve bych přísahal, že šlo většinou o 443 (předpokládám tedy zabezpečené připojení).

Navíc jsem včera narazil na problém ne-MS aplikace (Media Player Classic - Home Cinema) u které jsem také přesně nepochopil jak komunikuje při získávání aktualizací. Je schopná domovský server sama kontaktovat (i když ve firewallu nemá vytvořené pravidlo), ale při zakázané komunikaci IE již není schopná se domluvit zda existují aktualizace. Problém je totiž v tom, že pro zjednošuení jsem povolil komunikovat všem službám které jsem v systému povolil a v tomto se perfektně zorientovat je docela problém.

Prostě to bez dlouhodobého monitorování a vytváření si funkčního modelu, odpovídajícímu mému současnému nastavení, zřejmě nepůjde. A pravděpodobně by bylo vhodné analyzovat i skutečnou komunikaci s danými servery, ne jen sledovat kdo se kam připojí. Na to zatím nemám dostatek znalostí ani čas. To je chaos, co? Časem se s tím nějak poperu a zkusím to zjednodušit.

P.S.
BITS zjednodušeně vím co umí, ale klidně ještě něco napiš, vždy se najde něco co nevím (MS je tajnůstkář jehož tajemství neodhalí ani celoživotní hacking větších machrů než jsem já). Co dělá ten "NetSh Interface PortProxy"? Jak je to s tou změnou metriky (routování) u tereda?

P.P.S
Hele možná se v tom ale plácám úplně zbytečně. Zamotal jsem právě do smyšlených představ, které vznikly na základě několika špatných pozorování. Jestli myslíš, že víš jak Windows Update funguje a jak je využíván aplikacemi, a není to složité popsat, tak to prosím popiš.

Zatím díky Lol-ovi i tobě za reakci.