none
Exchange 2003 + группвые политики RRS feed

  • Вопрос

  • Один лес, один домен. Два контроллера домена.
    Почтовый сервак на FreeBSD.

    Раньше на машинах не стоял Exchange. Просто на некоторых машинах в Outlooke была прописана почта, которая забиралась с FreeBSD сервера.

    Сейчас решили поставить Exchange. Поставили. Всем пользователям домена сделали учетки в Exchange. FreeBSD и Exchange связали. Все нормально.
    Вопросы:
    Как на всех машинах:
    1. автоматом прописатьучетки Exchange в Outlook.
    2. сделать так что при старте у них всех включается Outlook и минимизировался в трей.
    3. заменить существующие адреса почты на учетки Exchanga, чтоб пользователи и не заметили.

    Я пока только создал групповую политику, в которую вставил шаблон с Outlook.http://www.oszone.ru/4401/

Ответы

  •  Nilfgardec написано:
    Внешние и внутрение получаются разные так как у людей уже были внешние адреса. Внутриние - эксченджевские основавались на учетках в АД. Люди не захотят меня свою почту, которой они пользовались не один год.
    Так и не надо! Пропишите в Recipient Policy внешний домен и живите с одним адресом.
     Nilfgardec написано:
    Что, кроме скритпа никаких вариантов?
    Есть, например, руками.

     Nilfgardec написано:
    Просто я в скриптах - не того... Долго придется сидеть и разбираться
    А зачем разбираться? Возьмите готовый. Например, мой скрипт более чем лаконичен и даже при желании разобраться много времени не нужно:

    Code Snippet

    Const HKEY_CLASSES_ROOT  = &H80000000
    Const HKEY_CURRENT_USER  = &H80000001
    Const HKEY_LOCAL_MACHINE = &H80000002
    Const HKEY_USERS  = &H80000003
    Const HKEY_CURRENT_CONFIG = &H80000005

     

    Set objRegistry = GetObject("winmgmts:root\default:StdRegProv")

    ProfilesPath = "Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles"
    KeyPath = ProfilesPath
    Ret = objRegistry.EnumKey(HKEY_CURRENT_USER, KeyPath, arrProfiles)

    If IsArray(arrProfiles) Then
     If UBound(arrProfiles) = 0 Then
      KeyPath = KeyPath + "\Outlook\9375CFF0413111d3B88A00104B2A6676"
      Ret = objRegistry.EnumKey(HKEY_CURRENT_USER, KeyPath, arrAccounts)
      If IsArray(arrAccounts) Then
       If UBound(arrAccounts) = 1 Then
        KeyPath = KeyPath + "\00000001"
        Ret = objRegistry.EnumValues(HKEY_CURRENT_USER, KeyPath, arrValueNames, arrValueTypes)
        For I = 0 To UBound(arrValueNames)
         If arrValueNames(I) = "Identity Eid" Then
          Wscript.Quit
         End If
        Next
       End If
      End IF
     End If
    End If

     

    'Убиваем все профили
    Ret = DeleteKeyTree(HKEY_CURRENT_USER, ProfilesPath)

    CurrentFolder = CreateObject("Scripting.FileSystemObject").GetAbsolutePathName(".")
    Set objShell = CreateObject("WScript.Shell")
    objShell.Run """%ProgramFiles%\Microsoft Office\Office11\Outlook.exe"" /ImportPrf """ + CurrentFolder + "\Exchange.prf"""


    Function DeleteKeyTree(Tree, strKeyPath)
     Set objRegistry = GetObject("winmgmts:root\default:StdRegProv")
     Ret = objRegistry.EnumKey(Tree, strKeyPath, arrSubkeys)
     If IsArray(arrSubkeys) Then
      For Each strSubkey In arrSubkeys
       Ret = DeleteKeyTree(Tree, strKeyPath & "\" & strSubkey)
      Next
     End If
     Ret = objRegistry.DeleteKey(Tree, strKeyPath)
     DeleteKeyTree = 0
    End Function

     

     

    8 июля 2008 г. 12:54

Все ответы

  • 1. http://forums.microsoft.com/TechNet-RU/ShowPost.aspx?PostID=3549534&SiteID=40

    2. http://forums.microsoft.com/TechNet-RU/ShowPost.aspx?PostID=3201103&SiteID=40

    3. -

     

    Вообще вопрос следовало задать в соседнем форуме (про Exchange). Там ответят более развёрнуто и качественно Smile 

     

    8 июля 2008 г. 10:01
  • 1. Мой вариант.

    Распишите более подробно третий вопрос.

    8 июля 2008 г. 10:29
  • 3. У нас свой почтовый сервак на FreeBSD. Допустим server.ua. Тоесть адреса на нем user1@server.ua, user2@server.ua и так далее.

    Раньше в учетках Outlooka был прописан айпишник нашего сервака. Теперь же будт только Exchange. Не хочу, чтоб у пользователя были две учетки в Outlooke. Тоесть привяжем внешнию почту(user1@server.ua) к внутренней почте (учетка Exchange)... Так вот вопрос как сделать это бесболезненно, чтоб пользователь и не заметил
    8 июля 2008 г. 11:45
  • Во-первых - как правильно заметили выше, такие вопросы лучше в соответствующие ветки писать.

    Во-вторых - на кой чёрт вам разделение внешние/внутренние адреса?

    В-третьих - все адреса прописываются в Active Directory и ваши пользователи ничего не заметят. Или вы и с Exchange'м хотите по POP3/SMTP внутри работать?

    8 июля 2008 г. 11:51
  • Признаю, что не в той ветке... Если кто-то будет любезен и перенесет топик - буду только рад.
    Внешние и внутрение получаются разные так как у людей уже были внешние адреса. Внутриние - эксченджевские основавались на учетках в АД. Люди не захотят меня свою почту, которой они пользовались не один год.


    У меня вопрос по первому моему вопросу... По-поводу создания учеток Ексченджа в Оутлуке.
    Что, кроме скритпа никаких вариантов? Может какая прога есть. Просто я в скриптах - не того... Долго придется сидеть и разбираться
    8 июля 2008 г. 12:42
  •  Nilfgardec написано:
    Внешние и внутрение получаются разные так как у людей уже были внешние адреса. Внутриние - эксченджевские основавались на учетках в АД. Люди не захотят меня свою почту, которой они пользовались не один год.
    Так и не надо! Пропишите в Recipient Policy внешний домен и живите с одним адресом.
     Nilfgardec написано:
    Что, кроме скритпа никаких вариантов?
    Есть, например, руками.

     Nilfgardec написано:
    Просто я в скриптах - не того... Долго придется сидеть и разбираться
    А зачем разбираться? Возьмите готовый. Например, мой скрипт более чем лаконичен и даже при желании разобраться много времени не нужно:

    Code Snippet

    Const HKEY_CLASSES_ROOT  = &H80000000
    Const HKEY_CURRENT_USER  = &H80000001
    Const HKEY_LOCAL_MACHINE = &H80000002
    Const HKEY_USERS  = &H80000003
    Const HKEY_CURRENT_CONFIG = &H80000005

     

    Set objRegistry = GetObject("winmgmts:root\default:StdRegProv")

    ProfilesPath = "Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles"
    KeyPath = ProfilesPath
    Ret = objRegistry.EnumKey(HKEY_CURRENT_USER, KeyPath, arrProfiles)

    If IsArray(arrProfiles) Then
     If UBound(arrProfiles) = 0 Then
      KeyPath = KeyPath + "\Outlook\9375CFF0413111d3B88A00104B2A6676"
      Ret = objRegistry.EnumKey(HKEY_CURRENT_USER, KeyPath, arrAccounts)
      If IsArray(arrAccounts) Then
       If UBound(arrAccounts) = 1 Then
        KeyPath = KeyPath + "\00000001"
        Ret = objRegistry.EnumValues(HKEY_CURRENT_USER, KeyPath, arrValueNames, arrValueTypes)
        For I = 0 To UBound(arrValueNames)
         If arrValueNames(I) = "Identity Eid" Then
          Wscript.Quit
         End If
        Next
       End If
      End IF
     End If
    End If

     

    'Убиваем все профили
    Ret = DeleteKeyTree(HKEY_CURRENT_USER, ProfilesPath)

    CurrentFolder = CreateObject("Scripting.FileSystemObject").GetAbsolutePathName(".")
    Set objShell = CreateObject("WScript.Shell")
    objShell.Run """%ProgramFiles%\Microsoft Office\Office11\Outlook.exe"" /ImportPrf """ + CurrentFolder + "\Exchange.prf"""


    Function DeleteKeyTree(Tree, strKeyPath)
     Set objRegistry = GetObject("winmgmts:root\default:StdRegProv")
     Ret = objRegistry.EnumKey(Tree, strKeyPath, arrSubkeys)
     If IsArray(arrSubkeys) Then
      For Each strSubkey In arrSubkeys
       Ret = DeleteKeyTree(Tree, strKeyPath & "\" & strSubkey)
      Next
     End If
     Ret = objRegistry.DeleteKey(Tree, strKeyPath)
     DeleteKeyTree = 0
    End Function

     

     

    8 июля 2008 г. 12:54
  • start \min outlook.exe - не помогло.
    На некоторых машинах при запуске start - пишет, что команда не опознана... На других, запукает, но не минимизирует....

    Stаnky - спасибо за скриптик, но правда я его не понимаю. Попробовал сделать из не него батниковский файлик и запустить на машинке с Оутлуком - ничего не дало... ((
    8 июля 2008 г. 14:13
  •  Nilfgardec написано:
    start \min outlook.exe - не помогло.
    Во-первых /min.
     Nilfgardec написано:
    Stаnky - спасибо за скриптик, но правда я его не понимаю.
    Ну, тогда я ничем не могу помочь.

     Nilfgardec написано:
    Попробовал сделать из не него батниковский файлик и запустить на машинке с Оутлуком - ничего не дало... ((
    Во-вторых - это VBS. В-третьих - вам нужен загружаемый профиль Exchange.prf.

    8 июля 2008 г. 15:36
  •  

    Stаnky

    У меня два вопроса по скрипту.

    1. Куда класть Exchange.prf. Я так понимаю он где-то на серваке должен лежать, чтоб к нему скрипт обращался?

    2. Exchange.prf должен быть такой?

     

    Code Snippet

    ;Automatically generated PRF file from the Microsoft Office Customization and Installation Wizard

    ; **************************************************************
    ; Section 1 - Profile Defaults
    ; **************************************************************

    [General]
    Custom=1
    DefaultProfile=Yes
    OverwriteProfile=Append
    ModifyDefaultProfileIfPresent=TRUE
    DefaultStore=Service1

    ; **************************************************************
    ; Section 2 - Services in Profile
    ; **************************************************************

    [Service List]
    ServiceX=Microsoft Outlook Client
    ServiceEGS=Exchange Global Section
    Service1=Microsoft Exchange Server
    ServiceEGS=Exchange Global Section

    ;***************************************************************
    ; Section 3 - List of internet accounts
    ;***************************************************************

    [Internet Account List]

    ;***************************************************************
    ; Section 4 - Default values for each service.
    ;***************************************************************

    [ServiceX]
    CachedExchangeMode=0x00000002
    CachedExchangeSlowDetect=TRUE

    [ServiceEGS]
    CachedExchangeConfigFlags=0x00000100
    MailboxName==%UserName%
    HomeServer=pdc.10a

    [Service1]
    OverwriteExistingService=Yes
    UniqueService=Yes
    MailboxName==%UserName%
    HomeServer=pdc.10a
    OfflineAddressBookPath=%USERPROFILE%\local settings\application data\microsoft\outlook\
    OfflineFolderPath=%USERPROFILE%\local settings\application data\microsoft\outlook\outlook.ost
    AccountName=Microsoft Exchange Server

    ;[ServiceX]
    ;FormDirectoryPage=
    ;-- The URL of Exchange Web Services Form Directory page used to create Web forms.
    ;WebServicesLocation=
    ;-- The URL of Exchange Web Services page used to display unknown forms.
    ;ComposeWithWebServices=
    ;-- Set to TRUE to use Exchange Web Services to compose forms.
    ;PromptWhenUsingWebServices=
    ;-- Set to TRUE to use Exchange Web Services to display unknown forms.
    ;OpenWithWebServices=
    ;-- Set to TRUE to prompt user before opening unknown forms when using Exchange Web Services.

     

     

    11 июля 2008 г. 11:39
  •  Nilfgardec написано:
    1. Куда класть Exchange.prf. Я так понимаю он где-то на серваке должен лежать, чтоб к нему скрипт обращался?
    Для универсальности я написал скрипт так, чтоб профиль лежал в той же папке, что и скрипт. То есть ...SYSVOL\sysvol\...\Policies\...\USER\Scripts\Logon.

     Nilfgardec написано:
    2. Exchange.prf должен быть такой?
    Я давал ссылку на обсуждение, где приведены и скрипт и часть профиля.

    11 июля 2008 г. 12:48
  • Stаnky

    Спасибо, скрипт здорово помог. Однако есть одна проблемка. У некоторых на работе почта в Outlook прописана внешняя типа ukr.net, mail.ru и так далее, у некоторых прописана почта нашего холдинга holding.ua.
    Как сделать в скрипте так, что бы почты с адресом holding.ua удалить, а остальные оставить (mail.ru, ukr.net)
    Просто Exchange станет вместо holding.ua, и будет отвечать за отправку писем как внутри компании, так и наружу... И хочется, чтоб учетки mail.ru, ukr.net и все подобные не пострадали.
    14 июля 2008 г. 10:18
  • Во-первых - внутри компании я совершенно не вижу смысла в бесплатных почтовых ящиках. Если это всё дань переходных процессов, рекомендую сделать Forwarding с этих ящиков на корпоративные.

     

    По существу:

    Сделать такой финт можно лишь непосредственной правкой реестра, либо созданием индивидуальных профилей.

    14 июля 2008 г. 10:31
  • Да... Переходные процессы + бесплатной почтой люди пользуются дома, ведь на почту холдинга мы даем доступ только изнутри...
    Ладно, а если пока отбросить вопрос о бесплатной почте и сконцентроироваться на проблеме со внутреней почтой.
    Сейчас у людей прописана сервак для почты (Для примера: holding.ua или 192.168.0.5)
    Запустив скрипт, без строчки с уничтожением всех профилей - я добавляю к учетке Exchange... Получатся две записи первая 192.168.0.5 и вторая Exchange.. теперь мне надо избавиться от той, которая была 192.168.0.5, но я хочу, чтоб все письма и контакты остались.
    14 июля 2008 г. 11:46
  •  Nilfgardec написано:
    Да... Переходные процессы + бесплатной почтой люди пользуются дома
    Вот дома пусть и пользуются...

     Nilfgardec написано:
    ведь на почту холдинга мы даем доступ только изнутри...
    Если нужен доступ из вне, у вас достаточное количиство варианто (OWA, RPC over HTTPS, Activesync).

     Nilfgardec написано:
    Получатся две записи первая 192.168.0.5 и вторая Exchange..
    Нет - у вас после запуска моего скрипта кроме Exchange'а ничего не останется.

     Nilfgardec написано:
    теперь мне надо избавиться от той, которая была 192.168.0.5, но я хочу, чтоб все письма и контакты остались.
    Если почта пользователей хранится локально, утешать вас особенно нечем. Вам в любом случае придётся делать импорт из PST-файлов в почтовые ящики. Другое дело, что когда они не централизованы процедура усложняется и затягивается.

    14 июля 2008 г. 12:33
  •  Stаnky написано:
     Nilfgardec написано:
    Получатся две записи первая 192.168.0.5 и вторая Exchange..
    Нет - у вас после запуска моего скрипта кроме Exchange'а ничего не останется.


    Нет. Я убрал строку, с удалением профайла и поцепил немножко другой Exchange.prf

    Хорошо, а если пойти другим путем? Можно ли поставить учетку Exchange, чтоб она использовалась по умолчанию? Тогда мне не придется удалять 192.168.0.5
    14 июля 2008 г. 13:00
  • Да можно всё что угодно. Вам необходимо это лишь реализовать.

    Как я понимаю, вы хотите, чтоб вся почта попадала на Exchange, а не в PST - поищите по форуму, где-то недавно пробегала данная тема. В любом случае, у вас всегда есть реестр.

    14 июля 2008 г. 13:23