Exchange Server 2010 More PowerShell !

by Arman Obosyan 11. May 2009 13:52

e14-ps00

Больше PowerShell-а, еще больше! Я бы начал очередную заметку про Exchange Server 2010 с этих слов, впрочем  что я уже сделал :-)

Для меня PowerShell это то чего мне всегда не хватало в администрировании (думаю и для других тоже) с выходом Exchange Server 2007 в этом убедились все администраторы Exchange Server, рассказывать о прелестях и возможностях PowerShell выходит за рамки моего стиля Pauca Verba (немногословно) да и в интернете вы найдете много профессионально написанных статей на эту тему, а мне дилетанту в этом деле (написании статей, заметок) хочется рассказать о новых приятных “фишках” добавленных в Exchange Server 2010 (далее E14) по части PowerShell (PS)

Пожалуй самое первое что заметит администратор после установки E14 по части PowerShell это то что иконок запуска окна Exchange Management Shell (EMS) стало два! (2) Почему два? (а я вот о чем, Больше PowerShell-а, еще больше!)

Exchange Management Shell

Exchange Management Shell (Local Powershell)

Дело в том что в E14, PowerShell всегда соединяется с сервером через Internet Information Server к каталогу powershell, независимо от того, вы подключаетесь на локальный сервер или на удаленный сервер, тут WinRM является механизмом связи между Shell сессией и сервером E14.

При запуске Exchange Management Shell, происходит подключение к серверу и загрузка доступных cmdled-ов с сервера

Пример подключения EMS к серверу,

e14-ps02 e14-ps01

По умолчанию ярлык запуска EMS содержит параметры

'C:\Program Files\Microsoft\Exchange Server\V14\bin\RemoteExchange.ps1'; Connect-ExchangeServer -auto"

Как нетрудно догадаться что делает -auto, можно создать дубликат ярлыка с параметрам (пример) Connect-ExchangeServer -ServerFQDN e14ex02.corp.postmaster.ge и после запуска работать сразу с удаленным сервером, или в уже запушенном окне переключатся меж серверами (или организациями) командой Connect-ExchangeServer, стоит заметить что данная команда доступна только в RemoteExchange.ps1.

Вы наверно подумаете для чего так намудрили и теперь подключение происходит таким вот образом, а сделано это потому что была ведена Role Based Access Control (RBAC) которая после проверки вашего доступа и делегированных вам прав, позволяет работать в повершелл только с теми cmdled-ами на роли которых вы имеете права, тем самым при запуске вы получаете своё окружение PS.

Также стоит заметить что теперь и Exchange Management Console (EMC) работает по принципу соединения IIS и работа WinRM независимо от того, вы подключаетесь на локальный сервер или на удаленный сервер

Пример подключения EMC к другому серверу или тут про Exchange Online

e14-ps04 e14-ps03

Тут также присутствует RBAC и вы получаете только то что вам дано и не более.

Вы спросите а как же локальная работа на сервере? Для этого мы используем Exchange Management Shell (Local Powershell) который использует уже знакомый нам 'C:\Program Files\Microsoft\Exchange Server\V14\bin\Exchange.ps1'

Тут все как раньше

e14-ps05

Кстати кто устанавливал Exchange Server 2010 Beta на Windows Server 2008 R2 RC (6.1.7100) наверно встретился с несовместимостью в работе WinRM+PowerShell,

Вот тут то и спасает Exchange Management Shell (Local Powershell) которая работает исправно а вот о EMC и EMS сказать подобное пока нельзя, обещали исправить в следующих версиях E14.

Что еще спросите вы, обратите внимание на окно свойства пользователя, значок PowerShell, теперь все что было изменено можно видеть как это выглядит в PS

 e14-ps07 e14-ps08

Тем самым можно к примеру не зная как это делается с PS всегда научится у того же EMC, далее вам уже нечего не стоит придумать некий ваш скрипт и “за пэйплайнить” несколько скриптов сразу. Очень полезно тем кто незнаком с повершел, можно всегда видеть что происходит на самом деле в PowerShell

Больше PowerShell-а, еще больше!? Ага, вот еще, теперь все проделанные команды можно видит еще и виде лога проделанной работы, все действия проделанные с консоли EMC, логируются в отдельном окне и по завершению работы можно сохранить и заодно посмотреть что же вы 3-мя кликами мыши наделали в повершеле,

