在得知微軟釋出了Lync for 移動裝置(windows phone,iphone,ipad,安卓)的軟體後,我迫不及待的在我的iphone及ipad上去下載下傳并安裝,總以為在現有的Lync架構下,輸入完帳号及密碼就可以順利的登入,但事實并非如此,測試了一晚也沒登入上。(因為在MS釋出該軟體前,我已經用過第三方的軟體xync,xync當時的那個版本唯一的不足就是不支援中文,而MS釋出的又是免費版本,有時間我在另一篇文章中詳細比較兩款軟體的差别)
後來查找了下資料,Lync for Mobility需要安裝更新檔及支援移動裝置的服務,同時Lync伺服器也必須再進行配置。以下為規則部署文檔下載下傳路徑:
http://www.microsoft.com/download/en/details.aspx?id=28355
通過該文檔的學習,在生産環境下我的Lync for ipad是可以在公司内部(或是撥vpn後)可以正常登入,通過Internet目前我還不能實作,目前還在測試....(經過測試已經可以通過Internet直接登入,包括移動的gprs網絡,詳細配置請看後面介紹,謝謝)
一.支援移動裝置的元件
這個是必須的,為了讓MS的Lync可以在移動裝置上登入,以下這些元件是必須的。
1.Microsoft Lync Server 2010 Mobility Service
這個提供Lync Mobility服務,是必須的。在移動裝置上提供即時消息,線上狀态,聯系人。該元件安裝在每個前端池内的所有前端伺服器上,安裝完後将在IIS上的内部及外部站點上建立新的虛拟目錄(MCX)
2.Microsoft Lync Server 2010 Autodiscover Service
可使移動裝置在公司内外網自動登入到Lync,而不需手動指定伺服器位址。該元件安裝在所有前端和Director伺服器上,安裝完成後将在IIS的内外站點建立新的虛拟目錄(Audodiscover)
3.Microsoft Lync Server 2010 Push Notification Service
可以為不支援背景運作lync的手機提供Push服務(Android及Nokia手機就不需要了,但一個公司的員工不會都隻用這兩款手機,是以很多企業還是會安裝該元件),可以看一下該元件的工作方式,

