
標的型攻撃メールは 2024 年現在、「個人向け」「企業向け」ともに対策が必要な状態です。
多くの企業でもセキュリティ対策は実施済ですが、対策のひとつとして「メール訓練」というものがあります。このメール訓練は曲者で一般的なメール配信サービス等では、自社向けの「メール訓練」でも仮の標的型メールを送信することができません。
たとえば、SendGrid の回答は以下のとおり:

そういうわけで、標的型メール訓練の実施には、一般的なメール配信サービスではなくて訓練専用のサービスを選定する必要があるはずです。そのなかで Gophish はオープンソースのツールキットなので、とりあえず試してみるには Good です。
おすすめできるポイントとしては、設定・構築が簡単で、使い勝手は SendGird や zoho といったよくあるメール配信サービスと同じような機能を簡単に備えています。
ここでは、2024 年に実施した gophish の初期設定の方法について記録しておきます。
ネット上の情報は一部古くなっていて、設定方法やログイン方法が異なるものがありました。
環境設定
gophish の環境構築は、2とおりあります。ひとつは github の Release から環境別の設定用 Assets をダウンロードして実行する。もうひとつは、ソースコードをダウンロードして Go 言語の環境構築をしたうえでビルドすること。
もちろん簡単なのは前者の Release から設定用 Assets をダウンロードして exe ファイル実行するパターンで、これで正常起動できたなら、(go 実行環境があれば、後者でもよいと思いますが)それでいいと思います。Windows 環境なら(2024 年現在だと)次のファイルです。

ダウンロードしたファイルを解凍して gophish.exe を実行します。コマンドプロンプトが開いてログを出力します。このログは後述しますが、とても重要です。なお、ローカルにサーバーが立ち上がっています。このあたりの動きは Stable Diffusion web UI なんかをローカルに立てたことがあると想像しやすいです。
起動時の URL はつぎのとおり:

「ユーザー名/パスワード」の入力が必要です。最初のユーザー名は固定で「Admin」です。パスワードは gophish.exe を起動したときにコマンドプロンプトのログに出力されています。おそらく一定のパスワードではないので、必ずログの参照が必要です。
おそらく初回起動時しかログに出力されていないと思うので、パスワードを記録し損ねたときは、再度 zip を解凍し直すなどして、ログインパスワードを取得する必要があると思います。古い gophish のバージョンでは、パスワードも固定で「gophish」でした。現在は変更されているので「admin/gophish」の組み合わせではログインすることができません。
メール送信までの初期設定

ログインができたら、訓練メールを送信するための初期設定・初期準備が必要です。おおきくは次のとおり:
- Users & Groups 訓練メールを送る先のユーザー名のリストを設定
- Email Templates 訓練メールの HTML or text メールの本文を記録
- Landing Pages フィッシング詐欺などの web ページのデザインを設定(使わなくても1つだけ、単純なページを作る必要がある)
- Sending Profiles 送信する SMTP サーバー(送信ユーザー/パスワード)の設定
- Campaigns 実際に訓練メールを送信する操作
最低でもこの5ステップを踏む必要があると思います。注意点として、gophish は gophish だけで訓練メールを送れるわけではなくて、ここで設定をした SMTP サーバーを利用して訓練メールを送信します。
一例ですが gmail を利用して訓練メールを送信するサンプルが公開されています。
補足ですが gmail を利用する場合は gmail 側でアカウントで二段階認証を有効にして「apppassword」でアプリ専用のパスワードを取得する必要があります。

二段階認証には(一般に)電話番号が必要。