Office365 マネジメントPowerShellへのつなげ方

Office365の管理を行っていると、最初のうちはブラウザを立ち上げて、管理センターに入り、各種アプリの管理を実施するという流れがあるかと思います。

最初はそれでも問題なく対応できることが多いのですが、だんだんとタスクが増えてきて、自動化していきたいな。と思うことが山ほど出てきて、PowerShellをやってみようというケースに出くわすのではないでしょうか。

そんなケースに対応してか、PowerShellの利用に関するトピックが出来上がっていました。

https://docs.microsoft.com/ja-jp/office365/enterprise/powershell/connect-to-all-office-365-services-in-a-single-windows-powershell-window

要約すると、Shell SDKをいれておくことで、様々なセッションを一つの画面で共有できるというような内容です。SharePoint、Exchange、Skype、AzureADと主要なアプリに接続するためのコマンドが記されていますので一読するとよいかと思います。

上記URLではSDKはダウンロードする方法で書かれているのですが、そのほかにInstall-Moduleコマンドレットを用いて接続するという方法もあります。
以下画面はInstall-Moduleを利用してSharePointSDKをインストールした画面です。

NuGetを用いてShell上からダウンロードする手法ですね。

f:id:mohessu:20190405013546p:plain

NuGetを用いると、上記URLに記載されていないTeamsのSDKも以下URLから入手することができたりします。残念ながらSkype for BusinessについてはNuGetでは準備がないようですね。。。

https://www.powershellgallery.com/packages/MicrosoftTeams/

ちなみに各種コマンドを以下にまとめてみました。

【事前コマンド】

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

【インストール】

Install-Module -Name MSOnline
Install-Module -Name Microsoft.Online.SharePoint.PowerShell
Install-Module -Name ExchangeOnlineShell
Install-Module -Name MicrosoftTeams

【インポート】

Import-Module MSOnline
Import-Module Microsoft.Online.SharePoint.PowerShell
Import-Module ExchangeOnlineShell
Import-Module -Name MicrosoftTeams

【接続(ADAL認証)】

Connect-MsolService
Connect-SPOService
Connect-ExchangeOnlineShell
Connect-MicrosoftTeams

是非一度コマンドを実行してみて下さい。
簡単に管理Shellへアクセスできることがわかるかと思います。

音楽:Skip

Office365 Teamsに情報障壁という機能が追加されるようです

Teamsにあたらな機能が追加されるようです。
セキュリティ関連の機能となり、指定したユーザー間での情報共有を禁止するためのものとなります。その名も情報障壁!

情報障壁というと耳慣れしない感じがとても強いですが、英字ではInformation Barriersということで情報にバリアを付けるという感じですね。確かに日本語訳すると情報障壁、、、

https://docs.microsoft.com/en-us/MicrosoftTeams/information-barriers-in-teams

この機能はユーザーの追加やチャットのリクエスト、会議などを制限することができます。

なんでも、金融業界ではこういった制限が重要となるケースがあるようです。

監査部門の情報が被監査部門に流れないようにするなどの措置を講ずることができるという感じでしょうか。

 

この機能を利用するには大きく2つ設定が必要となるようです。

1つはユーザーの検索ポリシーの有効化、もう1つは情報障壁機能の有効化です。

検索ポリシーはExchangeのアドレス帳ポリシーを利用するので、Exchange側を設定しておく必要があります。
そのうえで、Teamsの管理センターにある組織全体の設定 - Teamsの設定から名前で検索の設定項目をオンにします。

f:id:mohessu:20190511114242p:plain

もう1つの設定は、Formsを利用した利用申請ですね。
以下のURLより申請可能です。

https://forms.office.com/Pages/ResponsePage.aspx?id=v4j5cvGGr0GRqy180BHbR1UzUQTEgHVPtD9W5uih2OlUMEwwUzhJSktIMUw2SDJJOE5FT1lTVzVTSS4u

いくつか利用条件があり、それをクリアした場合のみ利用可能となります。
残念ながら50ユーザー以上のテナントが必要となるようで、私の環境では対象外でした。

f:id:mohessu:20190511103518p:plain

