|
一、 安装
简单一点,确保域控什么的都是Windows2003 SP1以上的。
注意,新安装要用一个顶级域的企业管理员身份登录再安装。
如果还有Exchange 2003, 需要运行PrepeareLegacyPermision,
简单的话就在Schema Master的site和domain里运行,一般是setup /PrepareLegacyPermission 会准备所有林中的域。 还要确保2003的organization是native模式的,打上最新的SP。 为了和2003或2007共存,部署的顺序是先安装client access再hub transport 再mailbox
然后prepare schema
在一台64位机器上,和schema master在同一个site里的。运行setup /PrepareSchema
(要调出schema 的MMC,别忘了先运行regsvr32 schmmgmt.dll)
然后准备AD: setup /PrepareAD /organizationName:OrgName 如果是新安装,还没有指定organization的就要那个第二个选项 OrganizationName。 这一步运行后本地domain已经被准备好了,也就是不要再PrepareDomain。
如还有其他的域或者后来又加了新的域,则setup /PrepareDomain 或者 setup /PrepareAllDomains
安装:在Windows2008 R2上面安装比较简单,如果是2008 SP2的就要下载安装 .NET framework 3.5, Power Shell 2.0 之类的东西。
2007 Office systemConverter MS Filterpack是安装hub transport必须的。
还有很多roles and features,根据exchagne角色不同也有不同。 用命令 servermanagercmd.exe -ip name.xml -restart 可以快速安装好这些东东, 所用的xml文件在安装盘s的cripts目录下。
如果是CAS,还要配置NET.TCP port sharing service 服务自动启动。
Set-Service -Name NetTcpPortSharing -StartupType Automatic
安装注意,你必须在每个site里都有mailbox hubtransport 和CAS,除非这个site没有邮件需求。 你必须是Organization Management Role组的用户才能安装。
安装命令 setup.com /mode:install /role:Mailbox, Hubtransport
安装完成后,还要配置OAB, 配置ActiveSync,配置收信的internet域等工作
常见端口: 25 135 80 443, 这些端口windows自身的防火墙在安装时已自动配置好。
验证日志:一般在C:\ExchangeSetupLogs\ExchangeSetup.log 或者用shell 命令:
Get-ExchangeServer -Identity VAN-EX1 | Format-List
二, 数据库和地址簿
Exchange 2010 已经摒弃了storage group的概念。 在2007 的时候推荐的是一个存储组方一个数据库,而现在已经没有存储组了。
数据库不再是附属于某一个服务器,而是直接在organization底下,整个组织内,数据库名必须唯一。
数据库文件 .edb ; checkpoint 文件 .chk ; 日志文件 .log ; 保留的日志文件.jrs 仅在空间不足时使用。
创建,然后加载
Mount-Database -Identity
Dismount-Database -Identity
标准版Exchange 2010 的数据库大小限制默认50GB,企业版不设限制。 可以在注册表里修改此限制。首先要知道GUID
Get-MailboxDatabase -Identity "<server name>\<database name>" | Format-Table Name,GUID
然后注册表 HKLM\System\CurrentControlSet \Services\MSExchangeIS\servername\Private-GUID, 创建或修改键值 Database> Public Folder是outlook 2003 需要的,如果安装服务器时未指明要创建,也可以手工创建。
New-PublicFolderDatabase 一个服务器最多只能有一个public folder DB
Global Adress List 和Offiline Address Book都是在mailbox Role上,由SA服务维护更新的。 默认会创建出来,并且OAB每天更新一次。
可以创建自定义的GAL 和 OAB。
OAB的更新也可以更换,EMC里选中OAB,然后选Move.
或者是 Move-OfflineAddressbook 命令
移动用户的邮箱,这个使用的shell命令和以前不一样,是
New-MoveREquest -Identity -TargetDatabase, 还可以使用-Whatif 这个开关检查邮箱是否准备好迁移。
import / export 到 PST 文件
这个和以前的2007 也有很大不同。
要求你有一台64位机器装了exchange 管理工具和outlook 2010 64 bit。 可以把.pst 文件输出到网络共享文件夹。 该共享文件夹必须给这个组 : “Exchagne TRusted Subsystem” 以读写权限。
给操作者导出导入权限:new-managementRoleAssignment -Role "Mailbox Import Export" -user "***"
导出: New-MailboxExportRequest -mailbox "***" -Filepath \\svr\path
批量导出: foreach ($i in (Get-Mailbox)) { New-MailboxExportRequest -Mailbox $i -FilePath "\\AZUA\Exports\$($i.Alias).pst" }
或创建一个csv名单,里面有Alias栏目,内容是各用户的邮箱alias。命令:
foreach ($i in (Import-Csv .\exports.csv)) { New-MailboxExportRequest -Mailbox $i.Alias -FilePath "\\AZUA\Exports\$($i.Alias).pst" }
导入: New-MailboxImportRequest
这些命令要安装了outlook 2010 以后才会可用。
Exchange 控制面板
这个在server configuration/client access/exchange control panel里设置属性。
客户端用浏览器访问,一般是https://servername/ecp
功能有设置自己的邮件规则,可以申请加入某个组,当然那个组要开放加入申请。
关于安装证书
你如果用域里面自己建立的CA创建一个证书,给exchagne安装上,可能会出现它说 他the certificate is invalid for exchange server usage. 这个是因为你没有把域里面CA的根证书导入到本机。 你要浏览到CA的certsrv页面,点击download a CA certificate certificate chain or CRL,如果是一个CA就直接下载ertificate,如果是经过中间CA颁发,就要下载整个chain。 然后在本机certificate mmc里面,把它导入trusted root Certification Authorities
三,Transport
Send Connector 默认不创建,Receive Conenctor默认会创建2个,都可以在organization/hub transport里创建。
Accepted Domain是exchange可以接受的邮件域名列表,也是可以以之为域名发送的邮件地址列表。
Email Address Policy
用于自动生成邮件地址,通常外部的邮件地址都不会是AD的域名,需要手工改,所以这个设置了很有用。
在EMC 里面 organization \Hub transport, Email Address Policies里面,可以修改默认的那个,也可以创建新的。 选择对哪些用户生效,怎样构成邮件地址,域名用什么。 完成后可以立即使用,也可以设置以后使用。 生效后,不光现有的用户会修改,以后新创建的或改动过的用户都会自动更新地址。
但注意,删除一个policy不会删除已经生成的邮件地址。
shell 命令 New-EmailAddressPlicy
如果只是为某一个用户增加地址,用:
Set-Mailbox sjohn@domain.com -EmailAddresses @{add=sjohn@northamerica.domain.com}
Update-EmailAddressPolicy, 用于更新
Edge Trasnport
安装前要确保以下组件已安装
.NET FrameWork 3.51
Remote System Administration Tools for Active Directory Directory Services
Active Directory Lightweight Directory Services
还有确保主机域名已配置好。
EdgeSync是单向的,从Hub导向Edge, 设置了EdgeSync Subscription后,某些操作在edge服务器上就不能做了,比如SendConnector AcceptedDoamin RomoteDomain等
防火墙上打开 25 和 50636
创建Sync方式先在Edge上运行,导出的文件拷贝到Hub,再在Hub上new一个Subcription,导入那些文件。
Clone Edge transport 服务器,这是为了有统一配置的外部服务器。
先在源服务器上ExportEdgeConfig.ps1, xml稍作修改,在目标机器上ImportEdgeConfig.ps1
EdgeSync配置还是要单独对每个做一遍。
传输队列的监控
可用命令 Get-Queue, 可以用Filter
Get-Queue -Filter{MessageCount -gt 50}
Get-Queue -Filter{NextDomain -eq "***"}
大括号里可用的参数类型有:
DileveryType Identity LastError LastRetryTime MessageCount NextHopConnector NextHopDomain NextRetryTime Statut
其他监控
Mailbox的状态
Diable-Mailbox 将邮箱置于disconnected状态(即无AD用户与之关联)
Conenct-MAilbox 将邮箱置于conencted状态(即有AD用户关联)
Clean-MailboxDatabase 扫描数据库,将状态未正确设置的邮箱修复正确设置。
可以用telnet 25 端口看邮件是否正常,但只能连接到配置了receive conenctor的transport服务器,receive设置是允许anonymous 或basic authentication
用telnet测试SMTP服务器方法:
telnet
set localecho 打开回显
open hostname/ip 25
收到欢迎消息, 键入 EHLO domainname
MAIL FROM:address
RCPT TO:address NOTIFY=success,failure
DATA
输入SUBJECT, 然后回车,huiche,输入内容
输入. 回车
关于日志
connectivity log 记录发送往外部的邮件连接事件,默认是关的
ptotocol log 记录SMTP 通讯,针对每个send/receive connector 单独设置,但是同一服务器上所有receive或send connector 共用同一个log 文件。
每个hub transport 上面都有一个默认的隐藏的intra organization send connector, 可以打开或关闭protocol log
Set-TransportServer –IntraOrgConnectorProtocolLoggingLevel Verbose 打开
Set-TransportServer –IntraOrgConnectorProtocolLoggingLevel None 关闭
对于其他的send/receive conenctor, 则是用
set-receiveconnector set-sendconnecotor 来设定 protocolLoggingLevel 参数。
默认ptotocol log日志文件路径
Receive connector protocol log files C:\Program Files\Microsoft\
Exchange Server\V14\TransportRoles\Logs\ProtocolLog\SmtpReceive
Send connector protocol log files C:\Program Files\Microsoft\Exchange
Server\V14TransportRoles\Logs\ProtocolLog\SmtpSend
可以修改路径
Set-TransportServer –Identity SVR-EX1 -ReceiveProtocolLogPath C:\ProtocolLogs\Receive
Set-TransportServer –Identity SVR-EX1 -SendProtocolLogPath C:\ProtocolLogs\Send
agent log 是反病毒反垃圾邮件软件写的log, 默认放在C:\Program Files\Microsoft\
Exchange Server\V14\TransportRoles\Logs\AgentLog. 默认在transport 服务器上是打开的。
Exchange store logging 又叫transaction logging, 是属于重做日志,以Enn名字加log后缀名,文件名的数字是16进制的。 每个文件都是1MB大小。 重做日志的circular logging默认是关的。
administrator audit logging, 记录每个运行过的EMS命令,什么时候谁运行的,带什么参数等。可以打开或关闭,用命令
Set-AdminAuditLogConfig -AdminAuditLogEnabled $True 或 $False
还要指定一个邮箱用于存储此日志
Set-AdminAuditLogConfig -AdminAuditLogMailbox adminname@domain.com
Routing Table Logging 日志定期或在某个特定事件时记录下此时的邮件路由表的快照。 默认路径是 C:\Program Files\Microsoft\Exchange Server\V14\TransportRoles\Logs\Routing 使用Routing Log Viewer图形工具来看。 默认日志是开的。
Event Log Level可以设,最低是lowest(只记录严重事件) low medium high 最高是expert(记录最详细)Set-EvetnLogLevel 可以对很多中对象设置日志详细级别。
Message TRacking Log 默认在所有transport和Mailbox服务器上打开 默认路径是C:\Program Files\Microsoft\Exchange Server\V14\TransportRoles\Logs\MessageTracking
默认是LOG里会记录邮件的标题,如果不想记录,用命令
Set-TransportServer –Identity VAN-EX2 -MessageTrackingLogSubjectLoggingEnabled $false 或$true记录标题。
Journaling Mailbox
如果要监控某些或所有邮箱的收发的邮件,可以用Journaling Mailbox。 需要创建一个用户和邮箱,创建一个规则 New-JournalRule 来监控。 具体看微软文档。
反垃圾邮件和病毒
在Edge transport上面,邮件要经过多个transport agent
Connection Filtering agent 主要是IP允许和组织列表
Address Rewriting Inbound agent
Edge Rule agent
Content Filter agent 给邮件内容评估打分,分越高越可能是垃圾邮件。
Sender> Sender Filter agent
Recipient Filter agent 阻止某些收件人
Protocol Analysis agent
Attachment Filtering agent 可以根据附件文件后缀名决定过滤
Address Rewriting Outbound agent
IP组织和允许,首先要让IPAllowListConfig和IPBlockListConfig的Enabled 选项都是true
然后可以加入允许/组织的ip段,或者天界一个IP列表的provider
Add-IPAllowListEntry Add-IPAllowListProvider Remove-IPAllowListProvider 等命令。
可以设置Block通知:
Set-IPBlockListProvider "Trey Block List Provider" -RejectionResponse "Your message was
rejected because the IP address of the server sending your message is in the block list
of the Trey Block List Provider service."
打开内容分析过滤
Set-ContentFilterConfig -Enabled $true 默认是开的
设置拒绝垃圾邮件的SCL评估值
Set-ContentFilterConfig -SCLDeleteEnabled $true -SCLDeleteThreshold 9
Set-ContentFilterConfig -SCLRejectEnabled $true -SCLRejectThreshold 7
Set-ContentFilterConfig -SCLQuarantineEnabled $true -SCLQuarantineThreshold 5
如果你指定了Reject值,那么也可以设置一个RejectionMEssage
如果指定了Quarantine,那么需要创建一个QuarantineMailboc并设置。
recipient filter设置要复杂一些,添加一个block地址要这样
$Listing = Get-RecipientFilterConfig
$Listing.BlockedRecipients += "abc@company.com"
Set-RecipientFilterConfig -BlockedRecipients $Listing.BlockedRecipients
sender filter 这个默认是打开的 Set-SenderFilterConfig -Enabled $true
senderFilterConfig的参数主要有 BlockedSenders, BlockedDomains, BlockedDomainsAndSubdomains
添加方法同上。
Set-SenderIDConfig 设置Sender> Set-SenderReputationConfig -Enabled $true 默认打开。
反病毒软件,Exchange服务器上安装此类软件要小心,有可能误报或锁定某些文件造成Exchange死锁。 与Exchange有关的一切文件夹必须列入不扫描的列表,相关进程要列入不扫描之列。
系统冗余
DAG是一组服务器组成的,最多16个服务器。 一个服务器只能属于一个DAG! 在organization里先定义好DAG再把服务器往里加。可以在EMC里 rganization configuration\Mailbox 或者用shell 创建DAG,
New-DatabaseAvailabilityGroup –Name DAG-ALPHA –DatabaseAvailabilityGroupIpAddresses
10.10.0.100 –WitnessServer 'ht.adatum.com' –WitnessDirectory 'c:\witness'
这里要用到一个witness server,这最好是一个hub transport并且上面没有mailbox role的服务器。 此服务器不属于任何DAG,一个witness服务器有可能监控多个DAG,但是每个必须有独立的witness 数据目录。
DAG成员服务器必须是enterprise 或 datacenter的,每个成员OS版本要一样,普通版windows不行,因为DAG用到了cluster的功能。DAG里有了成员之后,就可以添加MAilbox copy
可以用EMC加, organization oncifguration \ mailbox,选中数据库然后选择添加DB copy。
命令行: Add-MailboxDatabaseCopy –Identity 'ResearchMailDBta' –MailboxServer 'S-MBX02'
–ActivationPreference '2'
拷贝建立好以后,可以用Update方法让它和一个数据库拷贝 update或叫seed,获得数据库里的数据。
需要的时候可以把active拷贝转移到其他服务器上,这个时候有一个override mount dial setting
其中Lossless花时间长单保证没有丢失数据, Good Availability, Best Effort这个立即激活但可能丢失很多数据, Best Availibility
数据拷贝的复制过程可以暂停或继续,可以在EMC里,也可以命令:
Suspend-MailboxDatabaseCopy –Identity DB-ALPHA\VAN-MBX
Resume-MailboxDatabaseCopy –Identity DB-ALPHA\VAN-MBX
系统备份和恢复
用Windows自带的备份工具,可以备份系统状态和文件目录,如果Exchange服务运行,可以备份Exchange数据,如果没有运行只能作为文件备份。
RDB 是用来把数据临时恢复到一个数据库里,用来恢复部分内容,如误删的邮件或邮箱。
New-MailboxDatabase -Recovery -Name RecoverDB -Server S-W08-EX1 先要创建一个RDB
你可以把windows server backup的内容回复到一个目录,不是原始目录,然后用eseutil检查和修复,然后才new一个RDB,直接建在这个目录上,这样就有数据了。
RDB只能用于备份恢复2010格式的邮箱数据库。
Get-Mailbox -Database MyDatabase | Restore-Mailbox -RecoveryDatabase RecoverDB 此命令可以一个一个的把邮箱从RDB里面merge到原来的位置,即MyDatabase里面。 Resoter-Mailbox 加上identity 选项可以恢复merge单个邮箱。
把数据库转移到新的服务器上去:
先创建一个DB:
New-MailboxDatabase -Name MyNewDatabase -Server W08-EX2 -EdbFilePath
C:\Databases\MyNewDatabase\MyNewDatabase.edb -LogFolderPath C:\Databases\MyNewDatabase
设置可以restore
Set-MailboxDatabase MyNewDatabase -AllowFileRestore:$true
然后把edb和log文件都拷贝过去, 再mount
Mount-Database MyNewDatabase
把邮箱指向新的DB:
Get-Mailbox -Database MyOldDatabase | where {$_ObjectClass -NotMatch
'(SystemAttendantMailbox|ExOleDbSystemMailbox)'} | Set-Mailbox -Database MyNewDatabase
disconnect的邮箱默认在DB里面保持30天,这个可以通过查看maildB的 mailboxretention参数知道。 30天以内可以用EMC或EMS恢复邮箱。
恢复单个条目,这个在2007里叫dumpster。 删除的题目放在特殊目录里供恢复用。 |
|
|