Share via


部署 Windows PowerShell Web 存取

 

適用於: Windows Server 2012, Windows Server 2012 R2

Windows PowerShell® Web 存取 最早是在 Windows Server® 2012 引進,可當作 Windows PowerShell 閘道使用,以提供目標為遠端電腦的網頁型 Windows PowerShell 主控台。 它可以讓 IT 專業人員從瀏覽器的 Windows PowerShell 主控台執行 Windows PowerShell 命令及指令碼,且用戶端裝置不需要 Windows PowerShell、遠端管理軟體或瀏覽器外掛程式安裝。 執行網頁型 Windows PowerShell 主控台只需要正確設定的 Windows PowerShell Web 存取閘道,以及支援 JavaScript® 並接受 Cookie 的用戶端裝置瀏覽器。

用戶端裝置的範例包含膝上型電腦、非工作用個人電腦、租借電腦、平板電腦、網路工作站、執行非 Windows 作業系統的電腦以及行動電話瀏覽器。 IT 專業人員能夠從可以存取網際網路連線的裝置及網頁瀏覽器,執行遠端 Windows 伺服器的重要管理工作。

成功安裝和設定閘道之後,使用者就可以使用網頁瀏覽器存取 Windows PowerShell 主控台。 當使用者開啟受保護的 Windows PowerShell Web 存取網站時,可以在成功驗證之後執行網頁型 Windows PowerShell 主控台。

安裝和設定 Windows PowerShell Web 存取時需要執行三個步驟:

  1. 安裝 Windows PowerShell Web 存取

  2. 設定閘道

  3. 設定允許使用者存取網頁型 Windows PowerShell主控台的授權規則

安裝和設定 Windows PowerShell Web 存取之前,建議您閱讀本整本指南,內容包含如何安裝、保護和解除安裝 Windows PowerShell Web 存取 相關指示。使用網頁型 Windows PowerShell 主控台 主題說明使用者如何登入網頁型主控台,並涵蓋了網頁型 Windows PowerShell主控台和 powershell.exe主控台之間的限制及差異。 網頁型主控台的一般使用者應該閱讀使用網頁型 Windows PowerShell 主控台,但無需閱讀本指南的其他章節。

本主題不提供深入的網頁伺服器 (IIS) 操作指南;只說明設定 Windows PowerShell Web 存取閘道所需的那些步驟。 如需設定和保護 IIS 網站安全的詳細資訊,請參閱<另請參閱>一節中的 IIS 文件資源。

下圖顯示 Windows PowerShell Web 存取的運作方式。

Windows PowerShell Web 存取圖

本主題內容:

  • 執行 Windows PowerShell Web 存取的需求

  • 瀏覽器及用戶端裝置支援

  • 建議 (快速) 部署

  • 自訂部署

  • 設定正版憑證

執行 Windows PowerShell Web 存取的需求

Windows PowerShell Web 存取 要求在您想要執行閘道的伺服器上執行網頁伺服器 (IIS)、.NET Framework 4.5 和 Windows PowerShell 3.0 或 Windows PowerShell 4.0。 您可以使用 伺服器管理員中的 新增角色及功能精靈,或適用於 伺服器管理員的 Windows PowerShell部署 Cmdlet,在執行 Windows Server 2012 R2 或 Windows Server 2012 的伺服器上安裝 Windows PowerShell Web 存取。 使用Windows PowerShell Web 存取或其部署 Cmdlet 安裝 伺服器管理員時,會在安裝處理程序期間自動新增必要的角色及功能。

Windows PowerShell Web 存取允許遠端使用者在瀏覽器使用 Windows PowerShell 來存取組織中的電腦。 雖然 Windows PowerShell Web 存取是一個方便且功能強大的管理工具,但網頁型存取有安全性風險,應該儘可能安全地設定。 建議設定 Windows PowerShell Web 存取閘道的系統管理員使用可用的安全性階層,包含 Windows PowerShell Web 存取所含的 Cmdlet 型授權規則,以及網頁伺服器 (IIS) 與協力廠商應用程式中可用的安全性階層。 這份文件含有只建議用於測試環境的不安全範例,以及建議用於安全部署的範例。

瀏覽器及用戶端裝置支援

Windows PowerShell Web 存取支援下列網際網路瀏覽器。 雖然行動瀏覽器並未正式支援,但很多應該都可以執行網頁型 Windows PowerShell 主控台。 其他接受 Cookie、執行 JavaScript 以及執行 HTTPS 網站的瀏覽器預期也可以運作,但尚未經過正式測試。