e14-ps09 e14-ps10

e14-ps11

 

Е��е PowerShell? А как вам логии всего что происходит в PowerShell так еще и в удобном доступном месте к примеру в почтовом ящике?

 

Новая фишка Administrator Audit Logging, как она работает? Для начала сконфигурируем ее,

Запускаем наш Exchange Management Shell (Local Powershell) и набираем

e14-ps12

Set-AdminAuditLogConfig -AdminAuditLogEnabled $True

И на заранее созданный почтовый ящик adminauditlog@postmaster.ge направляем наши PowerShell логии

Set-AdminAuditLogConfig -AdminAuditLogMailbox adminauditlog@postmaster.ge

Теперь все проделаные нами действия будут приходить нам на заданыый почтовый яшик,

 e14-ps13 e14-ps14

Подробно о команде Set-AdminAuditLogConfig можно как всегда посмотреть командой get-help Set-AdminAuditLogConfig –full, можно сконфигурировать на запись в лог конкретных действий к примеру только set* или set-mailbox* и так далее.

И в заключении я могу сказать одно что в Exchange Server 2010 для начинающих только работать в Exchange Management Shell открываются новые возможности в изучении и познании работы EMS, если раньше мы могли довольствоваться только “выходным содержимым завершившейся команды в визарде” и ее копированием, то теперь можно пожалуй в любом месте сменив любой параметр предварительно увидеть как это выглядит в PowerShell, видеть что происходит на протяжении всей сесии работы, команды повершела, логировать их и получать на маил, ну и теперь скажите что EXCHANGE ROCKS! :-)

 

[addlang]

 

 

e14-ps00 მეტი PowerShell, კიდე უფრო მეტი! ამ სიტყვებით მინდა დავიწყო ეს სტატია Exchange Server 2010 – ს შესახებ. :-)

 PowerShell ჩემთვის არის ის, რაც ყოველთვის მაკლდა ადმინისტრირებაში (ალბათ ამაში ბევრი მკითხველი დამეთანხმება), Exchange Server -ის ადმინისტრატორები ამაში დარწმუნდნენ Exchange 2007-ს გამოსვლის თანავე. არ დავიწყებ მოყოლას PowerShell–ის საშუალებების და უპირატესობების შესახებ, რადგან ეს არ შეესაბამება ჩემ სტილს Pauca Verba (მოკლედ და კონკრეტულად), მითუმეტეს ინტერნეტში არის ბევრი პროფესიონალური სტატია ამ თემაზე, მე კი, როგორც დილეტანტი სტატიების დაწერის საკითხში მინდა მოვყვე PowerShell (PS) -თან დაკავშირებულ სასიამოვნო ახალ მომენტებზე , რომლებიც დაემატა Exchange Server 2010–ს (შემდეგში E14).

ყველაზე მთავარი და თვალსაჩინოა ის ფაქტი, რომ დაყენების თანავე ვხედავთ Exchange Management Shell (EMS) - ის ორ (2) პიქტოგრამას. რატომ ორს? მეც ამას ვამბობ – მეტი PowerShell, კიდე უფრო მეტი!

Exchange Management Shell

Exchange Management Shell (Local Powershell)

საქმე იმაშია, რომ E14-ში PowerShell ყოველთვის უკავშირდება სერვერზე PowerShell–ის კატალოგს Internet Information Server–ის გავლით, არა აქვს მნიშვნელობა როგორ ხდება დაკავშიდება – ლოკალურად თუ დისტანციურად. ამ შემთხვევაში WinRM აკავშირებს PowerShell-ის სესიას და E14-ს.

EMS- ის გაშვების თანავე მყარდება კავშირი სერვერთან და სერვერიდან იშვება ხელმისაწვდომი cmdlet-ები. EMS და სერვერის კონექტის მაგალითი:

e14-ps02 e14-ps01

EMS- ის შორტქატი ავტომატურად შეიცავს პარამეტრებს :

'C:\Program Files\Microsoft\Exchange Server\V14\bin\RemoteExchange.ps1'; Connect-ExchangeServer -auto"

