Categories

Dodawanie kont komputerów z listy do grupy AD

Jeśli mamy grupę komputerów i chcemy wszystkie dodać do wybranej grupy AD, możemy tego łatwo dokonać używając dostępnych narzędzi w Powershellu. Nasz plik z listą komputerów mógłby wyglądać tak:

pre lang=”txt” escaped=”true”>pc1 pc2 pc3 pc4 …

Potrzebny skrypt:

1 2 Get-Content "C:\file.txt" | ForEach-Object {Get-QADComputer $_ |` Add-QADGroupMember -Credential $usercredential -Identity "our_ad_group" }

Event ID 2937, błędna wartość HomeMTA

Po migracji do Exchange 2010 i usunięciu ostatniego serwera Exchange 2003 może się zdarzyć, że atrybut HomeMTA dla użytkowników będzie zawierał nieaktualne dane. Jednocześnie w dzienniku zdarzeń pojawia się ostrzeżenie z ID 2937 ze źródłem MSExchange ADAccess, w którym różne procesy informują o wystąpieniu błędu. Przykład poniżej

Process w3wp.exe () (PID=5884). Object [CN=User1,OU=!Users,DC=dc,DC=test,DC=com]. Property [HomeMTA] […]

Resetowanie asystenta nieobecności w Exchange 2010

Co zrobić by auto-odpowiedź asystenta nieobecności była wysyłana nie raz a np. codziennie? Wystarczy zresetować asystenta, czyli po prostu wyłączyć go i włączyć ponownie. Można by zaproponować użytkownikowi by wykonywał to przy pomocy Outlooka codziennie, jednak istnieje prostszy i zautomatyzowany sposób. Poniższy skrypt Powershell wystarczy dodać do zaplanowanych zadań na serwerze Exchange i już mamy […]

Wysyłanie E-maili jako grupa dystrybucyjna

Ustawienie uprawnień do wysyłania jako inny użytkownik nie jest niczym trudnym. Można tego z łatwością dokonać nawet używając graficznych narzędzi Exchange jak choćby Exchange Management Console. To proste zadanie staje się jednak odrobinę trudniejsze jeśli chcemy dać użytkownikowi prawo wysyłania jako Grupa Dystrybucyjna. By tego dokonać, musimy już użyć Powershella. Składnia nie jest trudna:

Set-DistributionGroup […]

Szukasz skrzynek nieużywanych przez dłuższy czas?

Jeśli spotkałeś się z problemem znalezienia skrzynek do których nie logował się nikt przez dłuższy czas, niezależnie czy był to właściciel skrzynki czy może osoba delegowana to w Exchange 2010 możesz dość szybko wykonać zadanie używając prostego skryptu powershell.

Get-Mailbox -IgnoreDefaultScope | Get-MailboxStatistics |` where {$_.lastlogontime -le ((Get-Date).Adddays(-180))} |` ft displayname,lastlogontime,totalitemsize -AutoSize

Eksport skrzynki pocztowej do pliku .pst Exchange 2010

Poniżej przedstawiam ciekawy skrypt do eksportu skrzynki na Exchange 2010 do pliku .pst. Skrypt po zakończonym eksporcie wysyła maila do wybranej osoby.

#Uruchomienie eksportu dla wybranej skrzynki New-MailboxExportRequest -Mailbox "User1" -BadItemLimit ’20’ -FilePath "\\mailboxserver\pstexport$\"   #Stworzenie pętli sprawdzającej czy eksport się wykonał w 100% $exstat = Get-MailboxExportRequest | Get-MailboxExportRequestStatistics | where {$_.sourceAlias -eq ‚User1’}   […]

Używanie certyfikatów typu Wildcard w Exchange 2010

Zauważyłem, że wielu administratorów ma problemy ze skonfigurowaniem Exchange 2010 z użyciem certyfikatów typu wildcard. By Exchange mógł skorzystać z takiego certyfikatu potrzeba odpowiednio skonfigurować usługi i nie jest to konfiguracja standardowa, raczej poszczególne usługi konfiguruje się w różny sposób. Poniżej przedstawiam ogólne wskazówki jak należy postępować by wszystkie usługi skonfigurować do użycia certyfikatu wildcard.

[…]

Exchange 2010 Tracking Log z ostatnich 30 minut

Poniżej skrypt, który zbudowałem w celu wyświetlenia tracking logów z ostatnich 30 minut na serwerze Exchange 2010.

get-messagetrackinglog -EventID "RECEIVE" -Server hub2 -Start (((get-date -UFormat "%m-%d-%Y")` + " " + ((Get-Date).Addminutes(-30)).ToLongTimeString())) | ft Sender, recipients, MessageSubject, Timestamp

Powershell i wielowartościowe właściwości

Przy okazji edycji „Receive Connectora” na platformie Exchange 2010 postanowiłem przeanalizować możliwość edycji właściwości tegoż connectora przy pomocy PowerShella. Edycja niby rzecz prosta, jednak jeśli przychodzi do właściwości wielowartościowych może napawać małych trudności. Weźmy za przykład właściwość „RemoteIPRanges” w Receive Connektorze, zawiera ona wiele wartości oddzielonych jedynie przecinkiem, jak to widać w poniższym przykładzie:

Get-ReceiveConnector […]