もともとTeamsでは組織のほかユーザーとのコミュニケーションを促進するための機能ですが、こういった逆転したことも重要となるんですね。
あまり意識することがなかったので、この考え方は覚えておきたいところです。

音楽:player

Windows10 プロキシ設定のファイルの動作について

最近のモダンブラウザには、ブラウジングに使う経路を自動的に変更する、Proxy Auto Configという機能を備えています。これを設定するファイルを通称PACファイルというのですが、Javascriptの実装で作られています。

このPACファイルの作成には、デバッグとしてAlertメソッドを利用して変数設定の値があっているかの確認し、PACファイルを完成させていくのが普通でした。

でした。というのは、最近のWindows10ではいつの間にかデバッグ用のAlertメソッドが利用できなくなっており、エラーを出力するようになったようです。

動作の確認に非常に苦労したので、備忘録としてPACの動作を記しておきたいと思います。
まず、PACを動作させるためにはWebサーバー上にPACファイルを配置する必要があります。Windows10にはIISを簡単にインストールできるので、それを利用して動作確認を行いました。

・alertメソッドは使えない。

この調査の原因となったalertメソッドの動作です。
おそらく内部でExceptionが発生するようになったと思われ、このメソッドの後のコードは動作しない様でした。

以下の形式のPACファイルを少しずつ改変して動作を確認していきました。

returnはDIRECTで直接接続、PROXY localhost:9999はダミーで、うまくつながらないようにするために指定しています。

f:id:mohessu:20190510002732p:plain

・toLowerCase、toUpperCaseメソッドは利用可能
この後の確認にも出てくるのですが、PACは基本Javascriptの文字列比較となるため、大文字小文字を判断します。必要に応じてtoLowerCase、toUpperCaseを利用して大文字小文字で動作が変わらないようにしておきましょう。

f:id:mohessu:20190510003652p:plain

上記PACを利用し以下URLにアクセスすると画面は表示できました。(画像は別のHostにあるので表示されていません。)

https://www.microsoft.com/ja-jp

f:id:mohessu:20190510003046p:plain

・大文字が入ったリテラルがあるとヒットしなくなる

これはブラウザの問題なのか、PACの問題なのか判断つかなかったのですが、アドレス欄に入力したURLは小文字に変換され評価されるようです。
アドレス欄に以下のように大文字を含めて動作確認してみましたが、小文字で評価されているようでした。

https://www.Microsoft.com/

f:id:mohessu:20190510003736p:plain

f:id:mohessu:20190510003806p:plain

・ポートを指定しない場合、ポート設定は評価対象外となる

ポートを設定していないアドレスをurlの比較対象にした場合、ポートが入ったURLでアクセスしても成功しました。

f:id:mohessu:20190510004227p:plain

アクセスしたアドレスは以下の形です。

最後の/が評価されていない可能性がありますね。

http://veiw-localhost.com:8111/

f:id:mohessu:20190510004236p:plain

・ポートを含めた評価を行うと、ポート番号なしは一致しないものとして評価される

ポート番号を含んだ比較対象とを指定しておくと、ポート番号が一致しないケースではアクセスできませんでした。 

f:id:mohessu:20190510004624p:plain

当然といえば当然ですが、文字列が一致しないからですね。

f:id:mohessu:20190510004721p:plain

パターン網羅にはなっていないのですが、この内容を理解するだけでもある程度のPACファイルを作成できるかと思います。

このほかのケースや使えるメソッドを研究し、最適なPACファイルを検討してみてください。

音楽:fugl

Windows Server 2019 WSUSレポートビューワーのインストール

WSUSのインストールは前回までに実施しました。

http://mitomoha.hatenablog.com/entry/2019/05/07/004414

 

が、実はこれだけではレポートの表示が行えません。

f:id:mohessu:20190506002200p:plain

WSUSを利用する上では必須ではないのですが、インストール状況などを確認することができるため、できれば入れておくのが良いでしょう。

まずは以下2つのファイルをダウンロードします。

Microsoft System CLR Types for Microsoft SQL Server 2012】

https://www.microsoft.com/ja-jp/download/details.aspx?id=29065

気を付けてほしいのが、ダウンロードボタンを押すだけではtxtファイルのみダウンロードされます。インストールの方法と記された場所を開き、下部にあるMicrosoft System CLR Types for Microsoft SQL Server 2012(X64パッケージ)を選択、ダウンロードします。