-auto –ს ფუნქცია თვალსაჩინოა, შესაძლებელია შორტქატის დუბლიკატის შექმნა შემდეგი პარამეტრით : Connect-ExchangeServer -ServerFQDN e14ex02.corp.postmaster.ge და გაშვების თანავე ვიმუშავოთ სერვერზე დისტანციურად, ან შესაძლებელია უკვე გაშვებულ ფანჯარაში მოვახდინოთ გადართვა სხვა სერვერზე (ან ორგანიზაციაზე) Connect-ExchangeServer ბრძანების საშუალებით. ავღნიშნავ, რომ ეს ბრძანება ხელმისაწვდომია მხოლოდ RemoteExchange.ps1–ში.

ალბათ დაგაინტერესებთ ამ დამატებითი პარამერტის აზრი, ეს გახლავთ სერვისი Role Based Access Control (RBAC) – ს გამოყენება, რომელიც დაკავშირების თანავე ამოწმებს თქვენ წვდომას და თქვენზე დელეგირებულ უფლებეს, ამ შემოწმების შემდეგ Role Based Access Control (RBAC) გაძლევთ საშუალებას გამოიყენოთ მხოლოდ ის cmdlet-ები, რომელზეც გაქვთ წვდომა – ანუ EMS -ის გაშვებისას იღებთ თქვენთვის განკუთვნილ PS გარემოებას.

ასევე აღსანიშნავია, რომ ეხლა უკვე Exchange Management Console (EMC)–ც მუშაობს IIS-თან დაკავშირების პრინციპით და WinRM – ის მუშაობა არ არის დამოკიდებული იმაზე, თუ როგორ ხდება კონექტი – ლოკალურად თუ დისტანციურად.

იხილეთ EMC-ს დაკავშირების მაგალითი აქ ან აქ Exchange Online

e14-ps04 e14-ps03

აქაც მუშაობს RBAC და ღებულობთ მხოლოდ შესაბამის გარემოებას.

ალბათ გაგიჩნდებათ კითხვა სერვერზე ლოკალური მუშაობის შესახებ. ამისთვის გამოიყენება Exchange Management Shell (Local Powershell) ჩვენთვის უკვე ნაცნობი პარამეტრით: 'C:\Program Files\Microsoft\Exchange Server\V14\bin\Exchange.ps1'

აქ ყველაფერი ძველებურად არის :

e14-ps05

სხვათაშორის, ვინც დააყენა Exchange Server 2010 Beta Windows Server 2008 R2 RC (6.1.7100)–ზე შეამჩნევდა შეუთავსებლობას მუშაობაში WinRM+PowerShell. აქ გვეხმარება Exchange Management Shell (Local Powershell), რომელიც კარგად მუშაობს, EMS და EMC–ზე მაგას ჯერჯერობით ვერ ვიტყვი, მაგრამ Microsoft გვპირდება ამის გასწორებას E14 – ს შემდეგ ვერსიებში.

Что еще спросите вы, დაუკვირდით მომხმარებლის თვისებების (Mailbox Properties) ფანჯარას. ქვემოდ მოთავსებულია PowerShell-ის პიქტოგრამა, რომლის საშუალებით შეგვიძლია ვნახოთ როგორ გამოიყურება ესა თუ ის ცვლილება PowerShell–ში.

 e14-ps07 e14-ps08

ეს ძალიან სასარგებლოა იმათთვის, ვინც PS-ში ნაკლებად ერკვევა – თუ ვერ ვაკეთებთ გარკვეულ მოქმედებებს PS – ში შეგვიძლია გავაკეთოთ იგივე EMC – ში და ვნახოთ შესაბამისი კოდი.

მეტი PowerShell, კიდე უფრო მეტი? მართალია – ეხლა ყველა შესრულებული ბრძანების ლოგიც შეგვიძლია ვიხილოთ ცალკე ფანჯარაში და შევინახოთ ის მუშაობის დასრულების თანავე.

e14-ps09 e14-ps10

e14-ps11

კიდე PowerShell? და როგორ მოგწონთ ის, რომ ლოგი შეიძლება თხვენთვის მოხერხებულ ფორმაში მიიღოთ – მაქალითად თქვენ საფოსტო ყუთში?

ამისთვის გამოიყენება ახალი საშუალება Administrator Audit Logging,პირველ რიგში მოვახდინოთ მისი კონფიგურაცია. Exchange Management Shell (Local Powershell)–ში

ჩავწეროთ :

e14-ps12

Set-AdminAuditLogConfig -AdminAuditLogEnabled $True

