<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>IT-блог компании &#34;ЛанКей&#34; &#187; Exchange</title>
	<atom:link href="http://www.lankey.ru/blog/category/exchange/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.lankey.ru/blog</link>
	<description>Системный интегратор. Комплексные решения по построению ИТ-инфраструктуры предприятия.</description>
	<lastBuildDate>Sat, 28 Jan 2012 13:58:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Апдейт 2449742 рушит Exchange 2010</title>
		<link>http://www.lankey.ru/blog/2011/04/15/update-breaks-exchange-2010/</link>
		<comments>http://www.lankey.ru/blog/2011/04/15/update-breaks-exchange-2010/#comments</comments>
		<pubDate>Thu, 14 Apr 2011 21:25:08 +0000</pubDate>
		<dc:creator>Ярослав Никифоров</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[exchange 2010]]></category>
		<category><![CDATA[windows server 2008]]></category>
		<category><![CDATA[исправления]]></category>
		<category><![CDATA[ошибки]]></category>

		<guid isPermaLink="false">http://www.lankey.ru/blog/?p=751</guid>
		<description><![CDATA[В вышедшем позавчера комплекте обновлений Microsoft есть досадная ошибка &#8211; после установки апдейта KB2449742 Security Update for .NET Framework 3.5 SP1 на сервер Windows Server 2008 SP2 с установленным Exchange Server 2010 SP1 (со всеми обновлениями) и Forefront Protection for Exchange &#8211; перестает работать и Exchange, и Forefront. Причем, ошибки вылезают во многих компонентах Windows [...]]]></description>
			<content:encoded><![CDATA[<p>В вышедшем позавчера комплекте обновлений Microsoft есть досадная ошибка &#8211; после установки апдейта KB2449742 Security Update for .NET Framework 3.5 SP1 на сервер Windows Server 2008 SP2 с установленным Exchange Server 2010 SP1 (со всеми обновлениями) и Forefront Protection for Exchange &#8211; перестает работать и Exchange, и Forefront. Причем, ошибки вылезают во многих компонентах Windows &#8211; например не запускается PowerShell и даже Event Viewer, из-за ошибки в модуле <b>mscorwks.dll, version 2.0.50727.5653</b>, и сама операционная система начинает жутко тормозить.</p>
<p><b>Решение на данный момент:</b> деинсталлировать апдейт 2449742. Ждем какого-нибудь исправления от Microsoft.</p>
<p><b>UPD:</b> Проблема <a href="http://blogs.technet.com/b/exchange/archive/2011/04/15/exchange-2010-management-tools-do-not-start-after-the-installation-of-net-hotfix-kb-2449742.aspx">признана</a> командой разработчиков Exchange, пока решение то же &#8211; не ставить данный апдейт.</p>
<p><b>UPD 2:</b> Проблема решена, Microsoft выпустил <a href="http://archive.msdn.microsoft.com/KB979744/Release/ProjectReleases.aspx?ReleaseId=3993">исправление</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lankey.ru/blog/2011/04/15/update-breaks-exchange-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как удалить письмо из всех ящиков Exchange 2010 sp1</title>
		<link>http://www.lankey.ru/blog/2011/03/20/how-to-delete-message-from-all-mailboxes-exchange-2010-sp1/</link>
		<comments>http://www.lankey.ru/blog/2011/03/20/how-to-delete-message-from-all-mailboxes-exchange-2010-sp1/#comments</comments>
		<pubDate>Sun, 20 Mar 2011 13:38:09 +0000</pubDate>
		<dc:creator>Сергей Ерин</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[exchange 2007]]></category>
		<category><![CDATA[exchange 2010]]></category>

		<guid isPermaLink="false">http://www.lankey.ru/blog/?p=741</guid>
		<description><![CDATA[Иногда возникает необходимость удалить определённое письмо из всех ящиков почтового сервера Exchange. Понятно, что можно,  дать себе права на все ящики, по одному заходить в каждый при помощи Outlook и удалять вручную. Но если ящиков не одна сотня, то процесс может затянуться на много часов. Но есть способы сделать это быстро при помощи PowerShell: В [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Иногда возникает необходимость удалить определённое письмо из всех ящиков почтового сервера Exchange. Понятно, что можно,  дать себе права на все ящики, по одному заходить в каждый при помощи Outlook и удалять вручную. Но если ящиков не одна сотня, то процесс может затянуться на много часов. Но есть способы сделать это быстро при помощи PowerShell:</p>
<p style="text-align: justify;">В Exchange Server 2007 и  Exchange Server 2010 RTM для удаления определённого письма из всех ящиков можно было воспользоваться командлетом Export-Mailbox:</p>
<p><strong>Get-Mailbox -resultsize unlimited | Export-Mailbox -SubjectKeywords &laquo;Фотки со вчерашней вечеринки&raquo; -Deletecontent -confirm:$false</strong></p>
<p style="text-align: justify;">Но в Exchange 2010 sp1 командлет Export-Mailbox отсутствует, вместо него появился командлет New-MailboxExportRequest, который не позволяет удалить письмо из ящика. Тем не менее, сделать групповое удаление, всё же возможно, воспользовавшись командлетом  Search-Mailbox:</p>
<p><strong>Get-Mailbox <strong> -resultsize unlimited </strong>| Search-Mailbox -SearchQuery &#8216;Subject:&raquo;Фотки со вчерашней вечеринки&raquo;&#8216; -DeleteContent <strong>-confirm:$false</strong></strong><strong><strong> </strong></strong></p>
<p style="text-align: justify;">После выполнения данной команды, произойдёт удаление всех писем с темой &laquo;Фотки со вчерашней вечеринки&raquo; из всех почтовых ящиков Exchange.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lankey.ru/blog/2011/03/20/how-to-delete-message-from-all-mailboxes-exchange-2010-sp1/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Миграция Lotus на Exchange 2010 &#8211; AD или реальность?</title>
		<link>http://www.lankey.ru/blog/2011/02/13/migrate-lotus-to-exchange-2010/</link>
		<comments>http://www.lankey.ru/blog/2011/02/13/migrate-lotus-to-exchange-2010/#comments</comments>
		<pubDate>Sun, 13 Feb 2011 02:28:03 +0000</pubDate>
		<dc:creator>Сергей Ерин</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Без рубрики]]></category>
		<category><![CDATA[exchange 2007]]></category>
		<category><![CDATA[exchange 2010]]></category>

		<guid isPermaLink="false">http://www.lankey.ru/blog/?p=699</guid>
		<description><![CDATA[Хотел бы немного поделиться опытом по миграции с Lotus Domino R 6.5 на Exchange Server 2010. Задача возможно и не самая тривиальная, но как показывает практика достаточно востребованная.  И так, что мы имели: 1) Заказчик который яростно желал получить современную систему электронной почты, 2) Lotus Domino не проинтегрированный с AD и 200 почтовых ящиков общим [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Хотел бы немного поделиться опытом по миграции с Lotus Domino R 6.5 на Exchange Server 2010. Задача возможно и не самая тривиальная, но как показывает практика достаточно востребованная.  И так, что мы имели: 1) Заказчик который яростно желал получить современную систему электронной почты, 2) Lotus Domino не проинтегрированный с AD и 200 почтовых ящиков общим объемом 250 ГБ, 3) Лес Active Directory с более, чем 1000 пользователей, причем схема леса уже была подготовлена под Exchange 2010. В общем задачка достаточно типовая и простая, но не без подводных камней.</p>
<p style="text-align: justify;"><span id="more-699"></span></p>
<p style="text-align: justify;">Какие сразу приходят в голову варианты решения: 1) Microsoft Transporter Suite и 2) Notes Migrator for Exchange от Quest Software (продаётся от 250 лицензий). Как вы думаете, какой из этих вариантов правильный? Мы то знали ответ, но решили поэксперементировать, и выбрали вариант №1, да и платить за лишние 50 лицензий Quest не хотелось. Об этом мы конечно потом несколько раз пожалели, но зато есть о чём написать).</p>
<p style="text-align: justify;">Как известно Microsoft Transporter Suite поддерживает только Exchange 2007 и не поддерживает Exchange 2010. А поскольку наш лес уже подготовлен под Exchange 2010, значит Exchange 2007 мы тут уже не поставим. Поэтому мы решили поставить в отдельному лесу Exchange 2007,  а затем смигрировать из него ящики в Exchange 2010 путём Cross-Forest миграции.</p>
<h4>Мигрируем Lotus на Exchange 2007.</h4>
<p style="text-align: justify;">Пошаговых инструкций писать не буду, в интернете их полно, но почему-то нигде не сказано про подводные камни, поэтому я сделаю акцент лишь на некоторых моментах. Ну соответственно ставим новый контроллер домена в отдельном лесу, ставим на него же Exchange 2007 sp3. Скачиваем и ставим  <a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=35FC4205-792B-4306-8E4B-0DE9CCE72172">Transporter Suite</a> (64-битный). Скачиваем и ставим <a href="http://www.ibm.com/developerworks/downloads/ls/lsndad/?S_TACT=105AGX28&amp;S_CMP=TRIALS">IBM Lotus Notes 8.5 RUS</a> (триал скачивается бесплатно после регистрации). Запускаем Lotus Notes и настраиваем его на подключение к Lotus Domino серверу под административной учетной записью.</p>
<p style="text-align: justify;">1) Разрешаем имперсонализацию пользователей в каталоге EWS, чтобы Transporter Suite мог под административной учётной записью импортировать почту в ящики пользователей:</p>
<p style="text-align: justify;">Общий вид команды:</p>
<p style="text-align: left;"><strong>Add-ADPermission -Identity (get-exchangeserver).DistinguishedName -User (Get-User -Identity Administrator | select-object).identity -extendedRight ms-Exch-EPI-Impersonation</strong></p>
<p style="text-align: justify;">ну или в частности:</p>
<p style="text-align: left;"><strong>Add-ADPermission -Identity &#8216;CN=EXCH2K7,OU=Domain Controllers,DC=domain,DC=local&#8217; -User &#8216;domain\Administrator&#8217; -ExtendedRights ms-Exch-EPI-Impersonation</strong></p>
<p style="text-align: justify;">2) Увеличиваем длину HTTP запроса. По умолчанию максимальный размер запроса равен 4 МБ, соответственно ни одно  письмо большего размера не смигрируется. Поэтому увеличиваем данное значение. Для этого правим файл web.config виртуальной директории в IIS   \EWS. Находим там строчку &lt;httpRuntime maxRequestLength= &laquo;4096&#8243;&gt;  и правим её на большее значение, скажем на &laquo;102400&#8243;, что равняется 100 МБ. Я рекомендую редактировать эти параметры не вручную, через блокнот, а через расширения консоли IIS Manager, так меньше вероятность допустить ошибки и испортить файл конфигурации. Расширение консоли IIS 7 можно скачать по <a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=b74e3b35-b77c-4191-9ac4-8307423d09ec">ссылке</a>. Соответственно после установки расширения, для правки запускаем IIS Manager, раскрываем Sites\Default Web Site\EWS, справа в консоли запускаем Configuration Editor, в разделе Section выбираем: system.web/httpRuntime, правим параметр maxRequestLength и нажимаем Apply.</p>
<p style="text-align: center;"><a href="http://www.lankey.ru/blog/wp-content/uploads/2011/02/ews_config.jpg"><img class="aligncenter size-medium wp-image-708" title="ews_config" src="http://www.lankey.ru/blog/wp-content/uploads/2011/02/ews_config-300x129.jpg" alt="" width="300" height="129" /></a></p>
<p style="text-align: justify;">
<p style="text-align: justify;">3) Увеличиваем таймаут соединений. Для этого в IIS Manager выбираем Default Web Site, справа в консоли выбираем Limits и задаём большее значение, скажем 300 с.</p>
<p style="text-align: justify;">После внесения изменений перезапускаем IIS:</p>
<p style="text-align: justify;"><strong>iisreset /noforce</strong></p>
<p style="text-align: justify;">3) Синхронизируем каталог Lotus Domino с Active Directory. Запускаем Microsoft Transporter for Lotus Domino Console, нажимаем Enter Domino Credential, вводим пароль администратора домино. Раскрываем Migrate\Directory\Users. Выбираем всех пользователей и нажимаем Migrate Selected Users. Задаём OU для новых пользователей и пароль, можно сразу выбрать создать ящик в Exchange 2007.</p>
<p style="text-align: justify;">4) Мигрируем ящики Lotus в Exchange 2007.  Запускаем Microsoft Transporter for Lotus Domino Console, переходим Migrate\Mailboxes, выбираем все ящики и нажимаем Migrate Selected Mailboxes. Теоретически процесс должен был бы занять несколько часов и завершиться полной миграцией всех ящиков, но не всё оказалось так просто. На миграции примерно 10-го из 200 ящиков вылетела ошибка System.OutOfMemoryException и миграция прекратилась. Мы попробовали повторно запустить процесс, временно пропустив данный ящик, но вскоре снова получили аналогичную ошибку. Иногда вылетала ошибка вида типа Pipe has been ended. Поискав решения данной проблемы мы выяснили, что это ошибка в коде самого Transporter Suite, и она неисправима! Ошибка возникает вследствие переполнения буфера памяти при миграции ящиков, содержащих письма большого объёма. При миграции Transporter Suite сначала определёнными порциями извлекает письма из Lotus Domino, и затем их через EWS инжектирует в ящик Exchange. Вся эта порция писем до процесса инжектирования хранится в памяти. Мы пробовали увеличивать объём памяти сервера до 12 ГБ, но и это не помогло, Transporter Suite занимал всю память сервера и завершался с ошибкой. Ждать исправления данной ошибки от Microsoft &#8211; бесполезно, ввиду того, что разработка продукта давно прекращена и он снят с поддержки.</p>
<p style="text-align: justify;">В итоге мы сначала выполнили миграцию всех ящиков, которые мигрировались без ошибок, выписывая имена ящиков, миграция которых вызывала ошибку. Причем после каждой ошибки процесс миграции приходилось запускать заново, заново вводить Domino Credentials, т.к. иногда вылетал сам процесс Transporter Suite , иногда с ошибкой вылетал процесс Notes-клиента. В итоге, через дня 3 мы смигрировали 170 ящиков из 200. Соответственно получили 30 ящиков, миграция которых завершалась с ошибкой. Чтобы выполнить их миграцию, мы решили: во-первых мигрировать ящики по одному, а во вторых, в пределах одного ящика мигрировать письма порциями, а именно разбивая по датам. Для этого мы воспользовались следующей командой:</p>
<p style="text-align: left;"><strong>Move-DominoMailbox &#8216;user@lotus-domain.com&#8217; -TargetMailboxDatabase &#8216;EXCH2007\First Storage Group\Mailbox Database&#8217; -EmailStart 01.01.2001 -EmailEnd 31.12.2005</strong></p>
<p style="text-align: justify;">затем</p>
<p style="text-align: left;"><strong>Move-DominoMailbox &#8216;user@lotus-domain.com&#8217; -TargetMailboxDatabase &#8216;EXCH2007\First Storage Group\Mailbox Database&#8217; -EmailStart 01.01.2006 -EmailEnd 31.12.2008</strong></p>
<p style="text-align: justify;">и т.д.</p>
<p style="text-align: justify;">Соответственно, если вылетала ошибка, интервал приходилось сужать. Иногда интервал нужно было сузить вплоть до одного дня. Таким образом процесс миграции растянулся примерно на неделю, но все ящики были смигрированы.</p>
<h4>Мигрируем Exchange 2007 на Exchange 2010.</h4>
<p style="text-align: justify;">Для начала нам нужно было развернуть в организации Exchange 2010. При установке которого мы столкнулись с рядом проблем, а именно сервер уже когда-то был развёрнут, а затем неправильно удалён. При установке выдавалась ошибка Database is Mandatory. Одна из проблем заключалась в том, что у всех пользователей остались атрибуты Exchange, ссылающиеся на старый сервер. Чтобы их удалить разом у всех пользователей, мы воспользовались бесплатными PowerShell командлетами от Quest Software &#8211; ActiveRoles Management Shell for Active Directory, которые можно скачать по <a href="http://www.quest.com/QuestWebPowershellCmdletDwnld64bit">ссылке</a>. Для этого выполнили команды:</p>
<p style="text-align: left;"><strong>$userlist = Get-QADUser -IncludeAllProperties<br />
$userlist | ForEach { Set-QADUser $_ -ObjectAttributes @{msexchmailboxguid=&raquo;; msexchhomeservername=&raquo;; legacyexchangedn=&raquo;; mail=&raquo;; mailnickname=&raquo;; msexchmailboxsecuritydescriptor=&raquo;; msexchpoliciesincluded=&raquo;; msexchrecipientdisplaytype=&raquo;; msexchrecipienttypedetails=&raquo;; msexchumdtmfmap=&raquo;; msexchuseraccountcontrol=&raquo;; msexchversion=&raquo; } }</strong></p>
<p style="text-align: justify;">После установки Exchange 2010 sp1, можно было приступать к процессу миграции. Существует несколько путей кросс-доменной миграции Exchange 2007 на Exchange 2010 sp1. И многое зависит от начальных условий, так, например в нашем случае можно было сначала установить во временном лесу (где развёрнут Exchange 2007) CAS сервер под управлением Exchange 2010, а затем выполнить миграцию между лесами. Можно было мигрировать и напрямую с Exchange 2007, но с соответствующей подготовкой атрибутов всех пользователей в конечном лесу. Причем процесс связан с использованием Microsoft Identity Lifecycle Manager и различных скриптов. Также в нашем случае особенность заключалась в том, что в конечном лесу уже были созданы все пользователи и ящики. В общем мы решили не заморачиваться, на синхронизации атрибутов, а пойти наиболее простым с нашей точки зрения путём, и выполнить миграцию через старые добрые .pst &#8211; файлы.</p>
<p style="text-align: justify;">Для этого сначала выполнили экспорт всех ящиков в .pst &#8211; файлы на Exchange 2007. Напоминаю, что командлет Export-Mailbox можно использовать только в 32-х разрядной версии Exchange 2007, требуется развернуть 32-х битный сервер, например Windows Server 2008 x86, скачать и развернуть Exchange Server 2007 sp3 x86, скачать и развенуть Outlook 2007/2010 x86. После чего с данного сервера можно будет выполнять:</p>
<p style="text-align: justify;"><strong>get-mailbox | Export-Mailbox -PSTFolderPath z:\</strong></p>
<p style="text-align: justify;">После завершения процесса экспорта, на диске z:\ (=\\fs\exported_mailboxes) мы получим 200 .pst файлов вида <em>aliace</em>.pst. Затем выполняем импорт данных файлов в ящики Exchange 2010. Соответственно предварительно в Exchange 2010 мы создали ящики для всех необходимых пользователей. Для запуска самого процесса импорта нужно выполнить следующую команду:</p>
<p style="text-align: justify;"><strong>Dir \\fs\Exported_Mailboxes\*.pst | %{ New-MailboxImportRequest -Name ImportPST -BatchName ImportPST_Bulk -Mailbox $_.BaseName -FilePath $_.FullName}</strong></p>
<p style="text-align: justify;">отследить состояние процесса миграции можно при помощи командлета Get-MailboxImportRequest, а после завершения процесса, лучше все очереди очистить командлетом Remove-MailboxImportRequest.</p>
<p style="text-align: justify;">В общем-то после завершения процесса все ящики будут смигрированы, и предварительно можно было бы сказать, что задача выполнена. Есть правда в этом процессе небольшая особенность. А именно, именование папок внутри ящика. Эти имена создаются при первом подключении пользователя к ящику, либо при помощи Outlook, либо при помощи OWA. Соответственно,  если пользователь при первом подключении использовал русскую версию Outlook 2010, то и папки у него будут называться Входящие, Отправленные, Удалённые и т.п., а если английскую, то Inbox, Send Items, Deleted и т.д. Аналогично и при подключении через OWA, там зависит от языка, выбранного в браузере и выбора самого пользователя. И к сожалению, никакими средствами централизовано для всех это не задашь. Но мы попытались использовать некий work around.</p>
<h4>Задание русских имён папок Outlook для всех почтовых ящиков Exchange.</h4>
<p style="text-align: justify;">1) Даём системному администратору права на все ящики Exchange:</p>
<p style="text-align: left;"><strong>Get-Mailbox | Add-MailboxPermission -user Administrator -AccessRights FullAccess</strong></p>
<p style="text-align: justify;">2) На OWA Virtual Directory ставим встроенную аутентификацию так, чтобы запуская Internet Explorer под администратором и открывая OWA, у нас не спрашивало логин и пароль, а автоматически попадало в ящик администратора.</p>
<p style="text-align: justify;">3)  Задаём язык по умолчанию для клиентов OWA.</p>
<p style="text-align: left;"><strong>Set-OwaVirtualDirectory -identity &laquo;Owa (Default Web Site)&raquo; -LogonAndErrorLanguage 1049 -DefaultClientLanguage 1049</strong></p>
<p style="text-align: left;"><strong>get-mailbox | set-mailbox -Languages &laquo;ru-RU&raquo; </strong></p>
<p style="text-align: justify;">4) Заходим в каждый ящик, через OWA под администратором при помощи браузера, где языком по умолчанию выбран русский.</p>
<p style="text-align: left;"><strong>get-mailbox | foreach-object -process {start iexplore.exe &laquo;https://exch2010/owa/$_@domain.com&raquo;; start-sleep 5; taskkill /im iexplore.exe}</strong></p>
<p style="text-align: justify;">Данная команда последовательно выводит весь список ящиков, запуская для каждого ящика Internet Explorer с параметром https://exch2010/owa/aliace@domain.com, после 5 секунд ожидания, процесс Internet Explorer убивается, и затем открывается новый ящик. По сути каждый раз происходит вход в ящик пользователя под администратором.</p>
<h4><strong>Перевод входящей почты на Exchange 2010</strong>.</h4>
<p style="text-align: justify;">Когда были завершены все описанные выше действия, мы предоставили пользователям доступ к почтовой системе через OWA, а также всем установили и настроили Outlook 2010 и попросили пользователей, ознакомиться с новой почтовой системой и проверить, корректно ли были смигрированы все их данные (за исключением последнего месяца). Всё время, пока у нас шёл процесс миграции вся входящая почта продолжала приходить в Lotus Domino. Когда пользователи ознакомились с новой системой электронной почты и убедились, что всё смигрировано верно, было решено переключить входящую почту на Exchange. Все пользователи были проинформированы, что c понедельника они начинают использовать Outlook и Lotus будет более недоступен. В пятницу вечером мы изменили публикацию 25-го порта на TMG 2010 и вся внешняя почта стала приходить на Exchange Server. Теперь нам оставалось только домигрировать ту почту, которая пришла в ящики пользователей с начала нашего процесса миграции. Для этого, выполняем туже самую последовательность действий, но везде задаём интервал только за последний месяц. Сначала мигрируем из Lotus Domino в Exchange 2007:</p>
<p style="text-align: left;"><strong>Get-DominoMailbox | Move-DominoMailbox -TargetMailboxDatabase &#8216;EXCH2007\First Storage Group\Mailbox Database&#8217; -EmailStart 01.01.2011 -EmailEnd 31.01.2011</strong></p>
<p style="text-align: justify;">затем выгружаем из Exchange 2007 в .pst файлы:</p>
<p style="text-align: justify;"><strong>get-mailbox | Export-Mailbox -PSTFolderPath z:\ -StartDate 01.01.2011 -EndDate 31.01.2011 -confirm:$false</strong></p>
<p style="text-align: justify;">затем импортируем в Exchange 2010:</p>
<p style="text-align: justify;"><strong><strong>Dir \\fs\Exported_Mailboxes\*.pst | %{ New-MailboxImportRequest -Name ImportPST -BatchName ImportPST_Bulk -Mailbox $_.BaseName -FilePath $_.FullName}</strong></strong></p>
<p style="text-align: justify;">По завершению этой операции, казалось бы, что все дела сделаны и наши мучения закончились, но оказалось, что это не так. Оказывается вся новая почта, которая пришла за последний месяц, смигрировалась в ящики пользователей под английскими именами папок. Т.е. у каждого пользователя в ящике оказалось по 2 экземпляра каждой папки &#8211; на русском и на английском: &laquo;Входящие&raquo; и &laquo;Inbox&raquo;, &laquo;Отправленные&raquo;  и &laquo;Sent Items&raquo; и т.д. &#8211; Причем выглядела эта ситуация очень удручающе! 200 ящиков! Удалять ящики и выполнять миграцию заново мы уже не могли, 1 &#8211; это долго, 2 &#8211; у пользователей уже поприходили в ящики новые письма, которых нет в Lotus. Кроме того в русских и в английских папках были дубликаты, т.к. процесс миграции был долгий и одни ящики мигрировались неделю назад, а другие месяц назад, а последняя миграция делалась за 1 месяц для всех. Если бы миграция была произведена в нужные папки, то был бы произведён процесс слияния и дубликатов бы не возникло.</p>
<p style="text-align: justify;">В общем времени особо долго думать у нас не было и мы решили удалить все английские папки и мигрировать данные за последний месяц заново. Соответственно возник вопрос, как наиболее быстро удалить необходимые папки из 200 почтовых ящиков. Если покопаться на MSDN и иметь навыки программиста, то можно было быстро написать программку для Exchange Web Services, но мы (видимо не имея навыков программиста) пошли немного другим путём, а именно решили использовать бесплатную библиотеку RDO, которую можно скачать по <a href="http://www.dimastr.com/redemption/Redemption.zip">ссылке</a>. Собственно скачиваем архив и распаковываем его в Windows\System32, после чего выполняем <strong>regsvr32 Redemption64.dll.</strong></p>
<p style="text-align: justify;">Затем создаём следующий PowerShell скрипт <strong>Delete_Folders.ps1</strong>:</p>
<p style="text-align: left;">$rdo = new-object -com Redemption.RDOSession<br />
$aliace = echo($_.BaseName+&raquo;@domain.com&raquo;)<br />
$rdo.LogonExchangeMailbox(&laquo;$aliace&raquo;,&raquo;exch2010&#8243;)#$rdo.CurrentUser.name<br />
$test = $rdo.Stores.DefaultStore.IPMRootFolder.folders | where { ($_.name -eq &laquo;Drafts&raquo; ) -or ($_.name -eq &laquo;Inbox&raquo;) -or ($_.name -eq &laquo;Junk E-Mail&raquo;) -or ($_.name -eq &laquo;Notes&raquo;) -or ($_.name -eq &laquo;Outbox&raquo;) -or ($_.name -eq &laquo;Sent Items&raquo;)}<br />
foreach ($test in $test) {$test.delete()}<br />
$rdo.logoff()</p>
<p style="text-align: justify;">Затем выполняем:</p>
<p style="text-align: justify;"><strong>$users = Dir \\fs\Exported_Mailboxes\new\*.pst<br />
$users | foreach {.\Delete_Folders.ps1}</strong></p>
<p style="text-align: justify;">Вкратце поясню. Данный скрипт удалит папки Inbox, Outbox, Notes, Junk E-Mail, Drafts и Sent Items из всех ящиков, .pst файлы которых лежат в папке \\fs\Exported_Mailboxes\new\.</p>
<p style="text-align: justify;">Собственно после этого, производим повторный процесс миграции писем, пришедших в Lotus за последний месяц, но теперь делаем это немного по другому, а именно указываем из какой папки и в какую мигрировать письма:</p>
<p style="text-align: justify;">Мигрируем из папки &laquo;Inbox&raquo; в папку &laquo;Входящие&raquo;. В Exchange все папки имеют системные имена, которые не зависят от языка. Так, например, папка &laquo;Входящие&raquo; имеет системное имя #Inbox#:</p>
<p style="text-align: left;"><strong>Dir \\fs\Exported_Mailboxes\new\*.pst | %{ New-MailboxImportRequest -Name ImportPST -BatchName ImportPST_Bulk -Mailbox $_.BaseName -FilePath $_.FullName -ConflictResolutionOption KeepLatestItem -SourceRootFolder &laquo;Inbox&raquo; -TargetRootFolder &laquo;#Inbox#&raquo;}</strong></p>
<p style="text-align: left;">Мигрируем из папки &laquo;Sent Items&raquo; в папку &laquo;Отправленные&raquo;. Папка &laquo;Отправленные&raquo; имеет системное имя #SentItems#:</p>
<p style="text-align: left;"><strong>Dir \\exch2007\Exported_Mailboxes\new\*.pst | %{ New-MailboxImportRequest -Name ImportPST -BatchName ImportPST_Bulk -Mailbox $_.BaseName -FilePath $_.FullName -ConflictResolutionOption KeepLatestItem -SourceRootFolder &laquo;Sent Items&raquo; -TargetRootFolder &laquo;#SentItems#&raquo;} </strong></p>
<p style="text-align: left;">После данной процедуры, все письма попали в нужные папки. И в общем-то процесс миграции был завершён, но некоторые пользователи нам создали дополнительные трудности, а именно, забыв выполнить процедуру синхронизации своих адресных книг, ввиду чего они остались без личных контактов. Проблема заключается в том, что  Lotus Notes по умолчанию хранит все личные контакты пользователей в .nsf-файлах на локальных компьютерах пользователей. Для синхронизации контактов на сервер каждый пользователь должен в Lotus Notes запустить Synchronize Address Book из меню Actions, о чем сотрудники были проинформированы. Но естественно, как это всегда бывает, часть пользователей эту задачу проигнорировали и опомнились только после завершения всех процедур миграции. Соответственно для некоторых пользователей отдельно пришлось домигрировать личные контакты.</p>
<h4>Миграция контактов.</h4>
<p style="text-align: left;">Мигрируем всё, кроме элементов почты из Lotus на Exchange 2007:</p>
<p style="text-align: left;"><strong>Get-DominoMailbox | Move-DominoMailbox -TargetMailboxDatabase &#8216;EXCH2007\First Storage Group\Mailbox Database&#8217; -ExcludeEmail -ExcludeSchedule -ExcludeTask</strong></p>
<p style="text-align: left;">Мигрируем контакты из Exchange 2007 в .pst, чтобы сэкономить время, мигрируем лишь пользователей из списка users_wo_contacts.txt, Соответсвенно мигрируем только папку &laquo;Contacts&raquo;:</p>
<p style="text-align: left;"><strong>more users_wo_contacts.txt | Export-Mailbox -PSTFolderPath z:\contacts -IncludeFolders &laquo;\Contacts&raquo;</strong></p>
<p style="text-align: left;">Импортируем контакты в Exchange 2010:</p>
<p style="text-align: left;"><strong>Dir \\fs\Exported_Mailboxes\Contacts\*.pst | %{ New-MailboxImportRequest -Name ImportPST -BatchName ImportPST_Bulk -Mailbox $_.BaseName -FilePath $_.FullName -ConflictResolutionOption KeepLatestItem -SourceRootFolder &laquo;Contacts&raquo; -TargetRootFolder &laquo;#Contacts#&raquo;}</strong></p>
<p style="text-align: left;">На этом наш проект в общем-то был завершён.</p>
<p style="text-align: left;">Кто-то, прочитав данную заметку, возможно спросит, а не пробовали ли мы мигрировать с использованием Exchange Server 2003, который имел встроенный Connector for Lotus Notes, и я отвечу, что да пробовали &#8211; и это ещё хуже! Во-первых Exchange Server 2003 плохо понимает письма в формате HTML и при миграции переделывает их в формат RTF, при этом перегаживая всё форматирование, во-вторых он плохо разбирает кодировку и почти все письма отображаются иероглифами (хотя это можно обойти используя прямую миграцию в .pst, а затем импорт .pst файлов в Exchange 2007, используя библиотеки Outlook 2007) и в третьих Exchange 2003 не может создавать .pst файлы больше 2-х ГБ. Но если всё же кто-то, вдруг, решится мигрировать, используя Exchange 2003 и прямой экспорт в .pst, есть небольшой совет: По умолчанию Exchange 2003 при миграции из Lotus все .pst файлы защищает паролем, причем у каждого .pst-файла пароль свой. Соответствие .pst-файлов и паролей хранится в текстовом файле в тойже директории, где и сами pst-шники. Но это очень неудобно для дальнейшего использования, в частности для операций пакетного импорта файлов. Чтобы .pst файлы экспортировались без паролей, нужно установить специальный патч на Exchange 2003, патч можно скачать по <a href="http://support.microsoft.com/kb/896714">ссылке</a>. Патч ставится только на Exchange 2003 sp1. После установки патча, нужно в разделе реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Exchange\MSExchangeMailMig, создать ключ CreateWithoutPassword типа REG_DWORD со значением &laquo;1&#8243;.</p>
<h4>Подытожив, хочу дать несколько советов:</h4>
<p style="text-align: left;">1 &#8211; используйте платные средства миграции, например Notes Migrator for Exchange от Quest Software;</p>
<p style="text-align: left;">2 &#8211; тщательно всё планируйте и тестируйте до миграции в рабочей среде;</p>
<p style="text-align: left;">3 &#8211; почаще делайте бэкапы. Если у вас используется система виртуализации, то можно использовать снапшоты;</p>
<p style="text-align: left;">4 &#8211;  Adrenaline Rush лучше всего брать в Ашане, там дешевле)</p>
<p style="text-align: justify;"><strong> </strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lankey.ru/blog/2011/02/13/migrate-lotus-to-exchange-2010/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Обновления для установки Exchange 2010 SP1</title>
		<link>http://www.lankey.ru/blog/2010/09/25/exchange-sp1-prerequizites/</link>
		<comments>http://www.lankey.ru/blog/2010/09/25/exchange-sp1-prerequizites/#comments</comments>
		<pubDate>Fri, 24 Sep 2010 22:13:52 +0000</pubDate>
		<dc:creator>Ярослав Никифоров</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[exchange 2010]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[исправления]]></category>

		<guid isPermaLink="false">http://blogs.lankey.ru/?p=648</guid>
		<description><![CDATA[Те из вас, кто уже пытались развернуть у себя Exchange 2010 SP1, заметили, что для его установки требуется ряд обновлений операционной системы, причем на данный момент эти обновления не устанавливаются на сервер автоматически через Windows Update. Для того, чтобы их скачать, приходится ходить по сайту Microsoft, отправлять запросы и получать ссылки на электронную почту. Это [...]]]></description>
			<content:encoded><![CDATA[<p>Те из вас, кто уже пытались развернуть у себя Exchange 2010 SP1, заметили, что для его установки требуется ряд обновлений операционной системы, причем на данный момент эти обновления не устанавливаются на сервер автоматически через Windows Update. Для того, чтобы их скачать, приходится ходить по сайту Microsoft, отправлять запросы и получать ссылки на электронную почту. Это не всегда удобно, поэтому, для более быстрого развертывания необходимых обновлений мы разместили их у себя:</p>
<p>Для Windows Server 2008 R2:</p>
<ul>
<li><a href="/blog/wp-content/uploads/2010/09/Windows6.1-KB977020-v2-x64.msu">Windows6.1-KB977020-v2-x64.msu</a> &#8211; 0,6 Мб.</li>
<li><a href="/blog/wp-content/uploads/2010/09/Windows6.1-KB979099-x64.msu">Windows6.1-KB979099-x64.msu</a> &#8211; 2,2 Мб.</li>
<li><a href="/blog/wp-content/uploads/2010/09/Windows6.1-KB979744-x64.msu">Windows6.1-KB979744-x64.msu</a> &#8211; 6,5 Мб.</li>
<li><a href="/blog/wp-content/uploads/2010/09/Windows6.1-KB982867-v2-x64.msu">Windows6.1-KB982867-v2-x64.msu</a> &#8211; 4,4 Мб.</li>
<li><a href="/blog/wp-content/uploads/2010/09/Windows6.1-KB983440-x64.msu">Windows6.1-KB983440-x64.msu</a> &#8211; 3,5 Мб.</li>
<li><a href="/blog/wp-content/uploads/2010/09/FilterPack64bit.exe">FilterPack64bit.exe</a> &#8211; 3,9 Мб.</li>
</ul>
<p>Для Windows Server 2008:</p>
<ul>
<li><a href="/blog/wp-content/uploads/2010/09/Windows6.0-KB973136-x64.msu">Windows6.0-KB973136-x64.msu</a> &#8211; 0,7 Мб.</li>
<li><a href="/blog/wp-content/uploads/2010/09/Windows6.0-KB977592-x64.msu">Windows6.0-KB977592-x64.msu</a> &#8211; 0,3 Мб.</li>
<li><a href="/blog/wp-content/uploads/2010/09/Windows6.0-KB977624-v2-x64.msu">Windows6.0-KB977624-v2-x64.msu</a> &#8211; 3,2 Мб.</li>
<li><a href="/blog/wp-content/uploads/2010/09/Windows6.0-KB979744-x64.msu">Windows6.0-KB979744-x64.msu</a> &#8211; 6,5 Мб.</li>
<li><a href="/blog/wp-content/uploads/2010/09/Windows6.0-KB979917-x64.msu">Windows6.0-KB979917-x64.msu</a> &#8211; 3,5 Мб.</li>
<li><a href="/blog/wp-content/uploads/2010/09/Windows6.1-KB983440-x64.msu">Windows6.1-KB983440-x64.msu</a> &#8211; 3,5 Мб.</li>
<li><a href="/blog/wp-content/uploads/2010/09/FilterPack64bit.exe">FilterPack64bit.exe</a> &#8211; 3,9 Мб.</li>
</ul>
<p><strong>Update:</strong> совсем забыл указать требуемые для установки роли Unified Messaging компоненты:</p>
<ul>
<li><a href="/blog/wp-content/uploads/2010/09/UcmaRuntimeSetup.exe">UcmaRuntimeSetup.exe</a> &#8211; 16 Мб.</li>
<li><a href="/blog/wp-content/uploads/2010/09/SpeechPlatformRuntime.msi">SpeechPlatformRuntime.msi</a> &#8211; 2,8 Мб.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.lankey.ru/blog/2010/09/25/exchange-sp1-prerequizites/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Отправка SMS через Exchange Server 2010</title>
		<link>http://www.lankey.ru/blog/2010/04/19/send-sms-exchange-server-2010/</link>
		<comments>http://www.lankey.ru/blog/2010/04/19/send-sms-exchange-server-2010/#comments</comments>
		<pubDate>Sun, 18 Apr 2010 21:58:14 +0000</pubDate>
		<dc:creator>Сергей Ерин</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[exchange 2010]]></category>

		<guid isPermaLink="false">http://blogs.lankey.ru/?p=585</guid>
		<description><![CDATA[Как уже некоторые из вас знают Exchange Server 2010 позволяет отправлять и принимать SMS прямо из Microsoft Outlook или Outlook Web App (OWA). Но не все знают, как это настроить, или думают, что в России это не работает, т.к. не поддреживается сотовыми операторами. На самом деле это не так! Exchange Server 2010 позволяет отправлять и [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Как уже некоторые из вас знают Exchange Server 2010 позволяет отправлять и принимать SMS прямо из Microsoft Outlook или Outlook Web App (OWA). Но не все знают, как это настроить, или думают, что в России это не работает, т.к. не поддреживается сотовыми операторами. На самом деле это не так!</p>
<p style="text-align: justify;"><span id="more-585"></span></p>
<p style="text-align: justify;">Exchange Server 2010 позволяет отправлять и принимать SMS через Outlook или OWA, используя обычный коммуникатор, подключенный по протоколу ActiveSync. Отправка SMS поддерживается с использованием коммуникаторов на базе Windows Mobile 6.1 и старше. При подключении к Exchange Server 2010 коммуникатора на базе Windows Mobile 6.5 по протоколу Active Sync, можно выбрать параметр синхронизации &laquo;<strong>Текстовые сообщения.</strong>&raquo; Но, когда вы используете коммуникатор на базе Windows Mobile 6.1 (коих сейчас больше всего), данный пункт меню поумолчанию отсутствует. Но при первом подключении к коммуникатора к Exchange Server 2010, в коммуникатор должно прийти специальное письмо-уведомление, в котором будет ссылка на загрузку обновления с сайта Microsoft для Outlook Mobile. Подробнее об этом можно прочитать <a href="http://msexchangeteam.com/archive/2010/03/17/454307.aspx">тут</a>, а инструкцию по настройке можно найти в следующем <a href="http://msexchangeteam.com/files/454306/download.aspx">документе</a>.</p>
<p style="text-align: justify;">Но почему-то на практике не всё оказалось так гладко. Мой коммуникатор Samsung i900 (Omnia, WiTu), работающий под управлением Windows Mobile 6.1, подключился к Exchange 2010, применил политики, синхронизировал почту, календарь и контакты, но никаких уведомлений об обновлениях я так и не получил. И соответсвенно никаких функций по синхронизации SMS у меня так и не появилось. Поиски в Интернете никаких результатов тоже не дали.</p>
<p style="text-align: justify;">Однако вернувшись к инструкции, я увидел скриншот со ссылкой на соответствующее обновление <a href="http://go.microsoft.com/fwlink/?LinkId=150061">http://go.microsoft.com/fwlink/?LinkId=150061</a></p>
<p style="text-align: justify;"><a href="http://blogs.lankey.ru/wp-content/uploads/2010/04/wm6.1_link.jpg"><img class="aligncenter size-medium wp-image-588" title="wm6.1_link" src="http://blogs.lankey.ru/wp-content/uploads/2010/04/wm6.1_link-224x300.jpg" alt="" width="224" height="300" /></a>Пройдя по этой ссылке, мы попадаем на загрузку файла обновления Outlook Mobile: <a href="https://outlook.vo.msecnd.net/OutlookMobileSetup.cab">https://outlook.vo.msecnd.net/OutlookMobileSetup.cab</a> На самом деле это не файл обновления, а лишь инсталлятор и весит он всего 180 КБ. Далее этот инсталлятор загружает соответсвующее обновление через Интернет, в соответствие с текущей версией операционной системы коммуникатора и локализации.</p>
<p style="text-align: justify;">Далее я вручную загрузил этот CAB-файл на мобильное устройство и запустил его. Но при установке получил сообщение об ошибке <strong>0&#215;80040700 &laquo;Не достаточно свободного места&raquo;</strong>. На телефоне было свободно около 5 МБ системной памяти, но нигде не говорится о том сколько же требуется для установки. Эту информацию мне удалось найтив лог-файле Outlook Mobile, который расположен тут: <strong>Windows\OutlookLive\ClientLog0.txt</strong>. Там была строчка <strong>d</strong><strong>isk space Needed</strong><strong>: 10709112</strong>. Как только я высвободил необходимое пространство на внутренней памяти, обновление успешно установилось, и в настройках синхронизации появился соответсвующий пункт меню: &raquo;<strong>Текстовые сообщения</strong>&laquo;.</p>
<p style="text-align: justify;"><a href="http://blogs.lankey.ru/wp-content/uploads/2010/04/wm6.1_sms.jpg"><img class="aligncenter size-medium wp-image-590" title="wm6.1_sms" src="http://blogs.lankey.ru/wp-content/uploads/2010/04/wm6.1_sms-180x300.jpg" alt="" width="180" height="300" /></a></p>
<p style="text-align: justify;">После завершения процесса синхронизации, перезапустив  Microsft Office Outlook или OWA, вы увидите, что в папке входящие помимо писем, появятся и ваши SMS сообщения.</p>
<p style="text-align: justify;"><a href="http://blogs.lankey.ru/wp-content/uploads/2010/04/sms.jpg"><img class="aligncenter size-medium wp-image-591" title="sms" src="http://blogs.lankey.ru/wp-content/uploads/2010/04/sms-300x87.jpg" alt="" width="300" height="87" /></a></p>
<p style="text-align: justify;">Теперь SMS-сообщения можно и отправлять прямо из Outlook или OWA. Можно просто ответить на входящее сообщение, а можно и создать новое. В меню &laquo;Создать&raquo;, появился новый пункт &laquo;Текстовое сообщение&raquo;.</p>
<p style="text-align: justify;"><a href="http://blogs.lankey.ru/wp-content/uploads/2010/04/new_sms.jpg"><img class="aligncenter size-medium wp-image-592" title="new_sms" src="http://blogs.lankey.ru/wp-content/uploads/2010/04/new_sms-300x114.jpg" alt="" width="300" height="114" /></a></p>
<p style="text-align: justify;">Причём, можно и не набирать телефон вручную, достаточно выбрать людей из адресной книги, написать SMS и нажать отправить. По протоколу ActiveSync сообщение попадёт в ваш коммуникатор, который сразу же отправит его получателю. И через несколько секунд ваша SMS-ка придёт на мобильный телефон соответствующего человека. Если он вам ответит, то через несколько секунд его ответ вы увидите у себя в Outlook. При этом на самом телефоне SMS-переписка также сохраняется.</p>
<p style="text-align: justify;"><a href="http://blogs.lankey.ru/wp-content/uploads/2010/04/new_sms_exp.jpg"><img class="aligncenter size-medium wp-image-593" title="new_sms_exp" src="http://blogs.lankey.ru/wp-content/uploads/2010/04/new_sms_exp-300x248.jpg" alt="" width="300" height="248" /></a></p>
<p style="text-align: justify;">Единственное, что я заметил, так это, что при отправке SMS-сообщений через Outlook, не запрашиваются подтверждения о доставке.</p>
<p style="text-align: justify;">Теперь отправлять SMS сообщения стало намного легче и удобнее. Используя Outlook, вы отправляете сообщения со своего номера мобильного телефона, который уже известен вашим коллегам и не нужно искать какие-либо WEB-сервисы или приобретать дополнительные услуги мобильных операторов.</p>
<p style="text-align: justify;">
<p style="text-align: justify;">
<p style="text-align: justify;">
<p style="text-align: justify;">
]]></content:encoded>
			<wfw:commentRss>http://www.lankey.ru/blog/2010/04/19/send-sms-exchange-server-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Не доставляются голосовые сообщения в Exchange 2010</title>
		<link>http://www.lankey.ru/blog/2010/03/30/ne-dostavlyayutsya-golosovye-soobsheniya-v-exchange-2010/</link>
		<comments>http://www.lankey.ru/blog/2010/03/30/ne-dostavlyayutsya-golosovye-soobsheniya-v-exchange-2010/#comments</comments>
		<pubDate>Tue, 30 Mar 2010 08:31:37 +0000</pubDate>
		<dc:creator>Ярослав Никифоров</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[exchange 2007]]></category>
		<category><![CDATA[exchange 2010]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[исправления]]></category>

		<guid isPermaLink="false">http://blogs.lankey.ru/?p=509</guid>
		<description><![CDATA[Столкнулись с проблемой: перестали доставляться сообщения голосовой почты, отправленные пользователям Exchange через Unified Messaging. В журнале событий при этом повторяются следующие ошибки: Source: MSExchange Unified Messaging Event ID: 1185 Task Category: UMCore The Unified Messaging server failed to submit a message to Hub Transport server 'EXCHANGE' due to the following error: Unexpected server response. Expected: 220, [...]]]></description>
			<content:encoded><![CDATA[<p>Столкнулись с проблемой: перестали доставляться сообщения голосовой почты, отправленные пользователям Exchange через Unified Messaging. В журнале событий при этом повторяются следующие ошибки:</p>
<pre>Source: MSExchange Unified Messaging
Event ID: 1185
Task Category: UMCore
The Unified Messaging server failed to submit a message to Hub Transport server 'EXCHANGE' due to the following error: Unexpected server response. Expected: 220, actual: 500, whole response: 500 5.3.3 Unrecognized command</pre>
<pre>Source: MSExchange Unified Messaging
Event ID: 1423
Task Category: UMCore
A pipeline stage encountered the following error. Details : 'Microsoft.Exchange.UM.UMCore.SmtpSubmissionException: Submission to the Hub Transport server failed. The operation will be retried. ---&gt; Microsoft.Exchange.Net.ExSmtpClient.UnexpectedSmtpServerResponseException: Unexpected SMTP server response. Expected: 220, actual: 500, whole response: 500 5.3.3 Unrecognized command

   at Microsoft.Exchange.Net.ExSmtpClient.SmtpTalk.CheckResponse(ServerResponseInfo response, Int32 expectedCode)
   at Microsoft.Exchange.Net.ExSmtpClient.SmtpTalk.Command(SmtpChunk[] chunks, SmtpCommandType command, Int32 expectedCode)
   at Microsoft.Exchange.Net.ExSmtpClient.SmtpTalk.StartTls()
   at Microsoft.Exchange.Net.ExSmtpClient.SmtpClient.Submit()
   at Microsoft.Exchange.UM.UMCore.SmtpSubmitStage.SubmitMessage()
   at Microsoft.Exchange.UM.UMCore.SmtpSubmitStage.InternalDoSynchronousWork()
   --- End of inner exception stack trace ---

Server stack trace:
   at Microsoft.Exchange.UM.UMCore.SmtpSubmitStage.HandleTransientSmtpFailure(Exception e, InternalExchangeServer smtpServerToUse)
   at Microsoft.Exchange.UM.UMCore.SmtpSubmitStage.InternalDoSynchronousWork()
   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]&amp; outArgs)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)

Exception rethrown at [0]:
   at System.Runtime.Remoting.Proxies.RealProxy.EndInvokeHelper(Message reqMsg, Boolean bProxyCase)
   at System.Runtime.Remoting.Proxies.RemotingProxy.Invoke(Object NotUsed, MessageData&amp; msgData)
   at Microsoft.Exchange.UM.UMCore.SynchronousPipelineStageBase.SynchronousWorkDelegate.EndInvoke(IAsyncResult result)
   at Microsoft.Exchange.UM.UMCore.SynchronousPipelineStageBase.EndSynchronousWork(IAsyncResult r)'</pre>
<p>Роли Hub Transport и Unified Messaging находятся на одном и том же сервере, но тем не менее, голосовое сообщение, оставленное пользователем, в ящик получателя не попадает.</p>
<p>Из приведенных ошибок видно, что при попытке установления SMTP-соединения служба Hub Transport выдает ответ, что команда не распознана. По подробной информации видно, что ошибка возникает в процессе работы процедуры StartTls, то есть имеет место быть неудачная попытка установки шифрованного соединения.</p>
<p>Ошибка возникла из-за следующей тонкости:</p>
<p>Сам сервер внутри сети называется <em>EXCHANGE.имя-домена</em>. А опубликован в Интернет он под именем <em>MAIL.имя-домена</em>. Соответственно, в процессе настройки в Receive Connector захотелось внести изменения, чтобы при подключении сервер отвечал не своим внутренним именем, а внешним, отличающимся от внутреннего. Но &#8211; при несовпадении FQDN, предоставляемого в ответ на HELO или EHLO, и системного имени сервера, отказывается работать включенная по умолчанию аутентификация Exchange Server authentification. Соответственно, эта галочка и была выключена.</p>
<p>А если выключена Exchange Server authentication &#8211; то в ответ на команду EHLO сервер в списке допустимых команд НЕ ВЫВОДИТ команду X-ANONYMOUSTLS, и не отвечает на нее. А службы Unified Messaging пытаются установить соединение с Hub Transport именно этим способом.</p>
<p><strong>Решение:</strong> в нашем случае помогло включение обратно пункта Exchange Server authentication, смена выдаваемого FQDN в окне Receive Connector обратно на внутреннее имя сервера, и перезапуск служб MSExchange Hub Transport и MSExchange Unified Messaging.</p>
<p>После перезапуска служб голосовые сообщения, ожидающие своей доставки пользователям, были им доставлены в ящик автоматически.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lankey.ru/blog/2010/03/30/ne-dostavlyayutsya-golosovye-soobsheniya-v-exchange-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Приглашаем посетить семинар по новым серверным продуктам Microsoft</title>
		<link>http://www.lankey.ru/blog/2010/03/16/seminar-2010-microsoft/</link>
		<comments>http://www.lankey.ru/blog/2010/03/16/seminar-2010-microsoft/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 18:07:36 +0000</pubDate>
		<dc:creator>Сергей Ерин</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Office Communications Server]]></category>
		<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[виртуализация]]></category>

		<guid isPermaLink="false">http://blogs.lankey.ru/?p=467</guid>
		<description><![CDATA[Компания ЛанКей приглашает вас посетить бесплатный семинар, проводимый совместно с компанями Microsoft и GFI Software, посвящённый новым серверным решениям и средствам информационной безопасности. На семинаре будут рассмотрены решения на базе Windows Server 2008 R2, Exchange Server 2010, и платформа для объединённых коммуникаций на базе Office Communications Server 2007 R2. В рамках семинара будет рассказано о [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Компания ЛанКей приглашает вас посетить бесплатный семинар, проводимый совместно с компанями Microsoft и GFI Software, посвящённый новым серверным решениям и средствам информационной безопасности.</p>
<p style="text-align: justify;">На семинаре будут рассмотрены решения на базе <strong>Windows Server 2008 R2</strong>, <strong>Exchange Server 2010,</strong> и платформа для объединённых коммуникаций на базе <strong>Office Communications Server 2007 R2</strong>. В рамках семинара будет рассказано о продуктах для обеспечения информационной безопасности компании GFI.</p>
<p style="text-align: justify;">Программа семинара ориентирована как на руководителей ИТ-подразделений, так и на технических специалистов и системных администраторов. Также семинар будет интересен для владельцев, руководителей организаций и предприятий, топ-менеджеров, принимающих решения о стратегическом развитии компании. На данном семинаре вы узнаете о новых возможностях каждого из продуктов, узнаете, как с помощью того или иного решения можно сократить затраты на ИТ-инфраструктуру, обеспечить надёжность и отказоустойчивость информационной системы, повысить производительность труда пользователей, и тем самым обеспечить конкурентные преимущества для вашего бизнеса.</p>
<p><strong>Количество мест ограничено!</strong></p>
<p>Для участия в семинаре требуется регистрация: <a href="http://www.lankey.ru/?id=1072#reg">http://www.lankey.ru/?id=1072#reg</a></p>
<p>Информация о семинаре на сайте Microsoft: <a href="http://www.microsoft.com/rus/events/detail.mspx?eventid=1032445810">http://www.microsoft.com/rus/events/detail.mspx?eventid=1032445810</a></p>
<p>Информация о семинаре на сайте GFI:<a href=" http://www.gfi.ru/getnews.php?newsid=50"> http://www.gfi.ru/getnews.php?newsid=50</a></p>
<p>Информация о семинаре на сайте LanKey: <a href="http://www.lankey.ru/?id=1072">http://www.lankey.ru/?id=1072</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.lankey.ru/blog/2010/03/16/seminar-2010-microsoft/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Exchange 2010 теперь с нами!</title>
		<link>http://www.lankey.ru/blog/2009/11/10/exchange-2010-teper-s-nami/</link>
		<comments>http://www.lankey.ru/blog/2009/11/10/exchange-2010-teper-s-nami/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 15:37:07 +0000</pubDate>
		<dc:creator>Ярослав Никифоров</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[exchange 2010]]></category>
		<category><![CDATA[microsoft]]></category>

		<guid isPermaLink="false">http://blogs.lankey.ru/?p=405</guid>
		<description><![CDATA[Вчера был большой день для тех, кто занимается электронной почтой и объединенными коммуникациями &#8211; стала доступна для скачивания и установки RTM-версия Microsoft Exchange Server 2010. Вот она &#8211; http://www.microsoft.com/downloads/details.aspx?displaylang=en&#38;FamilyID=05741f65-2a7b-4070-879f-d74208d6171d У одного из наших клиентов мы уже внедряем Exchange 2010, поэтому дистрибутив был тут же забран для обновления. С Release Candidate до RTM версии апгрейд проводится просто [...]]]></description>
			<content:encoded><![CDATA[<p>Вчера был большой день для тех, кто занимается электронной почтой и объединенными коммуникациями &#8211; стала доступна для скачивания и установки RTM-версия Microsoft Exchange Server 2010. Вот она &#8211; <a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=05741f65-2a7b-4070-879f-d74208d6171d">http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=05741f65-2a7b-4070-879f-d74208d6171d</a></p>
<p>У одного из наших клиентов мы уже внедряем Exchange 2010, поэтому дистрибутив был тут же забран для обновления.</p>
<p>С Release Candidate до RTM версии апгрейд проводится просто запуском установки &#8211; обновление прходит без проблем. С Beta-версии до RTM апгрейд не предусмотрен &#8211; надо деинсталлировать Beta и устанавливать RTM.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.lankey.ru/blog/2009/11/10/exchange-2010-teper-s-nami/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Аварийное восстановление Exchange Server 2007</title>
		<link>http://www.lankey.ru/blog/2009/11/09/exchange-server-2007-disaster-recovery/</link>
		<comments>http://www.lankey.ru/blog/2009/11/09/exchange-server-2007-disaster-recovery/#comments</comments>
		<pubDate>Sun, 08 Nov 2009 22:38:52 +0000</pubDate>
		<dc:creator>Сергей Ерин</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[exchange 2007]]></category>
		<category><![CDATA[резервное копирование]]></category>

		<guid isPermaLink="false">http://blogs.lankey.ru/?p=377</guid>
		<description><![CDATA[Недавно к нам обратилась одна компания с просьбой восстановить Exchange Server. В компании работает около 500 человек. Занимается компания бизнесом в Интернете. Можно себе представить насколько критичным для данной компании является сервис электронной почты, куда приходят все заказы от клиентов, и происходит общение между сотрудниками. В тот момент, когда компания обратилась за помощью к нам, [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">
<p style="text-align: justify;">Недавно к нам обратилась одна компания с просьбой восстановить Exchange Server. В компании работает около 500 человек. Занимается компания бизнесом в Интернете. Можно себе представить насколько критичным для данной компании является сервис электронной почты, куда приходят все заказы от клиентов, и происходит общение между сотрудниками.<span id="more-377"></span></p>
<p style="text-align: justify;">В тот момент, когда компания обратилась за помощью к нам, почта уже не работала 2 дня, руководство было в панике. Самое плохое, что всё это время системные администраторы пытались восстановить работоспособность почтового сервиса самостоятельно, и как всегда это бывает, лучше бы они ничего не делали! И почему за помощью к специалистам обращаются не начальном этапе, а когда уже всё находится в полной <em>{nslookup 83.102.180.3}</em>?)</p>
<p style="text-align: justify;">В компании был только один Exchange Server 2007 Standard Edition, на котором располагались все ящики пользователей. Ящики большего числа пользователей были распределены по 2-м базам данных, каждая по 250 ГБ. Было также ещё 2 MailBox Store для руководства и 1 Public Folder Store. Резервное копирование выполнялось при помощи Acronis True Image Echo Enterprise Server, который выполнял снимок всего диска.</p>
<h4>Пролог</h4>
<p style="text-align: justify;">Итак, что же случилось? Хронология событий такая:  В одну прекрасную ночь в офисе компании выключили свет, UPS продержал сервера 1 час, затем PowerChute начал завершать работу операционных систем, но Exchange Server завершить работу не успел, и UPS выключился. На утро системные администраторы включили сервера, и обнаружили, что Exchange Server не подмонтировал 2 самые большие базы данных, в которых находились ящики 250 пользователей. Попытки смонтировать БД вручную не увенчались успехом, ввиду их физического повреждения, несмотря на то, что БД размещались на массиве RAID 10 (плохо, что вместе с логами транзакций). Далее системные администраторы решили вытащить базы данных из резервных копий Acronis-а. Который сказал, что процесс восстановления будет завершён через 10 часов. Руководство сказало, что это слишком долго и нужно сделать так, чтобы пользователи смогли получать хотя бы новые письма, пока идёт процесс восстановления. Этот метод называется Dial-tone Recovery.</p>
<p style="text-align: justify;">Но то ли системные администраторы не очень внимательно читали документацию, толи не так её поняли, но сделали они всё примерно так: Они решили создать новую БД, чтобы переместить в неё всех пользователей. Запустили Exchange Management Console перешли в раздел Server Configuration\Mailbox, создали новую БД и попытались её смонтировать, на что получили ошибку. Они долго разбирались в природе этой ошибки и затем поняли, что ошибка была вызвана тем, что они пытались смонтировать 6-ю БД в Exchange Server Standard, который поддерживает только 5! Следующим их действием стала попытка удалить повреждённую БД, которая тоже не увенчалась успехом, потому что в этой базе были ящики пользователей и её нельзя удалять (точнее Exchange не даёт этого сделать)! Эта ситуация вогнала системный администраторов в небольшой ступор (и лучше бы они в нём и оставались), так нет же, среди них нашёлся один знаток Active Directory, который вызвался помочь. Он взял и удалил базы данных  сервера Exchange через ADSIedit.msc. Радостные и благодарные ему системные администраторы Exchange, создали 2 новые БД, и смонтировали их. Этот процесс естественно прошёл успешно.</p>
<p style="text-align: justify;">Но их радость очень быстро закончилась! Когда администраторы попытались переместить пользователей в новые пустые БД, то столкнулись с новой «проблемкой». При открытии консоли Exchange Management Console &gt; Recipient Configuration &gt; Mailbox,  при открытии любого ящика стала выдаваться ошибка The properties on User have invalid data. А командлеты Get-MailBox и Move-Mailbox выдавали ошибку Object Domain/OU/User has been corrupted and it is in an inconsistent state. Database is mandatory on user MailBox.</p>
<p style="text-align: justify;">В этот момент системные администраторы поняли, что дела совсем плохи, надежд больше нет и лучше приложить все усилия к написанию нового резюме! <img src='http://www.lankey.ru/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  В конце концов, руководство решило обратиться за помощью к сертифицированному партнёру Microsoft, в компанию «ЛанКей».</p>
<p style="text-align: justify;">В таком состоянии нам передали дела и предоставили удалённый доступ к системе. Ввиду критической для бизнеса ситуации, работы нам пришлось производить в круглосуточном режиме.</p>
<h4>Восстановление.</h4>
<p style="text-align: justify;">Часов через 10 восстановились базы данных недельной давности, из Acronis-овского бэкапа. Но ни одна из них не стала монтироваться. Ещё раз убеждаемся в том, что Acronis не умеет резервировать Exchange Server и все БД были в состоянии Dirty Shutdown. Хотя базы данных были зарезервированы вместе с логами, но чтобы выполнить софт-рековери, логов в архиве не хватало. Пришлось восстанавливать базы данных при помощи <strong>eseutil /p</strong>. На каждую базу данных потребовалось ещё 5 часов восстановления. После этого базы смонтировались. На всякий случай, мы также запустили проверку логической структуры при помощи <strong>isinteg</strong>.</p>
<p style="text-align: justify;">Теперь мы должны были разобраться с тем, что ящики пользователей нельзя было ни переместить, ни восстановить. Проанализировав ситуацию, мы выяснили, что у всех пользователей был удалён атрибут <strong>homeMDB</strong>, точнее был удалён не сам атрибут, а его значение. В тестовых целях, мы восстановили данный атрибут у одного из пользователей вручную через <strong>ADSIedit.msc</strong>. И теперь мы могли перемещать и восстанавливать ящик данного пользователя. Но восстанавливать значения этого атрибута у 500 пользователей было бы довольно трудоёмкой задачей. Поэтому мы решили как-то автоматизировать данный процесс. Первым в голову конечно же пришло использовать Power Shell. Но командлеты для управления Active Diretory появились только в Windows Server 2008 R2, здесь же вся инфраструктура была построена на Windows Server 2003. Но выход был найден, мы решили использовать <strong>PowerShell Commands for Active Directory от Quest Software</strong> <a href="http://www.quest.com/powershell/activeroles-server.aspx" target="_blank">http://www.quest.com/powershell/activeroles-server.aspx</a> (спасибо <a href="/author/excerr/" target="_blank">Ярославу</a> за подсказку).</p>
<p style="text-align: justify;">Для задания атрибута homeMDB, использовался командлет:<br />
<strong>Set-QADUser user_name -ObjectAttributes @{HomeMDB=&#8217;FQDN_базы&#8217;}</strong></p>
<p style="text-align: justify;">Теперь оставалось задать соответствующий атрибут каждому пользователю. Но не всё оказалось так просто. Ведь у нас было 2 базы данных и 250 пользователей, и нет никакой информации о том, какой пользователь в какой БД размещался. И соответственно непонятно какой атрибут, какому пользователю присваивать. Мы задались вопросом: как выяснить, какой пользователь, в какой базе находился? Ведь в Active Directory эта информация была стёрта. Единственное место, где эта информация осталась &#8211; это сами базы данных. И вытащить её оттуда можно было при помощи командлета <strong>Get-MailboxStatistics</strong>.</p>
<p style="text-align: justify;">Поскольку Get-MailboxStatistics &#8211; является командлетом Exchange, а Set-QADUser &#8211; является командлетом Quest. Нужно было подгрузить обе оснастки в один сеанс PowerShell, для чего использовали командлет <strong>Add-PSSnapin</strong>. Итак, для задания атрибута homeMDB для пользователей из db1 использовали следующий скрипт:</p>
<p style="text-align: left;"><strong>Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Admin<br />
Add-PSSnapin Quest.ActiveRoles.ADManagement<br />
Get-MailboxStatistics -Database exchsrv\First Storage Group\db1 | ForEach-Object  -process {Get-QADuser $_.Displayname} | Set-QADUser -ObjectAttributes @{HomeMDB=&#8217;CN=db1,CN=First Storage Group,CN=InformationStore,CN=exchsrv,CN=Servers,CN=Exchange Administrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=DOMAIN,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=domain,DC=ru&#8217;}</strong></p>
<p style="text-align: left;">Аналогичный скрипт для задания атрибута homeMDB для пользователей из второй БД:<br />
<strong>Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Admin<br />
Add-PSSnapin Quest.ActiveRoles.ADManagement<br />
Get-MailboxStatistics -Database exchsrv\Second Storage Group\db2 | ForEach-Object  -process {Get-QADuser $_.Displayname} | Set-QADUser -ObjectAttributes @{HomeMDB=&#8217;CN=db2,CN=Second Storage Group,CN=InformationStore,CN=exchsrv,CN=Servers,CN=Exchange Administrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=DOMAIN,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=domain,DC=ru&#8217;}</strong></p>
<p style="text-align: justify;">После перезапуска службы Information Store пользователи успешно подключились к своим ящикам, но ни получение ни отправка почты не работала. Мы обратили внимание на то, что служба HUB Transport не работает. После запуска её вручную, она сразу же останавливалась. Как мы выяснили, была повреждена база данных почтовой очереди, которая располагается здесь: C:\Program Files\Microsoft\Exchange Server\TransportRoles\data\Queue\mail.que.<br />
Чтобы не потерять почту, которая успела попасть в очередь, мы решили восстановить эту БД при помощи eseutil:</p>
<p style="text-align: left;"><strong>eseutil /p c:\Program Files\Microsoft\Exchange Server\TransportRoles\data\Queue\mail.que</strong></p>
<p style="text-align: justify;"><strong> </strong>После восстановления этой БД, служба HUB Transport запустилась и заработала. Пользователи начали получать новую почту.</p>
<h4>PS1:</h4>
<p style="text-align: justify;">На самом деле процесс восстановления был немного сложнее, чем описано выше. Просто лень много писать, да и про метод Dial-tone Recovery подробно написано на technet. В кратце:</p>
<p style="text-align: justify;">На время восстановления мы переместили всех пользователей во временные пустые БД, потом восстановили БД из резервных копий, заменили ими новые БД. Затем новые БД смонтировали в Recovery Storage Group и слили всю почту, полученную во время восстановления, с восстановленными из архива ящиками.</p>
<h4>PS2:</h4>
<p>Немножко размышлений:</p>
<ul>
<li style="text-align: justify;">Как нам потом доложили, сбой почтовой системы вылился компании в 2 млн. рублей убытков. Интересно учитывал ли кто-нибудь эти деньги при проектировании почтовой системы и разработке политики резервного копирования? Было ли это прописано в SLA? <img src='http://www.lankey.ru/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </li>
<li style="text-align: justify;">Ведь спасти от такого сбоя могла простая SCR репликация, которая обошлась бы примерно в дополнительные 150 000 р. И восстановление заняло бы максимум пол часа. Хотя можно было бы подумать и о внедрении CCR кластера, который всё равно бы обошёлся раза в 2 дешевле, понесённых убытков.</li>
<li style="text-align: justify;">Резервировать Exchange Server 2007 нужно поддерживаемыми средствами резервного копирования, такими как Symantec BackUp Exec, Microsoft Data Protection Manager, ну или на худой конец ntbackup. Даже Windows  Backup из состава Windows Server 2008 уже поддерживает резервное копирование Exchange Server 2007 (sp2). Эти средства резервного копирования правильно подготавливают базу данных Exchange к процедуре резервирования, закрывают базу на запись, и после завершения резервного копирования, удаляют логи. Используемое в данном случае средство резервного копирования, неправильно резервировало БД Exchange, что привело к дополнительным 10 часам простоя.</li>
<li style="text-align: justify;">Также в данном случае большой ошибкой стало то, что логи транзакций размещались на одном и том же диске с базами данных, и поэтому было потеряно всё разом.</li>
<li style="text-align: justify;">Кроме того,  помимо еженедельного полного резервного копирования, было бы неплохо выполнять ежедневное добавочное. В данном случае произошла бы потеря почты только за один день, а не за неделю.</li>
</ul>
<h4>PS3:</h4>
<p style="text-align: justify;">История полностью вымышленная, любые сходства с реальным миром, простые совпадения! <img src='http://www.lankey.ru/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.lankey.ru/blog/2009/11/09/exchange-server-2007-disaster-recovery/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Как восстановить письмо из антиспам карантина Exchange Server 2007</title>
		<link>http://www.lankey.ru/blog/2009/09/07/how-to-recover-quarantined-messages-from-the-spam-quarantine-mailbox/</link>
		<comments>http://www.lankey.ru/blog/2009/09/07/how-to-recover-quarantined-messages-from-the-spam-quarantine-mailbox/#comments</comments>
		<pubDate>Mon, 07 Sep 2009 09:06:21 +0000</pubDate>
		<dc:creator>Сергей Ерин</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[exchange 2007]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[антиспам]]></category>

		<guid isPermaLink="false">http://blogs.lankey.ru/?p=199</guid>
		<description><![CDATA[Некоторые наши заказчики ограничились использованием встроенного в Exchange 2007 антиспам функционала. Одним из антиспам фильтров является Content Filtering. Данный фильтр проверяет содержимое письма, на основании чего выставляет ему SCL (Spam Confidence Level) рейтинг (от 0 до 9). И на основании этого рейтинга настраиваются 3 дальнейших варианта действий: Reject (отклонить, отправив NDR), Delete (удалить письмо) и [...]]]></description>
			<content:encoded><![CDATA[<p>Некоторые наши заказчики ограничились использованием встроенного в Exchange 2007 антиспам функционала. Одним из антиспам фильтров является Content Filtering. Данный фильтр проверяет содержимое письма, на основании чего выставляет ему SCL (Spam Confidence Level) рейтинг (от 0 до 9). И на основании этого рейтинга настраиваются 3 дальнейших варианта действий: Reject (отклонить, отправив NDR), Delete (удалить письмо) и Quarantine (отправить в Карантин).</p>
<p>Чтобы случайно не потерять нужные письма, оптимальнее всего настроить помещение писем, определённых как спам, в Карантин. Для этого нужно создать какой-нибудь ящик, например spm@domain.ru, и указать его в параметрах Content Filtering.</p>
<p>Внимание!  - mail-enabled Public Folder указывать нельзя! Т.е. ящик spm@domain.ru должен быть mail-enabled user-ом.<br />
<span id="more-199"></span><br />
<a href="http://blogs.lankey.ru/wp-content/uploads/2009/09/Content-Filtering.jpg"><img class="aligncenter size-medium wp-image-201" title="Content Filtering" src="http://blogs.lankey.ru/wp-content/uploads/2009/09/Content-Filtering-261x300.jpg" alt="Content Filtering" width="261" height="300" /></a></p>
<p>Казалось бы, что всё хорошо и все должны быть рады, но кто уже пытался вытащить письмо из карантина, знает, что не всё так просто! Если открыть ящик spm@domain.ru в Outlook, то там будет куча писем, отправленных от Postmaster. Открыв письма, конечно можно  увидеть по заголовкам от кого оно пришло и кому назначалось, но извлечь исходное писмо будет невозможно.</p>
<p>Чтобы можно было извлекать исходные сообщения из карантина нужно определённым образом настроить Outlook 2007:</p>
<p>Сначала нужно создать новый шаблон форм. Создаём файл:<br />
<strong>QTNE.cfg</strong></p>
<div class="codesmp"><code><br />
[Description]<br />
MessageClass=IPM.Note<br />
CLSID={00020D31-0000-0000-C000-000000000046}<br />
DisplayName=Quarantine Extension Form<br />
Category=Standard<br />
Subcategory=Form<br />
Comment=This forms allows the Original Sender Address to be viewed as a column<br />
LargeIcon=IPML.ico<br />
SmallIcon=IPMS.ico<br />
Version=1.0<br />
Locale=enu<br />
Hidden=1<br />
Owner=Microsoft Corporation<br />
Contact=Your Name</p>
<p>[Platforms]<br />
Platform1=Win16<br />
Platform2=NTx86<br />
Platform9=Win95</p>
<p>[Platform.Win16]<br />
CPU=ix86<br />
OSVersion=Win3.1</p>
<p>[Platform.NTx86]<br />
CPU=ix86<br />
OSVersion=WinNT3.5</p>
<p>[Platform.Win95]<br />
CPU=ix86<br />
OSVersion=Win95</p>
<p>[Properties]<br />
Property01=OriginalSenderAddress</p>
<p>[Property.OriginalSenderAddress]<br />
Type=30<br />
NmidInteger=0x0067<br />
DisplayName=Original Sender Address</p>
<p>[Verbs]<br />
Verb1=1</p>
<p>[Verb.1]<br />
DisplayName=&amp;Open<br />
Code=0<br />
Flags=0<br />
Attribs=2</p>
<p>[Extensions]<br />
Extensions1=1</p>
<p>[Extension.1]<br />
Type=30<br />
NmidPropset={00020D0C-0000-0000-C000-000000000046}<br />
NmidInteger=1<br />
Value=1000000000000000</p>
<p></code></div>
</p>
<p>Затем копируем этот файл в папку: C:\Program Files\Microsoft Office\Office12\FORMS\1033</p>
<p>Запускаем Outlook нажимаем Сервис\Параметры, переходим на вкладку Дополнительно, нажимаем там Дополнительно&#8230;, нажимаем внизу Дополнительные формы, затем Диспетчер форм, нажимаем кнопку установить и выбираем файл C:\Program Files\Microsoft Office\Office12\FORMS\1033\QTne.cfg, далее на нужно нажать, ОК, Закрыть, ОК, ОК&#8230;.</p>
<p>Далее нажимаем Сервис\Настройка учётных записей&#8230;, выбираем учетную запись Exchange, нажимаем Изменить\Другие настройки&#8230;, переходим на вкладку Дополнительно и нажимаем Добавить&#8230;, пишем наш ящик spm@domain.ru, на всех окошках жмём ОК.</p>
<p>В Главном окне Outlook раскрываем Почтовый ящик spm@domain.ru, и переходим в папку Входящие.</p>
<p>В правой части окна нажимаем правой кнопкой мыши по названию полей и выбираем Выбрать поля.</p>
<p><a href="http://blogs.lankey.ru/wp-content/uploads/2009/09/fields.jpg"><img class="aligncenter size-medium wp-image-204" title="fields" src="http://blogs.lankey.ru/wp-content/uploads/2009/09/fields-300x240.jpg" alt="fields" width="300" height="240" /></a></p>
<p>Далее нужно в окне выбора поля, раскрыть список часто используемых полей, промотать вниз и выбрать Формы&#8230;</p>
<p><a href="http://blogs.lankey.ru/wp-content/uploads/2009/09/field_choose.jpg"><img class="aligncenter size-medium wp-image-206" title="field_choose" src="http://blogs.lankey.ru/wp-content/uploads/2009/09/field_choose-223x300.jpg" alt="field_choose" width="223" height="300" /></a></p>
<p>Далее нужно будет выбрать Quarantine Extension Form, нажать добавить, затем Закрыть.</p>
<p><a href="http://blogs.lankey.ru/wp-content/uploads/2009/09/forms_choose.jpg"><img class="aligncenter size-medium wp-image-208" title="forms_choose" src="http://blogs.lankey.ru/wp-content/uploads/2009/09/forms_choose-300x48.jpg" alt="forms_choose" width="300" height="48" /></a></p>
<p>После этого вы снова попадёте к выбору поля, где уже будет создано новое поле Orginal Sender Address, там нужно будет схватить его левой кнопкой мыши и перетащить на мсто поля От, само поле От, кстати можно будет убрать, чтобы оно не отвлекало. Убирается поле путем перетаскивания из окна Outlook в панель выбора поля.</p>
<p><a href="http://blogs.lankey.ru/wp-content/uploads/2009/09/add_fields.jpg"><img class="aligncenter size-medium wp-image-209" title="add_fields" src="http://blogs.lankey.ru/wp-content/uploads/2009/09/add_fields-300x259.jpg" alt="add_fields" width="300" height="259" /></a></p>
<p>Теперь Outlook будет отображать в папке SPAM, отправителя письма, что позволит легко найти нужное письмо. Чтобы письмо доставить получателю, нужно его открыть, дважды щёлкнув мышью и нажать вверху кнопку &laquo;Отправить заново&raquo;. После этого откроется оригинальное письмо, адресатом которого уже будет указан первоначальный получатель. Нужно будет просто ещё раз нажать кнопку отправить и письмо будет отправлено изначальному получателю.</p>
<p>К сожалению оно будет отправлено от имени того, кто письмо восстанавливает из карантина! Если уж очень хочется, чтобы в адресе отправителя стоял исходный отправитель, то можно добавить в Outlook 2007 POP3/SMTP &#8211; учётную запись, указав в SMTP адресе адрес исходного отправителя письма (по сути сделать подмену). И при восстановлении письма из спама, выбрать отрпавить через эту учётную запись. Да!, вот так вот, немножко неудобно! <img src='http://www.lankey.ru/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.lankey.ru/blog/2009/09/07/how-to-recover-quarantined-messages-from-the-spam-quarantine-mailbox/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

