lizenzdoc 207 Geschrieben 22. Mai 2020 Melden Teilen Geschrieben 22. Mai 2020 Hi, die Produktbezeichnung sagt ja alles... "für zu Hause" Microsoft 365 Family (früher Office 365 Home) https://www.microsoft.com/de-de/microsoft-365/compare-all-microsoft-365-products?market=de Beim Audit kann man ja versuchen sich heraus zu reden, dass es nicht eindeutiger eingeschränkt wurde .... ich sehe es so, dass es nur für den Privatgebrauch ist. VG, Franz Zitieren Link zu diesem Kommentar
Sunny61 809 Geschrieben 22. Mai 2020 Melden Teilen Geschrieben 22. Mai 2020 vor 10 Stunden schrieb xrated2: Schlussendlich funktioniert es ja jetzt und das ist am wichtigsten. Aber wie lange ich dafür gebraucht habe, sage ich jetzt besser nicht. Die genaue Lösung fehlt zum Abschluß noch. Und Du wirst eh bezahlt, das sind als Ehda Kosten. Egal ob Du 8, 10 oder 12 Stunden am Tag an so etwas arbeitest, Du kostest am Monatsende nicht mehr. Solange Du alle sonst anfallende Arbeit in der Zeit erledigen kannst, juckt das den AG nicht. :) Zitieren Link zu diesem Kommentar
xrated2 15 Geschrieben 22. Mai 2020 Autor Melden Teilen Geschrieben 22. Mai 2020 (bearbeitet) Na nicht ganz, da ich nach Std. bezahlt werde und von extern bin. Aber da ich mir vieles erst aneignen musste kann ich auch nicht alles berechnen. Ich hab an den Tasks einfach so lange rumgeschraubt bis es ging. Zumindest hoffe ich das es jetzt auf allen PCs geht. Interessant ist auch, wenn man powershell.exe aufruft das windowstyle nicht funktioniert, wohl aber wenn man den vollen Pfad zur exe angibt. Oder das bei Datei kopieren, aktualisieren nicht heisst, dass der Inhalt der Datei überprüft wird und falls notwendig kopiert wird, sondern nur die File Attribute. Bei einen Task musste ich nämlich die Datei auf lokal kopieren, denn das Script stellt die VPN Verbindung her, falls nötig. Das hier (funktioniert nur bei VPN die über -Alluserconnection eingerichtet sind): #vpn automatic connect $vpnname = "name" $lan = "192.168.3." $vpn = Get-VpnConnection -Alluserconnection | where {$_.Name -eq $vpnname} if ($vpn.ConnectionStatus -eq $null) { write-output "VPN Connection $vpnname doesnt exist!" Exit } #$ipV4 = (Test-Connection -ComputerName (hostname) -Count 1 | Select -ExpandProperty IPV4Address).IPAddressToString # above is not reliable because it will output the first interface which may be also ppp adapter $ipv4 = (Get-WmiObject -Class Win32_NetworkAdapterConfiguration | where {$_.DefaultIPGateway -ne $null}).IPAddress | select-object -first 1 while ($true) { $vpn = Get-VpnConnection -Alluserconnection | where {$_.Name -eq $vpnname} write-output $vpn.connectionstatus if ($vpn.ConnectionStatus -eq "Disconnected" -And $ipv4 -Notlike "*$lan*") { #$processactive = Get-Process "rasphone" -ErrorAction SilentlyContinue #if($processactive -eq $null) # { # $cmd = $env:WINDIR + "\System32\rasphone.exe" # $expression = "$cmd -d $vpnname" # Invoke-Expression -Command $expression # } #below probably only works with alluserconnection profiles $cmd = $env:WINDIR + "\System32\rasdial.exe" $expression = "$cmd $vpnname" Invoke-Expression -Command $expression } start-sleep -seconds 60 } bearbeitet 22. Mai 2020 von xrated2 Zitieren Link zu diesem Kommentar
testperson 1.728 Geschrieben 22. Mai 2020 Melden Teilen Geschrieben 22. Mai 2020 (bearbeitet) Hi, du möchtest dir eine Art "Always On VPN" nachbauen? Dafür wäre eigentlich DirectAccess (Scheidet aus wegen Windows Enterprise am Client?), Always On VPN (Scheidet aus wegen nur Windows 10 oder Verwaltung/Verteilung?) oder 3rd Party (Scheidet aus wegen Kosten?) bessere Alternativen. Wenn das so mit dem Script per Task für dich passt und alles funktioniert, dann sollte das Script aber noch etwas optimiert werden. Anstatt das Script "mittendrin" mit "Exit" zu verlassen, solltest du dir einmal if / elseif / else ansehen und bspw. den Rest in ein else-Statement packen. Anstelle von *-WMIObject (ist AFAIK deprecated) solltest du *-CIMInstance nutzen Wenn möglich würde ich beides vermeiden und bei der IPv4 Adresse auf "Get-NetIPAddress" zurückgreifen Invoke-Expression würde ich durch "Start-Process" ersetzen Bzw.: https://adamtheautomator.com/powershell-start-process/ Eine Endlosschleife und "Start-Sleep" würde ich auch vermeiden. Anstelle dessen ggfs. Einen Task, der bei Anmeldung den VPN Tunnel prüft und ggfs. aufbaut Weiterer Task der auf ein "VPN Disconnect" Event triggered und VPN Aufbau startet (Wenn beim Aufbau einer VPN Verbindung etwas passieren soll: Weiterer Task der auf "VPN Connect" Event triggered Das wären zumindest meine groben Ansätze, die ich durchspielen würde. BTW.: Da du als externer ja auch Geld kostest, wäre es evtl. zielführender in eine o.g. Supportete Lösung bzw. fertige Lösung zu investieren. Gruß Jan bearbeitet 22. Mai 2020 von testperson 1 Zitieren Link zu diesem Kommentar
NorbertFe 2.089 Geschrieben 22. Mai 2020 Melden Teilen Geschrieben 22. Mai 2020 vor 16 Minuten schrieb testperson: Da du als externer ja auch Geld kostest, wäre es evtl. zielführender in eine o.g. Supportete Lösung bzw. fertige Lösung zu investieren. <Handwerkermodus>geht doch</Handwerkermodus> Zitieren Link zu diesem Kommentar
xrated2 15 Geschrieben 22. Mai 2020 Autor Melden Teilen Geschrieben 22. Mai 2020 (bearbeitet) @testperson Get-NetIPAddress zeigt ja mehrere Interfaces, wie bekommt man da das richtige wenn Ethernet oder Wireless verwendet wird? Ich habe auch schon Rechner gesehen bei denen beides gleichzeitig aktiv war. Warum keine Endlosschleife? Weil man die nur durch Neustart wegbekommt, wenn später was geändert wird? Wenn man mehrere Tasks macht, müsste ich aber auch mehrere Dateien kopieren und ich wollte die Verarbeitungszeit der GPO nicht unnötig hoch treiben, vor allem weil es schon soviele sind. Und wenn man das Script alle 60s mit Scheduler ausführt (um die Endlosschleife zu vermeiden), flackert ständig was beim User hoch. Ausser man trickst da wieder bei der Ausführung von powershell.exe rum. Korrekt, kein Enterprise und daher scheidet auch Always On mit Gerätetunnel aus. An was dachtest du als 3rd Party Client der möglichst zuverlässig die Verbindung hält und mit dem man auch problemlos VOIP hinbekommt? Dazu kommt noch das der Server hinter einem NAT steckt und auch kein IKEv2 Mobility funktioniert damit die Verbindung bei Netzwerkproblemen gehalten wird, deswegen auch das Script. bearbeitet 22. Mai 2020 von xrated2 Zitieren Link zu diesem Kommentar
testperson 1.728 Geschrieben 22. Mai 2020 Melden Teilen Geschrieben 22. Mai 2020 Wenn ich das richtig verstehe, brauchst du die IPv4 nur, um zu prüfen, ob du intern oder extern bist oder ist das VPN Netz 192.168.3.x/24? $IPv4 = Get-NetIPAddress | where { $_.AddressFamily -eq "IPv4" -and $_.IPAddress -match "192.168.3."} # ... if(($vpn.ConnectionStatus -eq "Disconnected") -And (-not $ipv4)) Ich würde, wie gesagt, das Script nur dann starten, wenn ich es brauche. Hier solltest du mit den Events klar kommen bzw. mit "Bei Anmeldung" In meinem Bereich setzen wir ausschließlich auf Citrix-Terminalserver und veröffentlichen diese über das Netscaler Gateway. Daher habe ich da keine produktiv genutzten Lösungen. Der Netscaler könnte das allerdings. Ansosnten empfiehlt Richard Hicks, der ganz fit in dem Bereich ist "Netmotion": https://directaccess.richardhicks.com/netmotion/ Ich habe das Gefühl, dass du dich ein wenig auf deine potentielle "Lösung" versteift hast, die für dich in Richtung "Always On VPN Alternative" geht. In einem Anderen Thread hast du das Problem, dass Scripts / verschiedene CSEs so nicht funktionieren. Die Frage wäre daher, was ist die Anforderung dahinter? Müssen die Scripts überhaupt laufen oder sollte man z.B. bei den Scripts ansetzen und ggfs. ablösen? Zitieren Link zu diesem Kommentar
xrated2 15 Geschrieben 22. Mai 2020 Autor Melden Teilen Geschrieben 22. Mai 2020 vor 2 Stunden schrieb testperson: Wenn ich das richtig verstehe, brauchst du die IPv4 nur, um zu prüfen, ob du intern oder extern bist oder ist das VPN Netz 192.168.3.x/24? $IPv4 = Get-NetIPAddress | where { $_.AddressFamily -eq "IPv4" -and $_.IPAddress -match "192.168.3."} # ... if(($vpn.ConnectionStatus -eq "Disconnected") -And (-not $ipv4)) Ich würde, wie gesagt, das Script nur dann starten, wenn ich es brauche. Hier solltest du mit den Events klar kommen bzw. mit "Bei Anmeldung" In meinem Bereich setzen wir ausschließlich auf Citrix-Terminalserver und veröffentlichen diese über das Netscaler Gateway. Daher habe ich da keine produktiv genutzten Lösungen. Der Netscaler könnte das allerdings. Ansosnten empfiehlt Richard Hicks, der ganz fit in dem Bereich ist "Netmotion": https://directaccess.richardhicks.com/netmotion/ Ich habe das Gefühl, dass du dich ein wenig auf deine potentielle "Lösung" versteift hast, die für dich in Richtung "Always On VPN Alternative" geht. In einem Anderen Thread hast du das Problem, dass Scripts / verschiedene CSEs so nicht funktionieren. Die Frage wäre daher, was ist die Anforderung dahinter? Müssen die Scripts überhaupt laufen oder sollte man z.B. bei den Scripts ansetzen und ggfs. ablösen? Genau, ob intern oder extern. Für VPN habe ich ein anderes Subnet, wo ich aber überlege das umzustellen, wegen Probleme mit Namensauflösung siehe: Ich habe die Schleife im Script eben reingemacht, damit ständig überwacht wird ob der Client im VPN ist und falls nicht erfolgt automatisch der Connect. Und da kenne ich kein Event was dieses erkennt ausser eben ständig den Connectstatus vom VPN abzufragen. Bei Scripts bin ich zum Glück bis jetzt nur mit dem bereits erwähnten für VPN ausgekommen und sonst brauche ich keine CSE welche synchrone Anmeldung erfordern. Also eigentlich gehts im Moment nur um kleine Optimierungen und keine Show Stopper. Zitieren Link zu diesem Kommentar
xrated2 15 Geschrieben 23. Mai 2020 Autor Melden Teilen Geschrieben 23. Mai 2020 @testuser Man kann ja tatsächlich im Scheduler ein Event vom Ereignisprotokoll definieren z.B. wenn Rasclient einen Disconnect macht, dass ist ja noch viel besser Danke für den Hinweis. Zitieren Link zu diesem Kommentar
testperson 1.728 Geschrieben 23. Mai 2020 Melden Teilen Geschrieben 23. Mai 2020 (bearbeitet) Also die Erleuchtung hätte schon auf Seite 1 kommen können: https://www.mcseboard.de/topic/218052-wpp-und-powershell-scripts/?do=findComment&comment=1401007 bearbeitet 23. Mai 2020 von testperson Zitieren Link zu diesem Kommentar
xrated2 15 Geschrieben 23. Mai 2020 Autor Melden Teilen Geschrieben 23. Mai 2020 (bearbeitet) Überlesen oder noch nicht so weit gedacht. Ich habe jetzt folgende Trigger in einem Task Nachteil allerdings wie schon bemerkt, das es jedes mal beim User flackert was ich jetzt mal mit VBS (geht wohl nicht anders) umgangen habe. bearbeitet 23. Mai 2020 von xrated2 Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.