Exchange server 2010 總結目錄
以後的文檔,如無特殊說明,都是根據第一篇的拓撲來進行的,我們已經建立好了Exchange Server 2010本次,我們來進行使用者郵箱的建立!
本節分為以下六部分:
→正常建立使用者郵箱
→powershell建立單個使用者郵箱
→powershell批量建立使用者郵箱
→powershell批量啟用使用者郵箱
→個别BUG說明并提供解決方案
→總結
一 正常使用者郵箱的建立
1, 由于正常建立郵箱方法很簡單,我們大概說下,打開EMC—收件人政策—郵箱,在空白處,右鍵建立郵箱
使用者郵箱:請看截圖中的解釋
會議室郵箱:是一個資源郵箱,在域中是被禁用的,隻是一種資源被調用的
裝置郵箱:同上
連結郵箱:比如收購了一家公司,對方還沒有郵箱,但有域環境,這個時候可以不再對方域裡搭建Exchange,可以通過連結郵箱,直接在本公司裡建立郵箱,但這個郵箱賬号是對方公司AD域裡的賬号,有機會在做測試!
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_13556448280tZN.jpg"></a>
2, 建立使用者或者現有使用者,一個是AD域裡還不存在這個賬号,在建立的時候可以同時建立AD賬号以及郵箱,一個是現有使用者,也就是說賬号必須已經存在AD資料庫裡,下一步,在使用者資訊裡
可以選擇使用者所在的OU,并可以勾選使用者下次登入是否要更改密碼
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355644838kNAl.png"></a>
3, 郵箱設定裡,如果有多個資料庫可以進行選擇,預設情況下,郵箱的組成是根據别名來的,可以更改,後期在講!完成後就已經建立立了一個使用者郵箱!
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_13556448521bIX.jpg"></a>
4, 說明一點需要注意的,選中tom可以看到一個禁用和删除,這一點我們要特别注意,禁用的意思就是取消tom的郵箱功能,删除的意思是從AD資料庫裡删除這個賬号以及郵箱,因為EMC和AD的管理功能進行了集合,是以操作的時候一定要謹慎!其他的屬性,後期在慢慢分類來講!
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355644854KEnr.png"></a>
5, 如果進行了禁用的操作,tom已經不能使用郵箱了,但賬号還在,我們需要進行重新的關聯,打開斷開連接配接的郵箱,選中tom進行連接配接
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_13556448598tZX.png"></a>
6, 選擇現有使用者,找到tom,并設定别名tom,下一步完成就可以找回tom的郵箱了,但如果是删除的操作,那麼就需要進行恢複了!是以謹慎行事!
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355644873zjNC.png"></a>
二 使用powershell建立使用者
1, 打開EMS,輸入以下代碼;
New-mailbox –name ‘bobo’ –alias ‘bobo’ –organizationalunit ‘cnmvp.net/mis’ –userparincipalname ‘[email protected]’ –samaccountname ‘bobo’ –firstname ‘’ –initials ‘’ –lastname ‘bobo’
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355644885eLmq.jpg"></a>
2,EMS提示需要有憑據,我們輸入bobo的密碼确定即可
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355644888ageK.jpg"></a>
三 使用powershell批量的建立使用者
說明:這種方式适合初期規劃的企業,一次性的把公司所有的賬号進行建立等!
1, 首先建立一個csv檔案,打開excel,按圖中的格式進行排版,完成後另存為addmailbox.csv格式的檔案
請注意,OU一欄,請首先在AD資料庫裡進行建立,并保持我們的設定值,也就是hr在cnmvp域名的下一級目錄
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355644895jqeJ.png"></a>
2, 打開EMS,輸入代碼
Import-CSV "C:\addmailbox.csv" | ForEach-Object -process {$Temp = ConvertTo-SecureString $_.Password -asPlainText -force;New-Mailbox -Name $_.Name -UserPrincipalName $_.UPN -OrganizationalUnit $_.OU -Database "Mailbox Database" -Password $Temp }
Import-CSV 指令讀取 Addmailbox.csv 檔案的内容。CSV 檔案的内容随後通過管道傳遞給 ForEach-Object 指令,後者執行一個腳本塊,為 CSV 檔案中列出的每個明細項目建立郵箱。腳本塊中的 ConvertTo-SecureString 指令将 CSV 檔案中的純文字密碼轉換為安全字元串,并将其存儲在臨時變量 $Temp 中。New-Mailbox 指令會建立郵箱,并使用 $Temp 變量建立新使用者的密碼。
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355644902V2wy.jpg"></a>
這裡需要需要特别注意,我查了很多的資料,網上流傳最廣的一個代碼是:
Import-CSV "C:\NewUsers.csv" | ForEach-Object -process {$Temp = ConvertTo-SecureString $_.Password -asPlainText -force;New-Mailbox -Name $_.Name -UserPrincipalName $_.UPN -OrganizationalUnit $_.OU -Database "Mailbox Database" -Password $Temp -TemplateInstance $Template}
差别就是藍色的參數,多次進行測試,根本就通不過,會報錯,如圖
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355644904DBN1.jpg"></a>
3, 傳回郵箱控制台,我們可以看到已經批量建立出來的郵箱,當然AD也一定有這個賬号
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355644909kEbE.jpg"></a>
4, 使用其中一個賬号登入測試,賬号9已經 可以登入郵箱
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355644912sW1G.jpg"></a>
四 powershell批量啟用使用者郵箱
說明:此方法适合那些後來增加了Exchange服務,但是已經有AD賬号了,需要批量進行啟用現有賬号的郵箱
1, 建立一個OU,并建立四個使用者,來模拟我們的環境
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355662345Mdyi.png"></a>
2, 打開EMS,使用以下參數進行啟用
Get-user –Organizationalunit mis | enable-mailbox
先擷取MIS這個Ou裡的所有使用者,然後擷取都的結果作為後面指令enable的一個條件!當然,如果有需要也可以擷取到全部的使用者,然後全部啟用!
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355662350gJnn.png"></a>
3, 使用Alice進行登入
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_13556449201MyY.jpg"></a>
五:BUG說明以及解決方案
說明:有些中文字元在powershell的支援好像不是很好,相信細心的朋友已經看到了,批量建立的時候顯示名是亂碼,這個還沒有找到相關修改的代碼,并且啟用MIS裡的使用者郵箱的時候,甜甜的alias名字時亂碼,在EMC裡顯示的是亂碼,在我們的實際生産環境中,以中文命名的幾率基本是100%,是以這也就造成了我們的一些不便!
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_13556621928MJR.jpg"></a>
針對啟用郵箱出現的亂罵我們有2種解決方法,第一種解決方法如下:
将下列内容copy到一個記事本中,并把這個檔案存為alias.ps1檔案
$list=Get-Mailbox
ForEach ($item in $list)
{
$user=Get-User $item
$sam=$user.SAMAccountName
Set-Mailbox $item –Alias "$sam"
}
注:$list=Get-Mailbox代表郵箱變量。
$item代表每個郵箱的屬性變量。
$sam=$user.SAMAccountName代表每個使用者的登入名變量
把alias.ps1檔案儲存到C槽目錄下。然後打開EMS輸入:c:\1.ps1
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_13556622002umQ.png"></a>
修複後的結果!
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355662208eNFG.jpg"></a>
第二種解決方法是:
function NewMailUser
Enable-Mailbox -Identity ($_.split(","))[0] -Alias ($_.split(","))[1]
gc alias.csv | foreach {NewMailUser}
其中“function”為整個腳本定義函數,“NewMailUser”為定義的函數
大括号中的為啟用郵箱Powershell 指令,“($_.split(","))[0]”代表調用CSV 文本檔案内編号為0 的
的列,分隔符為逗号
其中“Gc alias.csv”代表被調用的CSV 檔案(需要完整路徑)
管道符後的“foreach ”為批量執行函數“NewMailUser”直到CSV 檔案行尾
alias.csv的内容格式如下:
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355662211Opwf.png"></a>
第一行是顯示名,第二行是登入名,這裡的内容必須要求這些賬号已經在AD裡存在了!如果不存在那就屬于建立立了,我們這裡是要求啟用現有使用者的郵箱,而且沒有亂碼,請搞清楚我們的需求
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_1355662218Zi8g.png"></a>
<a href="http://itmydream.blog.51cto.com/attachment/201212/16/961933_13556622197h7J.png"></a>
但對于批量建立使用者郵箱的亂碼情況,還沒找到,大家可以補充一下:可以暫時的曲線解決!
2, 相信經過第一步,建好賬号後,如何啟用我們在第四步已經進行測試了,是以,大家隻需要跟着做就行!這裡也不過多的去解釋示範了!
3, 如果大家有更好的方法,請及時通知我,我會立即更改這篇文章!
六:總結
在這次測試過程中,我遇到了一個問題,就是那個參數TemplateInstance的問題,折騰了好久,經過多次的測試修改代碼,最終才确定了問題所在,但也浪費了我很久的時間,從這個事例中,我們應該清醒,網上上的資料不一定都适合,不是說沒有正确性,而是沒有針對性,提問者沒有交代自己的環境以及使用的版本,回答者或者文檔釋出者也沒有有針對性的進行回答注明,造成了一個版本的标準答案,在另外一個版本上就是不能生效,微軟的版本發展很快,可能這一版本還沒怎麼用,下一個版本就已經出來了,是以,不管是讀者還是作者,都擔負起那份心,那份責任!
在實際的操作中,明顯的感覺到powershell的高效,也發現了微軟多年的一成不變的習慣也開始慢慢的發生變化,由複雜變簡單,由一種方式變成了多種方式的操作,最大的感觸就是在GUI下,達成一個目标,相對之前的版本真的很友善,很省時!
IT之夢---你---我---他
2012年12月16日星期日
本文轉自 IT之夢 51CTO部落格,原文連結:http://blog.51cto.com/itmydream/1091344