跳到主要內容區塊

ntuccepaper2019

技術論壇

Exchange Mailbox Database及Log建立教學
  • 卷期:v0032
  • 出版日期:2015-03-20

作者:黃俊凱 / 臺灣大學計算機及資訊網路中心作業管理組幹事


計中所提供的多樣化資訊服務,需要各種不同的主機、網路硬體、作業系統與系統軟體來維運。近年來,無論是公司、企業或個人,對於資訊的要求已經不只限於好用,還要求兼顧資訊安全與個人資料的保護。透過電子稽核所留下的各項記錄能確認各項資安要求是否落實。建置與維運各種系統的稽核記錄是一件繁重的任務,以下我們以臺大目前提供教職員生電子郵件服務的Microsoft Exchange為例,說明如何以Windows PowerShell簡化稽核記錄的建置與設定。

 

使用Exchange所提供的Exchange Console建置Database及Log相當費時,改用PowerShell可以大幅減少系統管者的工作。
設定步驟如下:
1. 新增Database, Log,還有儲存路徑。
2. 裝載Database
3. 建立Database副本
4. 開啟、關閉log循環記錄
5. 設定離線通訊錄
6. 設定各Database quota容量

 

詳細設定之內容:

1. 新增database, log and save path,可以一次貼多行,或是採用for迴圈的PowerShell, eg,建置Mailbox1-2上面的Database name從MBOX1-2-01~MBOX1-2-30,database存放路徑在X:槽,database相對應的Log存放路徑為Z:槽。PowerShell如下:

for ($j=1; $j -le 30; $j++)
{
   $k = $j| % {"{0:0#}" -f $_}
   new-mailboxdatabase -Server MBOX1-2 -Name MBOX1-2-$k -EdbFilePath
X:\Mailbox\MBOX1-2-$k\MBOX1-2-$k.edb -LogFolderPath
Z:\Mailbox\MBOX1-2-$k
}

 

2. 裝載DataBase:建置完database及Log路徑後,要把真的database掛載起來。以下為Mailbox1-4上面所有Database掛載起來的PowerShell如下:

Get-MailboxDatabase -Identity MBOX1-4-* | Mount-Database

 

3. 建立所有Database的副本,以下為MailBox2-3上所有Database name開頭為MBOX2-3-X的副本皆抄一份在MailBox2-4上的PowerShell如下:

Get-MailboxDatabase -Identity MBOX2-3-* |Add-MailboxDatabaseCopy -MailboxServer 'MBOX2-4' -ActivationPreference '2'
如果失敗則要繼續裝載副本
for ($i=3; $i -le 4; $i++)
{
   for ($j=1; $j -le 30; $j++)
   {
      $k = $j| % {"{0:0#}" -f $_}
      Resume-MailboxDatabaseCopy -Identity MBOX2-$i-$k\MBOX2-4 -ReplicationOnly
   }
}

 

4. 設定Database開啟關閉log循環(一定要先建完副本,才能用循環log),如果沒有開啟循環Log,磁碟空間使用量會非常大。以下為設定Database name為MBOX1-X-Y的循環記錄開啟PowerShell如下:

for ($i=1; $i -le 2; $i++)
{
   for ($j=1; $j -le 30; $j++)
   {
      $k = $j| % {"{0:0#}" -f $_}
      Set-MailboxDatabase -Identity MBOX1-$i-$k -CircularLoggingEnabled $true
   }
}

 

5. 設定Database name是MBOX2-3-01~30 to MBOX2-6-01~30的offlineaddressbook離線通訊錄到Exchange CAS server: \ExchangeOAB-EXCHCAS1。PowerShell如下:

for ($i=3; $i -le 6; $i++)
{
   for ($j=1; $j -le 30; $j++)
   {
      $k = $j| % {"{0:0#}" -f $_}
      Set-MailboxDatabase -OfflineAddressBook '\ExchangeOAB-EXCHCAS1' -Identity "MBOX2-$i-$k"
   }
}

 

6. 設定Database name是 MBOX1-3-01~30 to MBOX1-4-01~30 容量quota。PowerShell如下:

for ($i=3; $i -le 4; $i++)
{
   for ($j=1; $j -le 30; $j++)
   {
      $k = $j| % {"{0:0#}" -f $_}
      Set-MailboxDatabase -Identity MBOX1-$i-$k -IssueWarningQuota
4831838208 -ProhibitSendQuota 5368709120 -ProhibitSendReceiveQuota 5368709120
   }
}

 

結語

目前最多使用的郵件系統為Google and Microsoft,使用Google的缺點在於資料必須都儲存在Google的伺服器上,恐怕會有個人資料外洩的疑慮。臺灣大學採用Microsoft Exchange系統,可以把主機、軟體皆存放在單位內部,可以減少資料被外部單位檢視的可能性。此篇教學為建置完Exchange Mailbox角色後,需如何做Database及Log的建置及設定教學,希望使用PowerShell command能簡化大家使用Exchange Console的時間及複雜度。