f:id:mohessu:20190505223533p:plain

ここですね。 

f:id:mohessu:20190505224055p:plain

 

Microsoft Report Viewer 2012 Runtime】

https://www.microsoft.com/ja-JP/download/details.aspx?id=35747

こちらはそのままダウンロードボタンで問題ありません。

f:id:mohessu:20190505223434p:plain

2つ合わせて10MB程度です。

サーバーからダウンロードすると面倒なので、別クライアントでダウンロードし、コピーしておくとよいでしょう。 

f:id:mohessu:20190505224859p:plain

まず、SQLSysClrTypesからインストールしていきます。

f:id:mohessu:20190506133819p:plain

許諾を読み、問題がなければ次へ進みましょう。

f:id:mohessu:20190506133837p:plain

インストールを押下するとUACの確認後にインストールが開始されます。

f:id:mohessu:20190506133855p:plain

1分程度でしょうか、すぐにインストールが完了します。

f:id:mohessu:20190506134021p:plain

続いてReportViewerをインストールします。

f:id:mohessu:20190506134103p:plain

こちらも許諾を読み、問題がなければ次へ進みましょう。

f:id:mohessu:20190506134208p:plain

インストールを押下するとUACの確認後にインストールが開始されます。

f:id:mohessu:20190506134237p:plain

こちらは少し長く、2分程度でインストールが完了します。

f:id:mohessu:20190506134411p:plain

WSUSの管理コンソールを再起動すると、各種レポートが表示できるようになります。

f:id:mohessu:20190506135356p:plain

音楽:ケイヤクシャ

Windows10 Chromium版EdgeにIEモードの設定がありました

現在シアトルでBuild2019が開幕しており、その中で、Chromium版EdgeにIEモードが搭載される旨がアナウンスされました。

そこで、先日確認していたedge://flagsの中に該当する項目がないか探してみました。

確認してみたところ、なんと項目はすでに追加されていました。

項目名はEnable IE Integrationとなるようです。

f:id:mohessu:20190508005736p:plain

この項目を有効化してブラウザを再起動したところ、More toolsの項にShow this page using Internet Explorerという項目が追加されるようになりました。

f:id:mohessu:20190508012918p:plain

ページを表示しながらこのボタンを押してみたところ、残念ながらまだ動作はしないようで、Can’t open this pageと表示されてしまいました。 

f:id:mohessu:20190508012931p:plain

また、再起動後にはこのチェック状態も保持されないようで、同じページを開くと、今度は普通に開くことができるようになりました。

ただ、この動きを見ているとタブの中にIEが埋め込まれるタイプの動作となりそうですね。
ChromeにはIE tabというサードパーティー製の拡張機能がありますが、それと同じような動作をするということでしょう。使い勝手はかなり良いのではないかと思われます。

発表もされたということで、リリースも間近なのではないかと推測されますが、こういった便利機能もよいですね。

音楽:gonna rice

Windows10 管理テンプレートの適用について

前回のWSUS設定では設定の概要をお伝えしましたが、実際にWSUSを利用できるようにするためには、Active Directoryのグループポリシーを利用してWindows10の設定を変更する必要があります。

これは、Windows Server 2019を持っていても最新状態のポリシーは利用することができず、Windows10用のポリシーセットとなる管理テンプレートをダウンロードしてActive Directoryに適用する必要があります。

今回はその適用方法を解説したいと思います。

まずは以下サイトから利用したい管理テンプレートを選びダウンロードを進めていきます。

https://support.microsoft.com/ja-jp/help/3087759/how-to-create-and-manage-the-central-store-for-group-policy-administra

f:id:mohessu:20190505000431p:plain

今回は最新の1809を使っていきたいと思います。
直接のダウンロードは以下ですね。

https://www.microsoft.com/en-us/download/details.aspx?id=57576

ダウンロードの言語はEnglishとなっていますが、ファイルには日本語の言語セットも入っているので安心です。

f:id:mohessu:20190504002806p:plain

