none
Exchange Erweiterung, remote, ps1 oder befehle beim starten von powershell ausführen, template, RRS feed

  • Frage

  • hallo

    wie macht ihr das. Bin leider nicht so fix im Powershell

    ich möchte nicht jedesmal diese zeile neu tippen bzw. kopieren habe aber im Google noch nichts passendes gefunden.

    es geht um die Administration eines Exchange Servers von zwei drei Personen. Ideal wäre wenn die Exchange Erweiterungen am Client wären, aber davon wird meist abgeraten bzgl. empfohlen man solle remote verwenden.

    PS H:\> add-pssnapin Microsoft.Exchange.Management.PowerShell.SnapIn
    add-pssnapin : Es wurden keine Snap-Ins für die Windows PowerShell-Version 5 registriert.

    keine Ahnung wie wir (einfach) lokal zu den Exchange Erweiterung kommen. Vermutlich nur wenn wir die CD Exchange Tools installieren. Eher lästig aufgrund der Voraussetzungen u. wenn ein Rechner wieder getauscht wird.

    wenn sie powershell öffen soll sie nicht immer diese zeile tippen müssen. Ok, man könnte sich eventl. auf ein .\start.ps1 einigen.

    $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://<ServerFQDN>/PowerShell/ -Authentication Kerberos

    Import-PSSession $Session


    Chris

    Sonntag, 17. Juli 2016 09:12

Antworten

  • Moin,

    1. um Add-PSSnapIn (erfolgreich) auszuführen, müssen Exchange Management Tools lokal installiert werden, und dann kannst Du ja auch gleich die "orangene" PowerShell, also EMS,  starten.

    2. Für die Exchange Management Tools sind die Voraussetzungen nicht so wahnsinng umfangreich; Exchange wird Dir i.d.R. auch verzeihen, wenn die Version des PS Snap-Ins sich ein wenig von der der Exchange Server unterscheidet. Trotzdem muss man auch hier natürlich CUs einspielen.

    3. Add-PSSnapIn (in Bezug auf Exchange) in eigenen Skripten wird nicht (und wurde noch nie) von Microsoft unterstützt.

    Ich habe mir die folgende Vorgehensweise angewöhnt:

    • Für "Administration", also für die Eingabe einzelner Befehle *sowie zum Ausführen von Skripten, die keine Exchange-Remoting-Logik implementiert haben* - EMS verwenden und auch dort installieren, von wo man administriert.
    • Für Skripte - ein Modul schreiben, das Remote-Sitzungen initiiert und importiert, und dieses Modul bei allen Skripten explizit laden. Das macht die Skripte unabhängig vom Vorhandensein der Exchange Management Tools auf der Maschine, wo sie ausgeführt werden. Meistens hat man ja so eine Art "Skriptschleuder", Automatisierungs- bzw. ORchestrierungsrechner usw. Die möchte man nicht auch noch mit den Exchange Management Tools belasten.

    Evgenij Smirnov

    msg services ag, Berlin -> http://www.msg-services.de
    my personal blog (mostly German) -> http://it-pro-berlin.de
    Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
    Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com

    In theory, there is no difference between theory and practice. In practice, there is.

    Sonntag, 17. Juli 2016 15:31
  • Hallo Chris,

    ich verwende persönlich das Script von Michel de Rooij:

    Connecting to Office 365/Exchange

    Das habe ich in mein PowerShell Profile eingebunden und kann dann sowohl über die Shell als auch über die ISE mittels

    Connect-ExchangeOnPremises

    mich mit einem meiner Exchange Server verbinden.

    Das Skript ist zwar etwas überladen da auch alle möglichen Office365 Verbindungen möglich sind, aber wenn man Lust hat kann man das ja alles entfernen.

    Grüße
    Klaus

    

    Montag, 18. Juli 2016 07:38

Alle Antworten

  • Moin,

    1. um Add-PSSnapIn (erfolgreich) auszuführen, müssen Exchange Management Tools lokal installiert werden, und dann kannst Du ja auch gleich die "orangene" PowerShell, also EMS,  starten.

    2. Für die Exchange Management Tools sind die Voraussetzungen nicht so wahnsinng umfangreich; Exchange wird Dir i.d.R. auch verzeihen, wenn die Version des PS Snap-Ins sich ein wenig von der der Exchange Server unterscheidet. Trotzdem muss man auch hier natürlich CUs einspielen.

    3. Add-PSSnapIn (in Bezug auf Exchange) in eigenen Skripten wird nicht (und wurde noch nie) von Microsoft unterstützt.

    Ich habe mir die folgende Vorgehensweise angewöhnt:

    • Für "Administration", also für die Eingabe einzelner Befehle *sowie zum Ausführen von Skripten, die keine Exchange-Remoting-Logik implementiert haben* - EMS verwenden und auch dort installieren, von wo man administriert.
    • Für Skripte - ein Modul schreiben, das Remote-Sitzungen initiiert und importiert, und dieses Modul bei allen Skripten explizit laden. Das macht die Skripte unabhängig vom Vorhandensein der Exchange Management Tools auf der Maschine, wo sie ausgeführt werden. Meistens hat man ja so eine Art "Skriptschleuder", Automatisierungs- bzw. ORchestrierungsrechner usw. Die möchte man nicht auch noch mit den Exchange Management Tools belasten.

    Evgenij Smirnov

    msg services ag, Berlin -> http://www.msg-services.de
    my personal blog (mostly German) -> http://it-pro-berlin.de
    Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
    Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com

    In theory, there is no difference between theory and practice. In practice, there is.

    Sonntag, 17. Juli 2016 15:31
  • Hallo Chris,

    ich verwende persönlich das Script von Michel de Rooij:

    Connecting to Office 365/Exchange

    Das habe ich in mein PowerShell Profile eingebunden und kann dann sowohl über die Shell als auch über die ISE mittels

    Connect-ExchangeOnPremises

    mich mit einem meiner Exchange Server verbinden.

    Das Skript ist zwar etwas überladen da auch alle möglichen Office365 Verbindungen möglich sind, aber wenn man Lust hat kann man das ja alles entfernen.

    Grüße
    Klaus

    

    Montag, 18. Juli 2016 07:38