Mobility服務通過Edge伺服器将IM,missing Call事件(push notification)發送給APNS及MPNS服務再發送至各自的移動裝置,使用者接收到push notification後再激活Lync軟體。
是以這個需要和MS 的Lync Online建立聯盟。
為了部署Lync Mobility,支援的拓樸如下:
1.Lync Server 2010 企業及标準版
2.Edge Server 可以為Lync Server 2010及Communicator 2007 R2
以下為移動裝置通路Mobility及audodiscover服務的流程
從上圖可以看到,不管移動使用者在公司内還是外,移動裝置都是通過Reserse Proxy連接配接到IIS的外部站點Mobility服務,而Audiodiscover服務則區分開來了。
為支援移動裝置内外部通路,必須支援及滿足以下要求:
1. New DNS CNAME or A records, for automatic discovery
為Audodiscover服務建立DNS别名或主機名
· New ports for internal servers
· New firewall rule, if you want to support push notifications through your Wi-Fi network
· Subject alternative names on internal server certificates and reverse proxy certificates, for automatic discovery
新增證書SAN名字
· Front End Server hardware load balancer configuration changes for cookie-based persistence
如果前端伺服器采用硬體負載平衡,需要修改cookie-based persistence
· New web publishing rules on the reverse proxy, for automatic discovery
Reserse Proxy為autodiscover服務建立釋出規則
Website要求
· The Front End pool internal web FQDN must be distinct from the Front End pool external web FQDN.
前端池内外域名不一緻
· The internal web FQDN must only resolve to and be accessible from inside the corporate network.
内部FQDN隻能在公司内網被解析通路
· The external web FQDN must only resolve to and be accessible from the Internet.
外部FQDN隻能在Internet被解析和通路
· For a user who is outside the corporate network, the request must go to the external web FQDN of the Front End pool or Director.
使用者通過Internet通路時,必須能通路到前端池或Director的外部FQDN
在了解了一些基礎知識和要求後,我們接下去就來部署Lync Mobility服務。
一.為Autodiscover自動登入建立DNS記錄,以内部DNS記錄為例,我這邊建立的是别名:
内部别名為:lyncdiscoverinteranl.contoso.com 對應Lync的Internal Web Service FQDN(如果你不知道的話,可以查一下你的内部FQDN名),如下圖(截圖我就截我的測試環境啦,省的我去塗一點敏感資訊):
在這裡poolsh.contoso.com是内部web FQDN,lyncsh.contoso.com為外部web FQDN,是以我的内部DNS Autodiscover的别名如下:
那如果你的外部DNS也是Windows的話,autodiscover的别名記錄應為:
lyncdiscover.contoso.com --->lyncsh.contoso.com
(注:我的環境下沒有Director,及reserve proxy。看了下文檔建DNS别名記錄時,如果有Director内外DNS就指向Director,如果有reserve proxy那外部autodiscover就指向reserve proxy位址)
二.安裝Lync Server 2010累積更新
更新下載下傳路徑如下:
http://go.microsoft.com/fwlink/?LinkID=208564
可以隻下載下傳上圖紅框内的安裝包,将此安裝檔案拷到所有Lync角色上,建議存放在一個檔案夾内執行,并安裝。
安裝步驟:
1.打開Lync Power Shell,先停止lync服務。stop--CsWindowsService
2.關閉lync power shell,在dos指令中關閉web service。 net stop w3svc
3.執行LyncServerUpdateInstaller.exe
4.在提示重新開機後,重新啟動伺服器
5.重新開機伺服器後,打開Lync Power Shell,再次關閉lync 服務。Stop-CsWindowsService
6.将更新的變更應用傳遞到lync後端伺服器SQL DB.(以下指令為後端角色上隻有SQL,沒有合并Archiving或Monitoring角色)
Install-CsDatabase –Update –ConfiguredDatabases –SqlServerFqdn <SQL Server FQDN>
如果後端伺服器還有其他DB(角色)執行以下指令:
Install-CsDatabase –Update –ConfiguredDatabases –SqlServerFqdn <SQL Server FQDN> -ExcludeCollocatedStores
Lync标準版執行指令如下:
Install-CsDatabase –Update -LocalDatabases
7.重新開機Lync 服務。Start-CsWindowsService
三.在前端伺服器上為Mobility服務設定端口
1.為内部web Services設定端口
Set-CsWebServer –Identity <name of pool> –McxSipPrimaryListeningPort 5086
2.為外部web Services設定端口
Set-CsWebServer –Identity <name of pool> –McxSipExternalListeningPort 5087
以上所有<name of pool>的前端池的FQDN,如我的是lyncsh.contoso.com ,而不是下圖X那邊。
3.在上面兩個指令完成後,輸入以下指令完成。
Enable-CsTopology -verbose
四.安裝Mobility和Autodiscover服務元件
在執行此步驟前,必須完成了以上之前步驟,否則安裝将不成功。
1.安裝IIS元件
如果是Win2008 R2系統,在Powershell中執行如下指令:
Import-Module ServerManager
Add-WindowsFeature Web-Server, Web-Dyn-Compression
如果是Win2008系統,在Powershell中執行如下指令:
ServerManagerCMD.exe –Install Web-Dyn-Compression
同時更改ASP.NET設定(Win2008 R2系統不需要執行)
a.用記事本打開 applicationHost.config(C:\Windows\System32\inetsrv\config\applicationHost.config)
b.搜尋到<Add name="CSExtMcxAppPool"
c.在後面,同時在“>"前插入CLRConfigFile="C:\Program Files\Microsoft Lync Server 2010\Web Components\Mcx\Ext\Aspnet_mcx.config"
d.搜尋<Add name="CSIntMcxAppPool"
e.在後面,同時在">"前插入CLRConfigFile="C:\Program Files\Microsoft Lync Server 2010\Web Components\Mcx\Int\Aspnet_mcx.config"
f.儲存退出
2.下載下傳該元件的安裝包并安裝,路徑如下:
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=28356
a.複制McxStandalone.msi檔案至C:\ProgramData\Microsoft\Lync Server\Deployment\cache\4.0.7577.0\setup
b.打開Dos指令視窗并執行指令
C:\Program Files\Microsoft Lync Server 2010\Deployment\Bootstrapper.exe
c.如果你想禁止在公司内使用移動裝置,可以執行以下指令(但一般不會去執行吧)
Set-CsMcxConfiguration –ExposedWebUrl Internal (預設為External)
五.×××
由于對POWERSHELL不熟悉,是以沒有用文檔上的指令去做,而是通過Lync Server Depolyment Wizard方式重新去申請證書,同時新增了兩個SAN名,分别為
lyncdiscoverinternal.quantacn.com
lyncdiscover.quantacn.com
重新申請并ASSIGN證書後,現在我的前端上有以下SAN
重新開機Lync服務後,Lync Mobility已經配置完成。使用者可以在公司内網或是通過×××在外網可以登入到Lync。
忘了一點,Apple移動裝置需要安裝域的證書,請通過safari浏覽器登入到域的證書伺服器,選擇“下載下傳一個CA憑證,證書鍊或CRL",并下一步選擇安裝即可。在安裝中跳出時選擇信任此證書。
移動裝置外部登入設定,請看第二篇,這篇寫的太長了,無法儲存。新的内容複制到第二篇時也丢了,隻能重新寫了:(