ダウンロードしたファイルはセットアップファイルなのでインストールが必要となります。ダウンロードしたファイルを実行していきましょう。こうすることで、ファイルに電子署名を付けることができ、マイクロソフトが配布したという確実性を作れるのでしょうね。

f:id:mohessu:20190504002648p:plain

インストールはNextを押していくだけです。
インストールまでは5分もかからないかと思います。

f:id:mohessu:20190504002710p:plain

インストール自体は簡単なのですが、ライセンスはちゃんと読みましょう。
問題がなければI Agreeを選択してNextを押していきましょう。 

f:id:mohessu:20190504002830p:plain

この後はファイルをコピーするので、インストール先は忘れないようにしましょう。
初期状態では 32bit側のProgram FilesのMicrosoft Group Policy内に入ります。

f:id:mohessu:20190504002851p:plain

最後に確認が入りインストールを進めていきます。 

f:id:mohessu:20190504002907p:plain

3分程度でインストールが完了します。
Closeを押して完了しましょう。

f:id:mohessu:20190504003014p:plain

ここからは管理テンプレートをコピーしていきます。

標準のインストールは以下ですが、エクスプローラーで表示させておきましょう。

C:\Program Files (x86)\Microsoft Group Policy

f:id:mohessu:20190504003152p:plain

更に開いていくとポリシーファイルと言語設定(各フォルダに言語設定が入っています)が見えます。
必要な言語とすべてのポリシーファイルを選択してコピーしておきましょう。

f:id:mohessu:20190504003751p:plain

コピーしたファイルはActive DirectoryのSysvol領域に格納する必要があります。

Sysvol内のドメインPoliciesにPolicyDefinitionsを作成し、その中に先ほどのファイルを格納していきます。
すでにフォルダがある場合は同一内容を重ねないように注意しながら配置しましょう。

f:id:mohessu:20190504003637p:plain

ファイル数は数百個に上りますが、サイズはそうでもないのでそんなに時間はかかりません。 

f:id:mohessu:20190504003822p:plain

これで事前準備が完了です。 

続いてWindows管理ツール内のグループ ポリシーの管理を起動します。

f:id:mohessu:20190504004211p:plain

ここではポリシーとOUを紐づけるのですが、ポリシーを選び右クリックして編集を行います。 

f:id:mohessu:20190504004514p:plain

ポリシーは管理テンプレート内に展開されます。
例えばですが、Windows Updateを探して開いていくと、以下のようにWindows Updateに対するスキャンを発生させる更新遅延ポリシー~が入っていれば1809版が入っていることがわかります。

f:id:mohessu:20190504014317p:plain

WSUSを有効化させるには、自動更新を構成する、イントラネットMicrosoft更新サービスの場所を指定するを有効にしておく必要があります。

後者にはURLを入力する欄がありますので、WSUSサービスの場所を指定しましょう。
(初期値では、httpのポート8530となっています。)

f:id:mohessu:20190504014409p:plain

基本はこれだけでよいのですが、Windows Updateに対するスキャンを発生させる更新遅延ポリシー~も有効にしておきましょう。
デュアルスキャンを防止することができます。(Windows Update for Businessの設定とWSUSの設定を同時に設定できなくなりますが、設定の意図を取り違えるケースが多かったのでしょうね。)

f:id:mohessu:20190504004111p:plain

これは単純に有効化するだけです。

f:id:mohessu:20190504014441p:plain

Defaultを変更すれば全体に、特定OUに設定したければ個別にポリシーを作って設定しましょう。
設定後はクライアント側を再起動すればポリシーが適用されたことが確認できます。

f:id:mohessu:20190504004752p:plain

Windows Updateに対するスキャンを発生させる更新遅延ポリシー~を有効にして再起動すると、再起動後は表示されるオプションが変わっていることがわかります。

f:id:mohessu:20190504015400p:plain

ちなみに設定アプリのWindows Updateでは適用されたポリシーが何なのかを確認することも可能です。

f:id:mohessu:20190504015622p:plain

うまくこの管理テンプレートを利用して、Windows Updateを安全に適用していきたいですね。

音楽:オベリスク

Windows Server 2019 WSUSの設定を行ってみました

前回Windows Server 2019にWSUSを導入してみましたが、今回はその設定を行っていければと思います。
http://mitomoha.hatenablog.com/entry/2019/05/04/015856