支援的桌上型電腦瀏覽器

  • 適用於 Microsoft Windows® 8.0、9.0、10.0 以及 11.0 的 Windows® Internet Explorer®

  • Mozilla Firefox® 10.0.2

  • 適用於 Windows 的 Google Chrome™ 17.0.963.56m

  • 適用於 Windows 的 Apple Safari® 5.1.2

  • 適用於 Mac OS® 的 Apple Safari 5.1.2

通過基本測試的行動裝置或瀏覽器

  • Windows Phone 7 及 7.5

  • Google Android WebKit 3.1 Browser Android 2.2.1 (Kernel 2.6)

  • 適用於 iPhone 作業系統 5.0.1 的 Apple Safari

  • 適用於 iPad 2 作業系統 5.0.1 的 Apple Safari

瀏覽器需求

若要使用 Windows PowerShell Web 存取網頁型主控台,瀏覽器必須執行下列各項。

  • 允許來自 Windows PowerShell Web 存取閘道網站的 Cookie。

  • 可以開啟和讀取 HTTPS 頁面。

  • 開啟和執行使用 JavaScript 的網站。

建議 (快速) 部署

您可以在執行 Windows Server 2012 R2 或 Windows Server 2012 的伺服器上安裝 Windows PowerShell Web 存取 閘道,方法是使用 Windows PowerShell Cmdlet,或使用從 伺服器管理員 中開啟的 新增角色及功能精靈。 如需快速安裝和組態,請使用 Windows PowerShell Cmdlet,如本節中所述。

  • 步驟 1:安裝 Windows PowerShell Web 存取

  • 步驟 2:設定閘道

  • 步驟 3:設定限制性授權規則

步驟 1:安裝 Windows PowerShell Web 存取

使用 Windows PowerShell Cmdlet 安裝 Windows PowerShell Web 存取

  1. 執行下列其中一項動作,使用提高的使用者權限來開啟一個 Windows PowerShell 工作階段。

    • 在 Windows 桌面上,用滑鼠右鍵按一下工作列上的 [Windows PowerShell],然後按一下 [以系統管理員身分執行]。

    • 在 Windows [開始] 畫面上,以滑鼠右鍵按一下 [Windows PowerShell],然後按一下 [以系統管理員身分執行]。

    System_CAPS_note注意事項

    在 Windows PowerShell 3.0 和 4.0 中,執行屬於模組的 Cmdlet 之前,不需要將伺服器管理員 Cmdlet 模組匯入 Windows PowerShell 工作階段中。 當您首次執行屬於模組的 Cmdlet 時,會自動匯入模組。 而且,Windows PowerShell Cmdlet 不區分大小寫。

  2. 輸入下列命令,然後按 Enter,其中 computer_name 代表要安裝 Windows PowerShell Web 存取的遠端電腦 (如果適用)。 如有需要,Restart 參數會自動重新啟動目的地伺服器。

    Install-WindowsFeature –Name WindowsPowerShellWebAccess -ComputerName <computer_name> -IncludeManagementTools -Restart
    
    System_CAPS_note注意事項

    根據預設,使用 Windows PowerShell Web 存取 Cmdlet 安裝 Windows PowerShell不會新增網頁伺服器 (IIS) 管理工具。 如果您想要在與 Windows PowerShell Web 存取閘道相同的伺服器上安裝管理工具,將 IncludeManagementTools 參數新增到安裝命令 (如本步驟所提供)。 如果您從遠端電腦管理 Windows PowerShell Web 存取網站,請在您要用來管理閘道的電腦上透過安裝 Windows 8.1 的遠端伺服器管理工具Windows 8 的遠端伺服器管理工具來安裝 [IIS 管理員] 嵌入式管理單元。

    若要在離線 VHD 安裝角色及功能,您必須新增 ComputerName 參數及 VHD 參數。ComputerName 參數包含要掛接 VHD 的伺服器名稱,VHD 參數則包含指定伺服器上的 VHD 檔案路徑。

    Install-WindowsFeature –Name WindowsPowerShellWebAccess –VHD <path> -ComputerName <computer_name> -IncludeManagementTools -Restart
    
  3. 完成安裝後,在使用提高的使用者權限開啟的 Windows PowerShell Web 存取 主控台中,確認已在目的地伺服器執行 Get-WindowsFeature Cmdlet,將 Windows PowerShell安裝在目的地伺服器上。 您也可以在 Windows PowerShell Web 存取主控台檢查是否已安裝 伺服器管理員,在 [所有伺服器] 頁面上選取目的地伺服器,然後檢視所選伺服器的 [角色和功能] 磚。 您也可以檢視 Windows PowerShell Web 存取的讀我檔案。

  4. 安裝 Windows PowerShell Web 存取之後,會提示您檢閱讀我檔案,其中包含閘道必要的基本安裝指示。 下一節 步驟 2:設定閘道 中也會有這些安裝指示。 讀我檔案的路徑是 C:\Windows\Web\PowerShellWebAccess\wwwroot\README.txt。