და ვაგზავნით ლოგებს წინასწარ გამზადებულ მეილბოქს–ში adminauditlog@postmaster.ge направляем наши PowerShell логии

Set-AdminAuditLogConfig -AdminAuditLogMailbox adminauditlog@postmaster.ge

ახლა ყველა შესრულებული მოქმედების ლოგი გაიგზავნება ამ საფოსტო ყუთში.

 e14-ps13 e14-ps14

უფრო დაწვრილებითი ინფორმაცია Set-AdminAuditLogConfig ბრძანების შესახებ შეგვიძლია მივიღოთ სტანდარტულად – EMS- ში get-help Set-AdminAuditLogConfig –full სტრიქონის აკრეფით. ასევე შესაძლებელია ლოგ ფაილში მხოლოდ კონკრეტული მოქმედებების შესახებ ინფორმაციის ჩაწერა, მაგ. მხოლოდ set* ან set-mailbox* და ა.შ.

საბოლოოდ შემიძლია ავღნიშნო, რომ Exchange Server 2010 აძლევს ახალ საშუალებებს EMS –ში ნაკლებად გამოცდილ ადმინისტრატორებს ბევრად უფრო ღრმად შეისწავლონ EMS-ის მუშაობის პრინციპი. თუ ადრე შესაძლებელი იყო მხოლოდ დასრულებული ბრძანების EMS კოდის ნახვა ვიზარდში და მისი კოპირება, ეხლა უკვე შესაძლებელია მუშაობის პროცესში ნებისმიერ მომენტში ნებისმიერი პარამერტის შეცვლის თანავე ნახვა თუ როგორ გამოიყურება შესაბამისი EMS კოდი, ლოგირება და ლოგის მეილზე გადაგზავნა, ასე რომ ალბათ დამეთანხმებით

 EXCHANGE ROCKS! :-)

 

©Translated by Evgenia Prikhodko

Comments (3) -

MaximumExchange.ru
MaximumExchange.ru Russia
5/18/2009 9:38:18 PM #

Поздравляю с открытием!

Arman Obosyan
Arman Obosyan Georgia
5/18/2009 10:56:51 PM #

Спасибки, но это пока бета тестирование,
Laughing хаа ты наверно заметил в логе у себя откуда к тебе приходили Smile

Bulat
Bulat Russia
8/31/2011 1:53:34 PM #

Спасибо за статью.

И на заранее созданный почтовый ящик adminauditlog@postmaster.ge направляем наши PowerShell логии

Set-AdminAuditLogConfig -AdminAuditLogMailbox adminauditlog@postmaster.ge


Предлагаю дополнить информацию в части появившихся отличий в Exchange 2010 SP1.

Согласно заметке:
www.windowsitpro.com/.../auditing-administrator-actions-with-exchange-2010-129720
задать определенный ящик для отправки логов нельзя
(Также powershell в Exchange 2010 SP1 параметр "-AdminAuditLogMailbox" не принимает):

"In Exchange 2010 SP1, you don’t need to create and configure an audit mailbox. Instead, Exchange 2010 SP1 automatically creates the AdminAuditLogs folder in the Microsoft Exchange arbitration mailbox and stores the audit data in that folder. This arbitration mailbox is a more secure location for the audit data. Administrators can’t grant themselves access, log on, and remove any audit entries that they don’t want others to see, as they could with the standard mailbox. The arbitration mailbox uses a disabled account, so it takes more work to log on to it—and that work will leave some traces, revealing that an administrator might be up to no good."

Осталось понять, как добраться до содержимого ящика "arbitration mailbox"...

Comments are closed

© 2008-2012, Arman Obosyan, Postmaster.GE
Powered by BlogEngine.NET 2.6.0.18
Hosted on Windows Azure and IIS8

About the author

Arman Obosyan is an experienced IT Pro. with over 17+ years work experience in Information Technologies sector.

Certified since 2003 year, passed following certifications MCP, MCSA, MCSE, MCTS, MCITP, Exin ITIL and VMware Certified Professional (VCP)

In 2010 Was awarded a Microsoft Most Valuable Professional (MVP)

--------

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent anyone else's view in any way, including those of my employer.



Live Trafic

 

Calendar

<<  October 2017  >>
MoTuWeThFrSaSu
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345

View posts in large calendar

TextBox