まずはWindows管理ツールの中にあるWindows Server Update Servicesを起動します。f:id:mohessu:20190502232313p:plain

すると設定ウィザードになります。

ここでは、プロキシなどの初期設定を行っていきます。

f:id:mohessu:20190502233127p:plain

最初は品質向上プログラムへの参加を聞かれます。
会社によっては設定を行うことを嫌うケースを見かけますが、できれば協力していってください。
最近のマイクロソフトはこういった一次情報を重要視してくれているので、発生した問題などうまく拾い上げてくれるのではないかと思います。

f:id:mohessu:20190502233145p:plain

次に同期元サーバーの選択です。
1台目のWSUSはMicrosoft Updateからの同期を選択、2台目以降はネットワーク環境により別のWSUSからの同期も選択可能です。

f:id:mohessu:20190502233253p:plain

続いてはプロキシ設定です。
Microsoft Updateを選択した場合はインターネット経由となるため、必要に応じプロキシを設定します。(おそらくWSUS選択でも動作すると思いますが、社内向けにプロキシを完備しているケースはあまり聞かないですねぇ)

f:id:mohessu:20190502233702p:plain

次はアップストリームサーバーからダウンロード可能な情報の取得です。基本は何も考えずに接続の開始を選択すればよいのですが、、、

f:id:mohessu:20190502234235p:plain

前回Windows Server 2016でこのボタンを押した際は、接続開始してからは15分程度で応答が戻ってきましたが、今回は1時間半かかりました。

f:id:mohessu:20190503022459p:plain

違いを確認してみたのですが、ログに大量にエラーが、、、

ログファイルは以下にありました。

C:\Program Files\Update Services\LogFiles\SoftwareDistribution.txt

f:id:mohessu:20190503022712p:plain

おそらくこのログが遅くなった原因なのではないかと思います。
色々調べていると、カテゴリが変わったために起きている問題ではないかとの推測を立てていたケースがありました。
その際は以下コマンドを発行すると、改善されるとあったので、気になる方は接続の開始を押す前に以下PowerShellコマンドを実行しておきましょう。カテゴリを取得するだけのコマンドとなっているため、5分もかからず完了します。

#Get WSUS Server Object
$wsus = Get-WSUSServer

#Get WSUS Subscription and perform initial synchronization to get latest categories
$subscription = $wsus.GetSubscription()
$subscription.StartSynchronizationForCategoryOnly()

While ($subscription.GetSynchronizationStatus() -ne NotProcessing’) {
    Write-Host “.” -NoNewline
    Start-Sleep -Seconds 5
}
Write-Host Sync is done.”

f:id:mohessu:20190506000609p:plain

時間はかかりましたが、次のステージには進むことができました。
更新プログラムの言語を選択します。
日本語版を利用していれば、英語と日本語が初期選択されています。他言語は不要であればそのままで問題ありません。

f:id:mohessu:20190503023006p:plain

ここで、製品の選択です。
製品とは、WSUSでアップデートを提供可能な全製品となります。
古いものから新しいものまでかなり幅が広いので、必要なもののみにチェックを付けるようにしましょう。

f:id:mohessu:20190503023054p:plain

OfficeカテゴリにはOffice 365があるのですが、これはSCCM傘下のときのみ有効だったかと思います。

f:id:mohessu:20190503023123p:plain

Windows系は最初からチェックが入っています。
Winodws XPやWindows Server 2000等はすでにサポートも切れているため選択しなくてもよいかと思います。
Windows10関連であれば、少し古いですが以下ブログに選択すべき内容が記されています。

https://blogs.technet.microsoft.com/jpwsus/2016/09/23/wsus-windows-10-product/

Windows 10 SはSモードなので、利用していなければそれを抜いて選択する形でよいかと思います。

f:id:mohessu:20190503023312p:plain

次は同期の分類選択です。
Windows10では、Upgrades、セキュリティ問題、重要な更新、定義更新プログラムが選択されていればよいと思いますが、以下を参考にほかに必要そうとなるものがないか確認していくとよいでしょう。
https://blogs.technet.microsoft.com/jpwsus/2018/06/19/wsus-category/