步驟 2:設定閘道

Install-PswaWebApplication Cmdlet 是快速設定 Windows PowerShell Web 存取的方法。 雖然您可以新增 UseTestCertificate 參數到 Install-PswaWebApplication Cmdlet 來安裝自我簽署的 SSL 憑證進行測試,但這並不安全;若要安全的生產環境,一定要使用由憑證授權單位 (CA) 簽署的有效 SSL 憑證。 系統管理員可以使用 IIS 管理員主控台以選擇的簽署憑證來取代測試憑證。

您可以執行 Windows PowerShell Web 存取 Cmdlet 或在 IIS 管理員中執行 GUI 設定步驟,來完成 Install-PswaWebApplication Web 應用程式設定。 根據預設,Cmdlet 會在 IIS 管理員顯示的 [預設的網站] 容器中,安裝 Web 應用程式 pswa (以及應用程式集區 pswa_pool);如有需要,可以指示 Cmdlet 變更 Web 應用程式的預設網站容器。 IIS 管理員提供 Web 應用程式可用的設定選項,例如變更連接埠號碼或安全通訊端層 (SSL) 憑證。

System_CAPS_security 安全性 注意事項

強烈建議系統管理員將閘道設定為使用 CA 簽署的有效憑證。

  • 使用 Install-PswaWebApplication 以測試憑證設定 Windows PowerShell Web 存取閘道

  • 使用 Install-PswaWebApplication 和 IIS 管理員以正版憑證設定 Windows PowerShell Web 存取閘道

