パスワードの管理に関するグッドプラクティス (version. 20220914)
1. パスワードを使う上での鉄則
パスワードは12文字以上にし、英小大文字・数字・記号を全て使う。ランダムなものがベター。
学内規則 (*1) では,12文字以上を必須、16文字以上を推奨としています。 機器やアプリの制限で設定不可能などの特別な場合を除き12文字以上にしてください。
パスワード中によく使われる単語や文字列は、世界中のクラッカー(悪意のあるハッカー) により頻出辞書が作成・共有されています。この辞書に載っている単語を使って パスワードを解析する「辞書攻撃」を避ける必要があります。 最近の辞書攻撃は単語を組み合わせたり、パスワードの利用者の個人情報を用いて 攻撃を行う等の工夫がされています。後述のパスワード管理ツールを活用して、 ランダムな文字列を使うのがベターです。
パスワードの使い回しは厳禁。システム/サービスごとに異なるパスワードを使用する。
IDとパスワードの漏洩を完全に防ぐことは不可能です。IDとパスワードは必ず漏洩する という前提で、漏洩したIDとパスワードによる被害を予防するか最小限に留める 対策をすることが肝要です。漏洩したIDとパスワードは一覧表(リスト)にされ、 世界中のクラッカーに出回っています。このリストを用いて様々なウェブサービス等に ログイン試行を行う攻撃を「リスト型攻撃」と呼びます。リスト攻撃を簡単に実行できる 攻撃ツールは誰でも使うことができます。リスト型攻撃の餌食にならないためにも、 パスワードの使い回しはやめましょう。
多要素認証は必ず有効にする。
IDとパスワードが漏洩した場合でも、多要素認証を有効にしておけば、 不正ログインを避けられる可能性が高くなります。 多要素認証は必ず有効にしましょう。 近年では、多要素認証は突破される事例も多くあります。 多要素認証があるからといって安心せずに、パスワードが漏洩した または漏洩が疑わしい場合は、直ちに変更しましょう。
パスワード管理ツールを利用する。
システム/サービスごとに異なる複雑なパスワードを設定した場合、 これらを全て記憶したり、メモで管理することは不可能です。 パスワード管理ツールを利用しましょう。 パスワード管理ツールの例については後述します。
2. システム管理者向けのグッドプラクティス
パスワードの共有は可能な限り避ける(パスワード管理ツールの共有機能を除く)。
UNIX系システムのスーパーユーザー (root) のパスワードは共用せずに、 sudo を用いるほうがよい。
ネットワーク機器やアプライアンス製品等でも管理者ユーザーを複数製作 可能なものについては、管理者毎にIDとパスワードを生成する。
共有しなければならないパスワードは、パスワード管理ツールの機能を 用いて管理する。
システムにパスワードの強度を確認するオプションがある場合は、有効にし て、安全なパスワードの利用を強制する。
学外から接続するシステムにはIDとパスワードのみの認証を用いない。
SSHは鍵認証で利用する。
VNC, RDPは学内ネットワークに限定にする。学外から利用する場合はVPNなどを併用する
HTTPのBASIC認証は学内ネットワークに限定にする
学内ネットワーク限定のサービスを利用する際はVPN接続あるいは鍵認証のSSHによる トンネリング等を利用する。
3. 組織向けパスワード管理のグッドプラクティス
4. 個人向けパスワード管理のグッドプラクティス
ウェブブラウザ標準のパスワード記憶機能は個人用のパスワード管理ツール として使用できます。この機能を用いることで、PC・スマートフォン間での パスワード情報の同期ができます。記憶しているパスワードが漏洩した際に 通知してくれる機能を持つものもあります。ただしブラウザベースなので ウェブサービスのみとなります。
専用の個人向けパスワード管理ツールを用いて、IDとパスワードを管理するのが よいでしょう。フリーウェア/有償ソフトウェアどちらでもよいと思います。 フリーウェアの中には個人のPC・スマートフォン間でパスワード情報を同期 するためには、使い方を工夫する必要があるものがあります。
フリーウェアを用いてPC, macOS, iOS, Androidでパスワードマネージャ を構成する一例
Google Drive を利用できるようにしておく(Google Drive以外の複数の クラウドストレージに対応している)。
PC (Windows, macOS) には keeWeb を インストールし、新規パスワードデータベースをローカルディスクに作成する。 パスワードデータベースファイルのパスワードは十分に長いものを利用し、 厳重に管理する。 記憶させておきたいIDとパスワードを入力し、keeWebを終了する。
作成されたパスワードデータベースファイル keepassx.kdbx をGoogle Driveにアップロードする。
KeeWebを再起動し、更に表示をクリックして、Google Driveのアイコン をクリックして、Google Driveにアップロードした keepassx.kdbx を 参照するようにする。これで、Google Drive 上で keepassx.kdbx を共 有する準備ができました。
iOS, iPadOSの場合。Google Driveアプリをインストールし、 keepassx.kdbx をアクセスできるようにする。KeePassium をインストー ルし、データベースを開くで、Google Drive上の Keepassx.kdbx を選 択する。これでiOS, iPadOS上でパスワードデータベースを共有するこ とができます。 KeePassium は Face ID/Touch IDをサポートしており、Face ID/Touch IDの設定を行うことで、パスワードデータベースのパスワードを入力し なくて済むようになるます。
Androiodの場合。Google Driveでkeepassx.kdbx にアクセスできること を確認しておく。Keepass2Android をインストールし、データベースを 開くで、Google Driveを選択する。Keepass2Android の権限を設定し、 Keepassx.kdbxを選択する。これで Android でもパスワードデータベー スを共有することができます。
これで異機種間でのパスワードデータベースの共有ができました。
参考
*1 国立大学法人電気通信大学情報システム運用・管理実施手順書 (https://www.cc.uec.ac.jp/rule/)