【2023年2月】Gmail を PowerShell で送る方法

Gmail のメール送信を PowerShell を送る方法について記載します。Gmail 側の設定の UI や仕様が変わっており苦戦しました。今回はそのときの設定手順についてまとめようと思います。

Gmail でメールを送るための設定

PowerShell でメールを送信するためには SMTP を利用する必要があります。昨今のセキュリティの基本は OAuth 2.0 のため、既定の状態では SMTP の認証を突破できません。以下の手順でアプリパスワードを設定することで、SMTP の認証を突破できました。

1. Google アカウント(https://myaccount.google.com/)のトップページにアクセスします。
2. 左側のメニューから [セキュリティ] をクリックします。
3. [Google へのログイン] のセクションで、[アプリパスワード] をクリックします。(認証が必要になる場合があります)


4. [アプリ パスワードを生成するアプリとデバイスを選択してください。] を指定します。[アプリ:メール] 、[デバイス:Windows パソコン] を指定して [生成] をクリックします。


5. 黄色の枠内に表示されているパスワードが生成されます。このパスワードを SMTP の認証に使っていきます。控えておいてください。
※セキュリティに関するものなので、取扱は十分に気を付けてください。

PowerShell からの送信手順

いよいろ PowerShell でメールを送っていきます。よくある Send-Massage を使った方法なので、「もう知っているよ」という人は読む必要はありません。

$EmailFrom = "<送信元のメールアドレス>"
$EmailTo = "<送信先のメールアドレス>"
$SMTPServer = "smtp.gmail.com" 
$SMTPPort = 587
$username = "<送信に使う Gmail のメールアドレス>"
$password = ConvertTo-SecureString "<別途設定したアプリパスワード>" -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential($username, $password)
$Subject = "<件名>"
$Body = "<本文>"


Send-MailMessage
-SmtpServer $SMTPServer 
-port $SMTPPort 
-UseSsl -Credential $credential 
-DeliveryNotificationOption None 
-Encoding UTF8 
-ErrorAction Stop 
-From $EmailFrom 
-to $EmailTo 
-Subject $Subject 
-Body $Body 

Teams Machine-Wide Installer について

Teams を インストールすると気づいたら一緒にインストールされてるアレの正体に迫ります。

アンインストールしても大丈夫か?

結論から言うとアンインストールして大丈夫です。後述の内容を読んでいただいてやっぱインストールしておきたいということであれば、再インストールすることも可能です。インストーラーは次の MS のページに記載があるのでこちらからダウンロードします。

https://learn.microsoft.com/ja-jp/microsoftteams/msi-deployment

こちらの MS のページ中の MSI ファイルの表より、環境に則したインストーラーをダウンロードします。通常であれば商用の 32 bit か 64 bit のどちらかのリンクからインストーラーをダウンロードすれば問題はないはずです。64 bit 版をダウンロードすると “Teams_windows_x64.msi” という名前の実行ファイルを入手できます。こちらを実行することで、Teams Machine-Wide Installer を復活させることができます。

Teams Machine-Wide Installer は何をするプログラムなのか

Teams Machine-Wide Installer はユーザーがサインインした際に自動で Teams をインストールするプログラムです。Teams アプリは、”端末に” ではなくユーザープロファイル内にインストールデータを保持する動作となります。なので、端末に複数のユーザーがいる場合、ユーザー A が Teams アプリをインストールしてもユーザー B はインストールされていないのは通常の動作です。端末にサインインするユーザーは全員 Teams アプリを入れさせたいという要望がある場合は、Teams Machine-Wide Installer の出番です。Teams をインストールしていなくても、サインインしたタイミングで自動でインストールが行われるようになります。

結論

Teams Machine-Wide Installer は別に大した機能ではないのでアンインストールして問題ない個人的に思います。かといって常駐プログラムというわけではないので、Teams Machine-Wide Installer 放置しても問題はないです。

Windows 365 の試用版を使う

今回は Windows 365 の試用版を利用し動作を確認していきたいと思います。

はじめに

Microsoft 365 E5 の試用版を使っている環境で Windows 365 の試用版ライセンスを取得して動作を確認していきます。ライセンスの取得は Microsoft 365管理センターの [サービスを購入する] の画面から行いましょう。

Windows 365 を利用する端末のスペックを選びますが、試用版では単一のスペックしか用意がありません。おとなしくこちらを利用しましょう。

あとは画面に従って利用を開始します。詳細な手順は割愛します。

ライセンスの割り当て

Windows 365 の試用版ライセンスをユーザーに割り当てます。

Windows 365 のプロビジョニング

エンドポイントマネージャーから Windows 365 をプロビジョニングする設定を構成する必要があります。このポリシーを割り当てることでプロビジョニングが行われ Windows 365 を利用することができるようになります。まずは以下の画面まで進みます。

[+ ポリシーの作成] をクリックして、プロビジョニングポリシーを作成していきます。
とりあえず、動作を確認することを目的としているので、以下のように設定し、[次へ] をクリックします。

次に展開する OS のイメージを選択します。[イメージの種類] は [ギャラリーイメージ] とし、 [Windows Enterprise + OS Optimizations] を選択します。 [Windows Enterprise + Microsoft 365 Apps] は、プロビジョニング時にすでに Office アプリケーションがインストールされている状態で展開することができます。必要な方はこちらのオプションも利用できます。

[言語と地域] を設定します。今回は [日本語(日本)] とします。[追加のサービス] は [None] とします。 [Windows Autopatch] は Windows Update の管理を Microsoft に一任するサービスですが、こちらの詳細はまた別の機会に記載することにします。

プロビジョニングポリシーを割り当てる対象を指定します。今回は secure01 というセキュリティグループに対して割り当てを行います。あとは画面の案内に従って進めいき作成を完了します。

プロビジョニングポリシーの作成後

Windows 365 のプロビジョニングには時間がかかります。以下の [すべてのクラウド PC]よりステータスを確認します。ステータスが [プロビジョニング済み] となれば、利用することができます。

実際に操作してみる

以下のように Windows 365 をクリックしてアクセスを行います。

次の画面で [ブラウザーで開く] をクリックします。

セッション設定や資格情報を求められるので、案内に従い画面を進めていきます。
あとは、ブラウザ上から Windows を操作できるようになります。
ブラウザで Windows を操作できるというのはなかなか便利です。

DFSR を構築してみた

とりあえず、DFSR を構築するところまでの手順をまとめていきます。

新しいレプリケーショングループの作成

各サーバーが含まれるレプリケーショングループを作成していきます。

今回は汎用レプリケーショングループを選択しておきます。

レプリケーショングループに対象のサーバーを追加します。

レプリケーションの接続トポロジを設定します。今回はフルメッシュを指定しています。

レプリケーションのスケジュールおよび帯域幅を指定します。

プライマリメンバーを選択します。

レプリケーション対象のフォルダーを指定します。

他のメンバーのレプリケーション先のフォルダーを指定します。

設定内容を確認します。

以上で DFSR の構成は終わりです。お疲れ様でした。

Git 使ってみる

目標

とりあえず、コミットまでできるようにする。

最初の準備

(Git のインストール工程は割愛)

対象のディレクトリに移動して、以下のコマンドを実行。
該当のディレクトリが Git の管理対象として設定される。

git init

外したい場合は、このディレクトリ(.git)を削除すると管理対象から外すことができる。
今までのバージョン管理の情報もリセットされる。

ステージング

ざっくり言うとディレクトリ内の変更をひとまとまりにする工程を行う。
一般的に修正した機能単位でステージングを行い、修正内容をわかりやすくすることが可能。
ステージングするには、以下のコマンドを実行する。

git add

コミット

ステージングした修正内容をコミットします。
以下のコマンドを実行してコミットを行います。

git commit