使用 Install-PswaWebApplication 以測試憑證設定 Windows PowerShell Web 存取閘道

  1. 執行下列其中一項動作來開啟 Windows PowerShell 工作階段。

    • 在 Windows 桌面上,以滑鼠右鍵按一下工作列上的 [Windows PowerShell]。

    • 在 Windows [開始] 畫面上,按一下 [Windows PowerShell]。

  2. 輸入下列程式碼,然後按 Enter

    Install-PswaWebApplication -UseTestCertificate

    System_CAPS_security 安全性 注意事項

    UseTestCertificate 參數只能用在私人測試環境中。 若要安全的生產環境,建議使用 CA 簽署的有效憑證。

    執行這個 Cmdlet 會在 IIS 預設網站容器中安裝 Windows PowerShell Web 存取 Web 應用程式。 這個 Cmdlet 會建立在預設網站 (https://<server_name>/pswa) 執行 Windows PowerShell Web 存取所需的基礎結構。 若要在不同網站安裝 Web 應用程式,請新增 WebSiteName 參數以提供網站名稱。 若要變更 Web 應用程式的名稱 (預設是 pswa),請新增 WebApplicationName 參數。

    執行 Cmdlet 可以設定下列設定。 如有需要,可以在 IIS 管理員主控台手動變更這些設定。

    • Path: /pswa

    • ApplicationPool: pswa_pool

    • EnabledProtocols: http

    • PhysicalPath: %windir%/Web/PowerShellWebAccess/wwwroot

    **範例:**Install-PswaWebApplication –webApplicationName myWebApp –useTestCertificate

    在這個範例中,為 Windows PowerShell Web 存取產生的網站是 https://< server_name>/myWebApp。

    System_CAPS_note注意事項

    必須透過新增授權規則,讓使用者獲得網站存取權,才能進行登入。 如需詳細資訊,請參閱 步驟 3:設定限制性授權規則和 Windows PowerShell Web 存取的授權規則與安全性功能

使用 Install-PswaWebApplication 和 IIS 管理員以正版憑證設定 Windows PowerShell Web 存取閘道

  1. 執行下列其中一項動作來開啟 Windows PowerShell 工作階段。

    • 在 Windows 桌面上,以滑鼠右鍵按一下工作列上的 [Windows PowerShell]。

    • 在 Windows [開始] 畫面上,按一下 [Windows PowerShell]。

  2. 輸入下列程式碼,然後按 Enter

    Install-PswaWebApplication

    執行 Cmdlet 可以設定下列閘道設定。 如有需要,可以在 IIS 管理員主控台手動變更這些設定。 您也可以指定 WebsiteName Cmdlet 的 WebApplicationName 及 Install-PswaWebApplication 參數值。

    • Path: /pswa

    • ApplicationPool: pswa_pool

    • EnabledProtocols: http

    • PhysicalPath: %windir%/Web/PowerShellWebAccess/wwwroot

  3. 執行下列其中一項動作以開啟 IIS 管理員主控台。

    • 在 Windows 桌面上,按一下 Windows 工作列中的 [伺服器管理員] 啟動 伺服器管理員。 在 伺服器管理員中的 [工具] 功能表上,按一下 [Internet Information Services (IIS) 管理員]。

    • 在 Windows [開始] 畫面上,按一下 [伺服器管理員]。

  4. 在 [IIS 管理員] 樹狀目錄窗格中,展開安裝 Windows PowerShell Web 存取的伺服器節點,直到可以看到 [站台] 資料夾。 展開 [站台] 資料夾。

  5. 選取您已安裝 Windows PowerShell Web 存取 Web 應用程式的網站。 在 [動作] 窗格中,按一下 [繫結]。

  6. 在 [站台繫結] 對話方塊中,按一下 [新增]。

  7. 在 [新增站台繫結] 對話方塊中,在 [類型] 欄位中選取 [https]。

  8. 在 [SSL 憑證] 欄位中,從下拉式功能表中選取您的已簽署憑證。 按一下 [確定]。 如需如何取得憑證的詳細資訊,請參閱本主題中的在 IIS 管理員中設定 SSL 憑證。

    現在 Windows PowerShell Web 存取 Web 應用程式已設定為使用您的已簽署 SSL 憑證。 您可以透過在瀏覽器視窗中開啟 https://<server_name>/pswa 的方式來存取 Windows PowerShell Web 存取。

    System_CAPS_note注意事項

    必須透過新增授權規則,讓使用者獲得網站存取權,才能進行登入。 如需詳細資訊,請參閱 步驟 3:設定限制性授權規則和 Windows PowerShell Web 存取的授權規則與安全性功能

步驟 3:設定限制性授權規則

安裝 Windows PowerShell Web 存取並設定閘道之後,使用者可以在瀏覽器中開啟登入頁面,但是必須等到 Windows PowerShell Web 存取系統管理員明確授與使用者存取權之後,才能進行登入。 您可以使用下表所述的 Windows PowerShell Web 存取 Cmdlet 來管理 Windows PowerShell存取控制。 沒有適用於新增或管理授權規則的 GUI。 如需 Windows PowerShell Web 存取 Cmdlet 的詳細資訊,請參閱 Cmdlet 參考主題 Windows PowerShell Web 存取 Cmdlet

如需 Windows PowerShell Web 存取授權規則與安全性的詳細資訊,請參閱Windows PowerShell Web 存取的授權規則與安全性功能

新增限制性授權規則

  1. 執行下列其中一項動作,使用提高的使用者權限來開啟一個 Windows PowerShell 工作階段。

    • 在 Windows 桌面上,用滑鼠右鍵按一下工作列上的 [Windows PowerShell],然後按一下 [以系統管理員身分執行]。

    • 在 Windows [開始] 畫面上,以滑鼠右鍵按一下 [Windows PowerShell],然後按一下 [以系統管理員身分執行]。

  2. **使用工作階段設定限制使用者存取的選擇性步驟:**確定您要在規則中使用的工作階段設定已經存在。 如果尚未建立這些設定,請使用 MSDN 上 about_Session_Configuration_Files 的建立工作階段設定指示。

  3. 輸入下列程式碼,然後按 Enter

    Add-PswaAuthorizationRule –UserName <domain\user | computer\user> -ComputerName <computer_name> -ConfigurationName <session_configuration_name>
    

    這個授權規則允許特定使用者存取網路上他們通常有權存取的一部電腦,以及該使用者在一般編寫指令碼及 Cmdlet 範圍內的特定工作階段設定存取權。 在下列範例中,JSmith 網域中的使用者 Contoso 被授與管理電腦 Contoso_214 的存取權,並使用名為 NewAdminsOnly 的工作階段設定。

    Add-PswaAuthorizationRule –UserName Contoso\JSmith -ComputerName Contoso_214 -ConfigurationName NewAdminsOnly
    
  4. 確認已執行 Get-PswaAuthorizationRule Cmdlet 或 Test-PswaAuthorizationRule -UserName <domain\user | computer\user> -ComputerName <computer_name> 建立規則。 例如,Test-PswaAuthorizationRule –UserName Contoso\JSmith –ComputerName Contoso_214

設定授權規則之後,授權使用者就可以開始登入網頁型主控台,並開始使用 Windows PowerShell Web 存取。

自訂部署

您可以使用 伺服器管理員 中的 新增角色及功能精靈,在執行 Windows Server 2012 R2 或 Windows Server 2012 的伺服器上安裝 Windows PowerShell Web 存取閘道。 安裝 Windows PowerShell Web 存取 之後,您可以在 IIS 管理員中自訂閘道的組態。

步驟 1:安裝 Windows PowerShell Web 存取

使用新增角色及功能精靈安裝 Windows PowerShell Web 存取

  1. 如果伺服器管理員已經開啟,請移至下一個步驟。 如果尚未開啟伺服器管理員,請執行下列其中一項動作將它開啟。

    • 在 Windows 桌面上,按一下 Windows 工作列中的 [伺服器管理員] 啟動 伺服器管理員。

    • 在 Windows [開始] 畫面上,按一下 [伺服器管理員]。

  2. 在 [管理] 功能表上,按一下 [新增角色及功能]。

  3. 在 [選取安裝類型] 頁面上,選取 [角色型或功能型安裝]。 按 [下一步]。

  4. 在 [選取目的地伺服器] 頁面上,從伺服器集區選取一部伺服器,或者選取一個離線 VHD。 若要選取離線 VHD 做為目的地伺服器,請先選取要掛接 VHD 的伺服器,然後選取 VHD 檔案。 如需如何新增伺服器到伺服器集區的詳細資訊,請參閱伺服器管理員說明。 選取目的地伺服器之後,按 [下一步]。

  5. 在精靈的 [選取功能] 頁面上,展開 [Windows PowerShell],然後選取 [Windows PowerShell Web 存取]。

  6. 請注意,系統會提示您新增必要的功能,例如 .NET Framework 4.5 以及網頁伺服器 (IIS) 的角色服務。 新增必要的功能,然後繼續。

    System_CAPS_note注意事項

    使用Windows PowerShell Web 存取安裝 新增角色及功能精靈也會安裝網頁伺服器 (IIS),包括 IIS 管理員嵌入式管理單元。 如果您使用新增角色及功能精靈,預設會安裝嵌入式管理單元及其他 IIS 管理工具。 如果依下列程序使用 Windows PowerShell Web 存取 Cmdlet 安裝 Windows PowerShell,預設不會新增管理工具。

  7. 如果您在步驟 4 選取的目的地伺服器沒有安裝 Windows PowerShell Web 存取功能檔案,在 [確認安裝選項] 頁面上按一下 [指定替代來源路徑],然後提供功能檔案的路徑。 否則,按一下 [安裝]。

  8. 按一下 [安裝] 之後,[安裝進度] 頁面就會顯示安裝進度、結果以及訊息,例如警告、失敗或 Windows PowerShell Web 存取所需的後續安裝設定步驟。 安裝 Windows PowerShell Web 存取之後,會提示您檢閱讀我檔案,其中包含閘道必要的基本安裝指示。 本主題中也包含這些指示。 讀我檔案的路徑是 C:\Windows\Web\PowerShellWebAccess\wwwroot\README.txt。

步驟 2:設定閘道

本節中的指示適用於在網站的子目錄 (不是根目錄) 中安裝 Windows PowerShell Web 存取 Web 應用程式。 這個程序是等同於 Install-PswaWebApplication Cmdlet 所執行之動作的 GUI 動作。 本節還包含如何使用 IIS 管理員將 Windows PowerShell Web 存取閘道設定為根網站的指示。

  • 使用 IIS 管理員在現有的網站中設定閘道

  • 使用 IIS 管理員以測試憑證將閘道設定為根網站

使用 IIS 管理員在現有的網站中設定閘道

  1. 執行下列其中一項動作以開啟 IIS 管理員主控台。

    • 在 Windows 桌面上,按一下 Windows 工作列中的 [伺服器管理員] 啟動 伺服器管理員。 在 伺服器管理員中的 [工具] 功能表上,按一下 [Internet Information Services (IIS) 管理員]。

    • 在 Windows [開始] 畫面中,輸入 [Internet Information Services (IIS) 管理員] 名稱的任何一部分。 當捷徑出現在 [應用程式] 結果時,按一下該捷徑。

  2. 為 Windows PowerShell Web 存取建立新的應用程式集區。 在 [IIS 管理員] 樹狀目錄窗格中展開閘道伺服器的節點,選取 [應用程式集區],然後在 [動作] 窗格中按一下 [新增應用程式集區]。

  3. 新增名為 pswa_pool (或提供另一個名稱) 的應用程式集區。 按一下 [確定]。

  4. 在 [IIS 管理員] 樹狀目錄窗格中,展開安裝 Windows PowerShell Web 存取的伺服器節點,直到可以看到 [站台] 資料夾。 選取 [站台] 資料夾。

  5. 以滑鼠右鍵按一下您想要新增 Windows PowerShell Web 存取網站的網站 (例如 [預設的網站]),然後按一下 [新增應用程式]。

  6. 在 [別名] 欄位中輸入 pswa,或者提供另一個別名。 別名會成為虛擬目錄名稱。 例如,下列 URL 中的 pswa 代表在這個步驟中指定的別名:https://<server_name>/pswa。

  7. 在 [應用程式集區] 欄位中,選取您在步驟 3 建立的應用程式集區。

  8. 在 [實體路徑] 欄位中,瀏覽應用程式的位置。 您可以使用預設位置 %windir%/Web/PowerShellWebAccess/wwwroot。 按一下 [確定]。

  9. 請遵照本主題之在 IIS 管理員中設定 SSL 憑證程序中的步驟執行。

  10. **選擇性的安全性步驟:**在樹狀目錄窗格中選取網站後,按兩下 [內容] 窗格中的 [SSL 設定]。 選取 [需要 SSL],然後在 [動作] 窗格中,按一下 [套用]。 您也可以在 [SSL 設定] 窗格中,要求連線到 Windows PowerShell Web 存取網站的使用者必須擁有用戶端憑證。 用戶端憑證可協助確認用戶端裝置使用者的身份。 如需要求用戶端憑證如何增強 Windows PowerShell Web 存取安全性的詳細資訊,請參閱本指南中的Windows PowerShell Web 存取的授權規則與安全性功能

  11. 開啟用戶端裝置的瀏覽器工作階段。 如需支援的瀏覽器及裝置的詳細資訊,請參閱本主題的瀏覽器及用戶端裝置支援。

  12. 開啟新的 Windows PowerShell Web 存取網站 https://< gateway_server_name>/pswa。

    瀏覽器應該會顯示 Windows PowerShell Web 存取主控台登入頁面。

    System_CAPS_note注意事項

    必須透過新增授權規則,讓使用者獲得網站存取權,才能進行登入。

  13. 在使用提高的使用者權限 (以系統管理員身份執行) 開啟的 Windows PowerShell 工作階段中,執行下列指令碼,其中應用程式集區名稱代表您在步驟 3 建立的應用程式集區名稱,以便授與該應用程式集區授權檔案的存取權。

    $applicationPoolName = "<application_pool_name>"
    $authorizationFile = "C:\windows\web\powershellwebaccess\data\AuthorizationRules.xml"
    c:\windows\system32\icacls.exe $authorizationFile /grant ('"' + "IIS AppPool\$applicationPoolName" + '":R') > $null
    

    若要檢視授權檔案的現有存取權,請執行下列命令:

    c:\windows\system32\icacls.exe $authorizationFile
    

使用 IIS 管理員以測試憑證將閘道設定為根網站

  1. 執行下列其中一項動作以開啟 IIS 管理員主控台。

    • 在 Windows 桌面上,按一下 Windows 工作列中的 [伺服器管理員] 啟動 伺服器管理員。 在 伺服器管理員中的 [工具] 功能表上,按一下 [Internet Information Services (IIS) 管理員]。

    • 在 Windows [開始] 畫面中,輸入 [Internet Information Services (IIS) 管理員] 名稱的任何一部分。 當捷徑出現在 [應用程式] 結果時,按一下該捷徑。

  2. 在 [IIS 管理員] 樹狀目錄窗格中,展開安裝 Windows PowerShell Web 存取的伺服器節點,直到可以看到 [站台] 資料夾。 選取 [站台] 資料夾。

  3. 在 [動作] 窗格中,按一下 [新增站台]。

  4. 輸入網站的名稱,例如 [Windows PowerShell Web 存取]。

  5. 此時會自動為新網站建立應用程式集區。 若要使用不同的應用程式集區,請按一下 [選取] 以選取要與新網站關聯的應用程式集區。 在 [選取應用程式集區] 對話方塊中選取替代應用程式集區,然後按一下 [確定]。

  6. 在 [實體路徑] 文字方塊中,瀏覽到 %windir%/Web/PowerShellWebAccess/wwwroot。

  7. 在 [繫結] 區域的 [類型] 欄位中,選取 [https]。

  8. 為其他站台或應用程式尚未使用的網站指派連接埠號碼。 若要尋找開放的連接埠,可以在命令提示字元視窗執行 netstat 命令。 預設連接埠號碼為 443。

    如果另一個網站已經使用 443,或者有其他需要變更連接埠號碼的安全性原因,請變更預設連接埠。 如果在閘道伺服器上執行的另一個網站正在使用您選取的連接埠,當您在 [新增網站] 對話方塊中按一下 [確定] 時,就會顯示警告。 您必須使用未使用的連接埠來執行 Windows PowerShell Web 存取。

  9. 或者,如果組織有需要,可以指定對組織及使用者有意義的主機名稱,例如 www.contoso.com。 按一下 [確定]。

  10. 如需更安全的生產環境,強烈建議您提供 CA 簽署的有效憑證。 您必須提供一個 SSL 憑證,因為使用者只能透過 HTTPS 網站連線到 Windows PowerShell Web 存取。 如需如何取得憑證的詳細資訊,請參閱本主題中的在 IIS 管理員中設定 SSL 憑證。

  11. 按一下 [確定] 關閉 [新增網站] 對話方塊。

  12. 在使用提高的使用者權限 (以系統管理員身份執行) 開啟的 Windows PowerShell 工作階段中,執行下列指令碼,其中 application_pool_name 代表您在步驟 4 建立的應用程式集區名稱,以便授與該應用程式集區授權檔案的存取權。

    $applicationPoolName = "<application_pool_name>"
    $authorizationFile = "C:\windows\web\powershellwebaccess\data\AuthorizationRules.xml"
    c:\windows\system32\icacls.exe $authorizationFile /grant ('"' + "IIS AppPool\$applicationPoolName" + '":R') > $null
    

    若要檢視授權檔案的現有存取權,請執行下列命令:

    c:\windows\system32\icacls.exe $authorizationFile
    
  13. 在 [IIS 管理員] 樹狀目錄窗格中選取新網站後,在 [動作] 窗格中按一下 [啟動] 以啟動網站。

  14. 開啟用戶端裝置的瀏覽器工作階段。 如需支援的瀏覽器及裝置的詳細資訊,請參閱本文件的瀏覽器及用戶端裝置支援。

  15. 開啟新的 Windows PowerShell Web 存取網站。

    因為根網站指向 Windows PowerShell Web 存取資料夾,當您開啟 https://< gateway_server_name> 時,瀏覽器應該會顯示 Windows PowerShell Web 存取登入頁面。 您應該無需在 URL 加上 /pswa

    System_CAPS_note注意事項

    必須透過新增授權規則,讓使用者獲得網站存取權,才能進行登入。

步驟 3:設定限制性授權規則

安裝 Windows PowerShell Web 存取並設定閘道之後,使用者可以在瀏覽器中開啟登入頁面,但是必須等到 Windows PowerShell Web 存取系統管理員明確授與使用者存取權之後,才能進行登入。 您可以使用下表所述的 Windows PowerShell Web 存取 Cmdlet 來管理 Windows PowerShell存取控制。 沒有適用於新增或管理授權規則的 GUI。 如需 Windows PowerShell Web 存取 Cmdlet 的詳細資訊,請參閱 Cmdlet 參考主題 Windows PowerShell Web 存取 Cmdlet

如需 Windows PowerShell Web 存取授權規則與安全性的詳細資訊,請參閱Windows PowerShell Web 存取的授權規則與安全性功能

新增限制性授權規則

  1. 執行下列其中一項動作,使用提高的使用者權限來開啟一個 Windows PowerShell 工作階段。

    • 在 Windows 桌面上,用滑鼠右鍵按一下工作列上的 [Windows PowerShell],然後按一下 [以系統管理員身分執行]。

    • 在 Windows [開始] 畫面上,以滑鼠右鍵按一下 [Windows PowerShell],然後按一下 [以系統管理員身分執行]。

  2. **使用工作階段設定限制使用者存取的選擇性步驟:**確定您要在規則中使用的工作階段設定已經存在。 如果尚未建立這些設定,請使用 MSDN 上 about_Session_Configuration_Files 的建立工作階段設定指示。

  3. 輸入下列程式碼,然後按 Enter

    Add-PswaAuthorizationRule –UserName <domain\user | computer\user> -ComputerName <computer_name> -ConfigurationName <session_configuration_name>
    

    這個授權規則允許特定使用者存取網路上他們通常有權存取的一部電腦,以及該使用者在一般編寫指令碼及 Cmdlet 範圍內的特定工作階段設定存取權。 在下列範例中,JSmith 網域中的使用者 Contoso 被授與管理電腦 Contoso_214 的存取權,並使用名為 NewAdminsOnly 的工作階段設定。

    Add-PswaAuthorizationRule –UserName Contoso\JSmith -ComputerName Contoso_214 -ConfigurationName NewAdminsOnly
    
  4. 確認已執行 Get-PswaAuthorizationRule Cmdlet 或 Test-PswaAuthorizationRule -UserName <domain\user | computer\user> -ComputerName <computer_name> 建立規則。 例如,Test-PswaAuthorizationRule –UserName Contoso\JSmith –ComputerName Contoso_214

設定授權規則之後,授權使用者就可以開始登入網頁型主控台,並開始使用 Windows PowerShell Web 存取。

設定正版憑證

若要安全的生產環境,請一律使用由憑證授權單位 (CA) 簽署的有效 SSL 憑證。 本節中的程序說明如何從 CA 取得有效的 SSL 憑證並加以套用。

在 IIS 管理員中設定 SSL 憑證

  1. 在 [IIS 管理員] 樹狀目錄窗格中,選取安裝 Windows PowerShell Web 存取的伺服器。

  2. 在內容窗格中,按兩下 [伺服器憑證]。

  3. 在 [動作] 窗格中,執行下列其中一項。 如需在 IIS 中設定伺服器憑證的詳細資訊,請參閱在 IIS 7 中設定伺服器憑證

    • 按一下 [匯入],從網路上的位置匯入現有的有效憑證。

    • 按一下 [建立憑證要求],從 CA (例如 VeriSign™、Thawte 或 GeoTrust®) 要求憑證。 憑證的一般名稱必須符合要求中的主機標頭。 例如,如果用戶端瀏覽器要求 https://www.contoso.com/,則一般名稱也必須為 https://www.contoso.com/。 這是提供憑證給 Windows PowerShell Web 存取閘道最安全且最建議的選項。

    • 按一下 [建立自我簽署憑證],建立您可以立即使用的憑證,然後稍後視需要交由 CA 簽署。 為自我簽署的憑證指定好記名稱,例如 [Windows PowerShell Web 存取]。 這個選項並不安全,建議只用於私人測試環境。

  4. 建立或取得憑證之後,在 [IIS 管理員] 樹狀目錄窗格中選取要套用此憑證的網站 (例如 [預設的網站]),然後在 [動作] 窗格中按一下 [繫結]。

  5. 如果尚未顯示繫結,請在 [新增站台繫結] 對話方塊中,新增站台的 [https] 繫結。 如果您不是使用自我簽署的憑證,請指定這個程序步驟 3 所指定的主機名稱。 如果您使用的是自我簽署的憑證,就不需要這個步驟。

  6. 選取您在這個程序步驟 3 取得或建立的憑證,然後按一下 [確定]。

使用網頁型 Windows PowerShell 主控台

依本主題所述安裝 Windows PowerShell Web 存取並完成閘道設定之後,就可以使用 Windows PowerShell 網頁型主控台。 如需開始使用網頁型主控台的詳細資訊,請參閱使用網頁型 Windows PowerShell 主控台

請參閱

Internet Information Services (IIS) 7.0 文件
IIS 管理員 7.0 說明
設定網頁伺服器安全性 (IIS 7)
IPsec 部署資源