2012-04-13 175 views
2

我想弄清楚我們將如何配置/設置身份驗證,隊列和隊列管理器,用於連接服務器/域上的MQ客戶端與MQ服務器完全獨立,它將轉發消息至。遠程MQ服務器身份驗證

我會假設在通常的組織環境中,您可以使用Active Directory(如果託管在Windows服務器上)進行身份驗證/ AD查找。然而,在這種情況下,因爲他們是不同的組織,你不能這樣做?

您能簡單地將SSL證書應用於客戶端/服務器並將其用作身份驗證嗎?如果是這樣,只適用於連接中使用的通道?

不知道如何繼續前進。

任何建議將不勝感激。

感謝,

小號

回答

2

看看在Hardening WebSphere MQ呈現爲V7.0和更早版本。要記住的是WMQ不認證任何東西。它授權基於操作系統身份和組,但沒有進行密碼檢查。

對於QMgrs和客戶端位於Windows網絡中的情況,連接使用SID,因此似乎執行了一些有用的身份驗證。但是如果嘗試從非Windows平臺進行連接,Windows QMgr會使用ID的字符串表示形式。例如,如果某人在桌面上安裝了Linux VM,則可以輕鬆創建名爲MUSR_MQADMIN的用戶標識,並且Windows QMgr將接受該連接。有一種設置可以使Windows QMgr只接受與SIDS可以解決的連接,但即使在那裏它也只是知道SID值在連接上欺騙它們的問題。

這裏的教訓是,任何 QMgr,即使是Windows上的一個,都必須配置爲驗證遠程連接。使用WMQ v7.1及更高版本,QMgr具有將X.509證書DN映射到用戶ID或執行IP篩選的功能。在v7.1之前,這些功能需要退出,例如BlockIP2。 Capitalware銷售MQAUSX,它具有BlockIP2的功能,並且會執行身份驗證和密碼驗證並且受支持。

第一個建議是使用v7.1 QMgr,以便獲得用於映射和過濾的CHLAUTH規則。即使您不使用證書v7.1也會限制管理連接,因此攻擊者難以獲得完全的管理權限。然後,如果您需要密碼驗證,請使用SSL通道(加密密碼並防止簡單重播攻擊)以及可以自行編寫或購買的退出。

請注意,允許來自域外的連接不會帶來任何新的挑戰。在通道定義或退出中未設置MCAUSER的v7.1之前的Windows QMgr允許遠程管理訪問,即使是源自本地Windows域的連接也是如此。有總是需要強化QMgr,即使誠實的用戶在管理員沒有爲他們設置認證時也會收到授權錯誤。

摘要:
始發管理域之外的客戶,我建議相互驗證TLS/SSL通道。我上面鏈接的同一頁面還包含WMQ安全實驗指南和腳本,其中介紹瞭如何創建和交換WMQ證書以及如何配置WMQ資源管理器。

無論您做什麼,任何合法渠道上的MCAUSER都必須在配置中或通過退出進行設置。如果客戶端被允許指定ID,則沒有什麼可以阻止它指定管理ID。對於未使用的通道,如SYSTEM.DEF.*SYSTEM.AUTO.*,請將MCAUSER設置爲不能爲本地ID的值,例如no!body或v7.1及更高版本*NOACCESS

+0

一如既往,您的回答無價。謝謝T.Rob。如果我有進一步的問題,我會創建一個新的SO請求 – scarpacci 2012-04-13 21:37:37