f:id:mohessu:20190503023355p:plain

続いて同期スケジュールです。
手動同期、自動同期を選択できます。
新しい更新プログラムは毎月出てくるため、自動設定しておくのが良いでしょう。

f:id:mohessu:20190503023453p:plain

最後に初期同期を行うかを設定できます。
初期同期は時間がかかるため、早めに取り組んでおくのが良いでしょう。

f:id:mohessu:20190503023507p:plain

これで設定は終了ですが、チュートリアルとして次の対応が記されています。

3、4は特に意識してみておく必要があります。

f:id:mohessu:20190503023525p:plain

これで設定は完了です。
Update Servicesのコンソールが表示されます。 

f:id:mohessu:20190503023556p:plain

初期同期が行われると、以下のように承認待ちや適用対象コンピューターがないことが明示されます。

f:id:mohessu:20190503125706p:plain

上記画面で製品と分類の表示を押してみたところ、初期で選択したはずのUpgradesが外れていました。

だからというわけではないですが、設定の再確認は忘れないようにしておきましょう。
(同期中にチェックしたため、この時は保存ができませんでした、、、)

f:id:mohessu:20190503125638p:plain

なお、Windows10のFUは機能更新プログラムの名でリリースされています。
1703くらいまでは同意チェックが出るため、承認を行う際にわかったのですが、1709以降は確認が出ないので、必要なPCにのみ適用できるよう確認する工夫が必要です。(2000を超える中から探し出すのは骨が折れます、、)

f:id:mohessu:20190506132854p:plain

f:id:mohessu:20190506132943p:plain

f:id:mohessu:20190506133005p:plain

f:id:mohessu:20190506133039p:plain

対象となるコンピューターについては、GPOの設定が行われているかどうかがカギとなります。
f:id:mohessu:20190503132000p:plain

自動更新を構成するを有効にして、イントラネットMicrosoft 更新サービスの場所を指定するで、WSUSの場所を指定することで以下のようにクライアントが表示されるようになります。

f:id:mohessu:20190503223418p:plain

ここまでの設定を行えば、Windows10のバージョン管理が行えるようになるはずです。
承認されている最新のバージョンがダウンロードされてきていますね。

f:id:mohessu:20190506201214p:plain

f:id:mohessu:20190506200927p:plain

また、オプション項にはサーバーのクリーンアップ ウィザードがあります。
WSUSではいろいろなデータが入ってくることもあり、定期的にクリーンアップを行うようにしましょう。

f:id:mohessu:20190503142225p:plain

クリーンアップが行える内容は以下の5点となります。2か月から3か月に1回は実施していきたいですね。 

f:id:mohessu:20190503151455p:plain

最後にWSUSの設定の中で特に重要なプールサイズの変更について紹介しておきます。 
WSUS1台に対して収納可能なPCは4コア4GB RAM環境で100,000台程度という指標が出ています。が、この台数をこなすためにはメモリプールサイズを大きくしておくことが必要となります。

また、Windows10の更新プログラムは非常に大きいこともあり、キャッシュしたデータは破棄されないよう設定しておくことも重要です。
IISマネージャーを開き、アプリケーション プール、WsusPoolを選択し、詳細設定を開きます。

f:id:mohessu:20190503141817p:plain

 プライベートメモリの値を以下のように変更します。

1486248→0

f:id:mohessu:20190503163545p:plain

また、キューの長さを以下のように変更します。

1000→2000

f:id:mohessu:20190503163501p:plain

大規模キャッシュ破棄に備え以下の設定も行っておきます。

Pingの有効化
True→False

アイドル状態のタイムアウト
20→0

f:id:mohessu:20190504013254p:plain

そのほか、リサイクルの設定でも定期リサイクルを無効化しておきましょう。

定期的な期間

チェックを外す(1740→0)

f:id:mohessu:20190504013035p:plain

実施が必要なことが多く大変ですが、これらの設定がWindows10をWSUSでアップデートしていくうえで重要です。
他にもベストプラクティスとして実施しておくのが良い項目がいくつかあるので、以下URLには目を通しておいた方がよいでしょう。

https://support.microsoft.com/en-us/help/4490414/windows-server-update-services-best-practices

音楽:月の繭