Wir nutzen derzeit ein VNet bei Azure, das den gesamten Datenverkehr über unsere Site-to-Site-Verbindung zu lokalen Netzwerken und dann über unsere Unternehmensfirewall erzwingt. Der gesamte HTTP/HTTPS-Datenverkehr wird weitergeleitet.Windows VM-Proxy zur Bereitstellungszeit
Dies verursacht ein erhebliches Problem, da neu bereitgestellte VMs die Außenwelt nicht sehen können, um auf notwendige Konfigurationselemente wie Azure Extensions oder sogar nicht-proxisierte interne IPs zuzugreifen.
Bis heute habe ich per PowerShell eine perverse Workaround erstellt, wo ich die VM bereitstellen, mit Chef Chefstrap, der die Proxy-Einstellungen überschreibt, um zum Chef-Server zu gelangen, der dann die Proxies konfiguriert.
Aber bis der Benutzer den Internet Explorer startet, setzt er die Proxies nicht so, dass sie in PowerShell verwendet werden können. Insbesondere vor dem Start von IE ist [System.Net.GlobalProxySelection] :: Select leer. Sobald der IE gestartet wurde, wird er ausgefüllt.
Ich habe auch versucht, ein Image vorkonfigurieren und Sysprep'ing es, aber Sysprep löscht die Proxy-Einstellungen.
Als letzten Schritt habe ich ein PowerShell-Skript erstellt, von dem ich dachte, dass es die Proxies setzen würde. Ich wollte dieses Skript über Azure Script Extension verwenden (vorausgesetzt, es ist standardmäßig auf der VM), aber ich kann es nicht bekommen, um mir die gewünschten Ergebnisse zu geben.
Also, meine Frage ist, wie mache ich einen neu bereitgestellten Windows 2012 R2 (und Windows 2008 R2) VM-Proxy bewusst, so dass andere Prozesse in der Bereitstellung Sequenz funktionieren (d. H. Erweiterungen wie die Chef-Erweiterung)? Hier
ist das Skript, das ich erstellt (das nicht wie erwartet):
# See: http://www.geoffchappell.com/notes/windows/ie/firstrun.htm
$regKey = 'HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings'
$proxyServerToDefine = 'http://<PROXY URI>:<PORT>'
Set-ItemProperty -path $regKey ProxyEnable -value 1
Set-ItemProperty -path $regKey ProxyServer -value $proxyServerToDefine
Set-ItemProperty -path $regKey ProxyOverride -value '137.185.235.196;137.185.235.199'
New-Item -Path 'HKLM:\\Software\\Policies\\Microsoft\\Internet Explorer' -Name 'Main' -Force # Does not exist by default
Set-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Internet Explorer\Main' -Name DisableFirstRunCustomize -Value 1
(New-Object System.Net.WebClient).Proxy.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials
Dies zu gebucht werden ServerFault, nicht StackOverflow. –
Vereinbaren Sie dies ein Problem mit dem Serverfehler, aber das ist Ihre Problemumgehung: https://blogs.msdn.microsoft.com/mast/2015/12/01/azure-vm-may-fail-to-activate-over-expressroute/ –
Eigentlich, Simon, ich glaube nicht, dass das die Arbeit für dieses Problem ist. Bei dieser Vorgehensweise werden Netzwerkrouten und keine Proxies zugewiesen. – Cantaberry