Googleアカウントの2段階認証にTOTPを(パソコンで)使う 【KeePassXC】

11/12/2022

Security

t f B! P L
security-2fa

アカウントの悪用は誰にでも起こりうることであり、一般ユーザを狙った攻撃も年々増加しています。そのような理由から、アカウントに多段階認証/多要素認証を行うことが一般的になってきました。

中でもGoogleのアカウントは一際狙われやすいため、2段階認証を設定していない方はすぐにでも設定することをお勧めします。 

Googleアカウントの2段階認証

Googleアカウントには2段階認証の仕組みが数多くあります。一般的には電話番号やログイン済みのスマホによる物がよく使われます。

しかし、そのどちらも、手元にスマホがあることが前提となっており、PCで全てを完結させたいという場合には2要素認証を諦めざるを得ない状態でした。

そこで、今回はTOTP(Time-based One-time Password)という仕組みを用いてGoogleの2段階認証を設定していきたいと思います。

TOTPとは

TOTPは Time-based One-time Password の略で、時間を基準にした一度限りのパスワードという意味です。

TOTPを簡単に説明すると、サーバーとクライアントがあらかじめ同じ鍵を共有し、その鍵と時間(主に現在時刻)から、一定期間(主に30秒)だけ使えるパスワードを生成する仕組みです。

大まかな流れ

今回の方法は、もともとスマホでのみ使える、Google 認証システムアプリというものが、一般的なTOTPを使用していることを利用し、別のTOTPが使用できるソフトウェアを利用するという方法を使っています。

可能性は限りなく低いと思いますが、将来的にGoogleのシステム変更により、この方法が利用できなくなる可能性があります。

GoogleアカウントでTOTPを使う

再設定用の電話番号かメールアドレスを設定する

注意

後の作業に失敗するとGoogleアカウントにログインできなくなる可能性があります。
再設定用の電話番号もしくは再設定用のメールアドレスを設定しておくと安心です。

まずはGoogleのウェブページからGoogleアカウントにログインし、右上のアカウントアイコンをクリック、Google アカウントを管理を選択してください。

security tab

セキュリティを選択します。

identification

Google による本人確認の方法再設定用の電話番号もしくは再設定用のメールアドレスを選択、再度パスワードの入力を行い、指示に従って変更します。

2段階認証の設定

google login

セキュリティを選択し、Google へのログイン→2段階認証プロセスを選択します。

try it

下にスクロールして使ってみるを選択、再度パスワードの入力を行います。

use-a-smartphone

初期設定でのみ電話番号かスマートフォン、もしくはセキュリティキーが必要になります。今回はスマートフォンを選択しました。

2fa-backup

最後にバックアップ方法を登録します。

電話番号が使える場合は電話番号を、使えない場合は別のバックアップ オプションを使用を押して、バックアップ コードをダウンロードもしくは印刷します。

backup-code

このバックアップコードはそれぞれ一度しか使えないのでご注意ください。

TOTPの設定

いよいよTOTPの設定をしていきます。 ほかのソフトウェアも使用できると思われますが、今回はKeePassXCを使用します。KeePassXCのインストールや使い方についてはこちらをご覧ください。

add-second-step

2段階認証プロセス画面に入り、2 つ目の手順を追加してログインを確認するから認証システム アプリを選択します。

authentication-system-app

認証システムを設定を選択します。

認証システムアプリのQRコード

スキャンできない場合を選択 

keepassxc-totp-setting

KeePassXCでGoogle用のエントリーを作り、エントリーを右クリック→TOTP→TOTPの設定を選択 

秘密鍵のコピー

メールアドレスと以下のキーを入力します(空白は無視されます):の下に記載されている文字列をコピーします。

keepassxc-enter-key

KeePassXCの秘密鍵:の入力欄に貼り付けて、OKを選択します。

KeePassXCのエントリーを選択した状態で、Ctrl+Tを押すとTOTPをコピーすることができます。

enter-code

Googleアカウント設定側に戻り、次へを選択、今コピーしたコードを入力、確認を押して、正常に終了すれば完了です。

TOTPを使ってログイン

2fa-home

一度Googleアカウントからログアウトして、再度ユーザ名とパスワードを入力するとこのような画面が表示されると思います。正常にログインできてしまった場合はブラウザのCookieを削除するか、別の端末からお試しください。

下へスクロールして別の方法を試すを選択します。

try-another-method

Google 認証システム アプリから確認コードを取得するを選択します。

先ほどと同じようにKeePassXCでCtrl+Tを押してTOTPをコピーし、6桁のコードをペーストし、正常にログインできれば完了です。 

まとめ

TOTPを使用することで各段にセキュリティを高めることができます。最近のウェブサービスは基本的にTOTPが使えることが多いので、Googleアカウントに限らず、ぜひ活用してみてください。