Jump to content

pampersrocker

Members
  • Gesamte Inhalte

    312
  • Registriert seit

  • Letzter Besuch

Beiträge erstellt von pampersrocker

  1. Ja, das ist er auch, aber ich bekomme die Foreach-Schleife nicht in den Pseudocode eingebaut.. :schreck:

     

     

    .. hab die Lösung gefunden:

    foreach ($AD in $AppData) 
    {
        $tmpServers = $null
        if ([string]::IsNullOrEmpty($AD.Servers)) 
        {
            if (![string]::IsNullOrEmpty($AD.WorkerGroups)) 
            {
                foreach ($WD in $WorkerData)
                {
                    $WorkerGroupsCollection = $AD.WorkerGroups.split(";").Trim()
                    foreach ($wgc in $WorkerGroupsCollection) 
                    {
                       if ($wgc -eq $WD.WorkerGroups)
                       {
                       $tmpServers = $tmpServers + $WD.ServerName
                       }
                    }
                }
                $AD.Servers = $tmpServers
            }  
        }
    }
    
  2. Hi Cybquest,

     

    vielen Dank für deine Antwort. Ich habe das mal in Code umgesetzt. Jetzt werden die WorkerGroups anstatt die ServerName in das Feld Servers eingetragen.. Hier mein Code:

    foreach ($AD in $AppData) 
    {
        $tmpServers = $null
        if ([string]::IsNullOrEmpty($AD.Servers)) 
        {
            if (![string]::IsNullOrEmpty($AD.WorkerGroups)) 
            {
                foreach ($WD in $WorkerData)
                {
                    if ($AD.Servers -eq $WD.WorkerGroups)
                    {
                    $tmpServers = $tmpServers + $WD.ServerName
                    }
                }
                $AD.Servers = $tmpServers
            }  
        }
    }
    

    Hast du eine Idee? :-)

     

    Nachtrag: Achso - um auf die Frage zu antworten. Die Mehrfacheinträge sind per Semikolon getrennt.

  3. Hallo zusammen,

    vielleicht könnt ihr mir weiterhelfen. Ich glaube, ich habe mir gerade einen Knoten in den Kopf gedacht und bekomme ihn aktuell nicht entfernt.

    Folgendes Szenario:
    Ich habe zwei CSV-Dateien, die ich jeweils in eine Variable lade. ($ApplicationData & $WorkerGroupData).

    In $ApplicationData habe ich unter anderem die Properties "Servers" und "WorkerGroups".
    In $WorkerGroupData habe ich unter anderem die Properties "WorkerGroupName" und "ServerName".

    Ich möchte jetzt für jeden Eintrag in $ApplicationData prüfen, ob "Servers" leer ist, wenn "Servers" leer ist, soll überprüft werden, ob "WorkerGroups" auch leer ist. Ist "WorkerGroups" nicht leer, soll der Inhalt aus "WorkerGroups" mit dem Inhalt aus $WorkerGroupData.WorkerGroupName" verglichen werden. Wenn das identisch ist, sollen alle gelieferten "$WorkerGroupData.ServerName" in "$ApplicationData.Servers" eingetragen möglich. Mehrere "Servers" pro "$ApplicationData"-Datensatz sind möglich.

    Habt ihr einen Lösungsansatz für mich?

    Beste Grüße,

     

    pampersrocker
     

  4. Hallo zusammen,

     

    ich habe folgenden Problem und würde gerne dazu eure Meinung hören:

     

    Szenario:

    1 Domain bei Strato inkl. Webspace (Beispiel.de)

    1 lokaler Exchange Server (SBS 2011) ohne feste IP-Adresse

     

    Auf dem Strato-Email-Server ist ein Info-Postfach konfiguriert, dass zwingend erhalten und weiterhin auf diesem Server laufen soll, da hier ein Tool darauf zugreift und E-Mails abholt und ggf. löscht. Das kann nicht umgebaut werden und muss weiterhin hier laufen.

    Der SBS Server wurde jetzt so auf dem Strato-Interface reinkonfiguriert, dass der per Sub-Domain (msexch.beispiel.de) erreichbar ist. Was da genau gemacht wurde, kann ich noch nicht sagen, aber jedenfalls scheint das der Dyndns-Ersatz zu sein.

     

    Jetzt möchte ich, dass der Strato-Email-Server seine E-Mails (info@beispiel.de) als Kopie an den Exchange weiterleitet und das der Exchange mit der Domain (Beispiel.de) antworten kann. Wie gesagt, die E-Mails an Info@beispiel.de müssen weiterhin auf dem Strato-Server liegen.

     

    Wenn es jetzt noch möglich ist, möchte ich zusätzliche Benutzer/Postfächer auf dem SBS anlegen und E-Mails versenden können. Auf jeden Fall muss ich aber auch vom Exchange-Server aus mit der E-Mail-Adresse info@beispiel.de antworten bzw E-Mails schreiben können.

     

    Das Inkonsistenzen entstehen, wenn ich auf dem Strato-Server Emails lösche, aber Kopien sich noch auf dem Exchange-Server befinden, ist mir egal.

     

    Wie kann man solch eine Lösung bauen? Hat hier jemand eine Idee für mich? Was muss ungefähr gemacht werden?

     

    Ich freue mich auf eure Anregungen und Kommentare!

     

    Beste Grüße,

     

    PampersRocker

  5. Hallo zusammen,

     

    wir planen hier den Umzug bestimmter Shares innerhalb der Umgebung und stehen vor dem Problem, dass in vielen GPOs UNC-Pfade stehen, die dann alle geändert werden müssen. Natürlich weiß niemand auf Anhieb um welche GPOs es sich handelt, so dass defacto alle angefasst, durchsucht und geändert werden müssen. Das ist händisch irgendwie natürlich etwas nervig, so dass ich Frage, ob von euch jemand eine Idee hat wie man das ggf. automatisieren könnte?

     

    Beste Grüße,

  6. Hallo zusammen,

     

    ich stehe vor der Aufgabe das .NET Framework 4 auf diverse Rechner zu verteilen und bekomme es nicht hin eine Erfolgsmeldung/Fehlermeldung über den Installationsstand in eine Logdatei zu schreiben. Folgender Code funktioniert soweit problemlos:

     

    psexec @clients.txt -c -f -d -u "domain\username" -p "Kennwort" dotnetfx40_full_x86_x64.exe /q >> log.txt

     

    Problematisch ist wohl der Parameter -d, da dieser dafür sorgt sofort den Kopier- und Installationsvorgang am nächsten System zu starten. Dafür bekomme ich lediglich den Hostname in die Logdatei geschrieben.

     

    Alternativ habe ich mir eine zweite Batchdatei geschrieben (wird manuell nach geschätzter Installationsdauer ausgeführt), die alle Clients nochmal durchgeht und auf einen Registrierungsschlüssel prüft, wenn dieser vorhanden ist, war die Installation erfolgreich, wenn nicht, dann nicht. Das ist natürlich mehr als unschön. Hat hier jemand eine Idee wie ich das unkompliziert regeln kann?

  7. Natürlich nichts. Ich habe das nochmals mit drei GPOs gebaut. Den LBVM (merge) alleine in eine Richtlinie gepackt und in die beiden anderen Richtlinien nur jeweils die grundsätzliche Aktivierung des Screensavers, bzw. das Deaktivieren des Screensavers. Wirkungsbereich für die Aktivierung war auf "authenticated users" und für die Deaktivierung auf "Gruppe mit Konten die das nicht haben sollen". Die Sicherheitseinstellungen waren jeweils auf "lesen" und "Gruppenrichtlinie übernehmen". Die Rangfolge habe ich in beiden Versionen getestet (LBVM immer an Position Nr. 1). So wie du es geschrieben hast - wenn ich dich richtig verstanden habe. Das Ergebnis brachte wieder keinen Erfolg.

     

    Edit: Der Unterschied, den ich zur TS Konfiguration feststelle ist, dass dort in der Gruppe Usernamen eingetragen sind. (was ja auch Sinn macht) In der Testkonfiguration Computeraccounts.

  8. Also ich habe Folgendes gemacht:

     

    1.) GPO1 zur Deaktivierung des Screensavers bearbeitet und alle "deny" aktionen entfernt

    2.) GPO2 mit anderen Screensaver Settings entworfen:

    - LBVM aktiviert und auf merge

    - alle Eigenschaften die in GPO1 auf "aktiviert" gesetzt wurden, sind jetzt "deaktiviert"

    3.) Sicherheitsberechtigungen von GPO2 angepasst, so dass nur die Gruppe (Mitglieder sind die Computeraccounts) diese lesen darf.

    4.) Rangfolge von GPO2 ist Position Nr. 3, GPO1 ist auf Position Nr. 4.

     

     

    Fazit: LBVM ist aktiv auf "merge" (und wird sogar von GPO2 gezogen). D.h. die Priorität scheint zu stimmen. Screensaver Settings von GPO1 werden für alle Computer übernommen. *hmpf* Ich bin heute zu schwer von Begriff.. :-(

  9. Was haltet ihr davon, wenn ich Loopback einfach deaktivere? Wird meiner Meinung ja nicht gebraucht. Ich denke, es wurde halt nur übernommen, da die meisten Richtlinien bei uns auf TS wirken sollen.

     

    Ansonsten zum Verständnis muss ich Folgendes machen:

     

    - 1.) GPO mit den negierten Einstellungen bauen

    - 2.) Die entsprechenden Computerkonten der neuen GPO zuordnen

    - 3.) Das neu gebaute GPO eine höhere Priorität als dem ursprünglichen GPO geben

  10. Kein Problem:

     

    relevante Struktur:

     

    Clients-OU mit diversen OUs darunter für die Standorte und zur Spezifikation der Clients. Die Richtlinie zur Aktivierung liegt direkt auf der Clients OU. Zusätzlich gibt es in den unteren OUs noch Richtlinien für den WSUS. Hier werden nur computerbezogene Einstellungen vorgenommen. Loopback ist jeweils nicht konfiguriert. Die Priorität liegt natürlich niedriger als die WSUS-Richtlinien, da diese ja in hierachisch niedrigeren OUs verknüpft sind.

     

    Der letzte Satz im Edit macht mich stutzig. Wenn ich die Richtlinie auf "authentifizierte Benutzer" wirken lasse, ist dort natürlich auch klar "Gruppenrichtlinie übernehmen" angeklickt. Wirkt das explizite "verweigern", das ich über die zusätzliche Gruppe in der Delegierung (Sicherheitseinstellung) konfiguriere nicht? Ich war der Meinung, dass das restriktivere gewinnt - das wäre ja ein verweigern.

  11. Ja, die Rechner wurden neugestartet.

     

    Für die Richtlinie wurden folgende Sicherheitseinstellungen vorgenommen:

     

    Authenticated Users:

    - lesen (zulassen)

    - Gruppenrichtlinie übernehmen (zulassen)

    Testgruppe zur Deaktivierung:

    - lesen (zulassen)

    - Gruppenrichtlinie übernehmen (verweigern)

     

    Richtlinieneinstellungen:

    - User Group Policy loopback processing mode Aktiviert

    Mode: Merge

    - Control Panel/DisplayAusblenden

    Richtlinie Einstellung

    Hide Screen Saver tab Aktiviert

    Password protect the screen saver Aktiviert

    Screen Saver Aktiviert

    Screen Saver timeout Aktiviert

    Number of seconds to wait to enable the Screen Saver

     

    Seconds: 900

     

    Noch weitere Ideen?

×
×
  • Neu erstellen...