「パスワードを考えるのが面倒。自動で強力なパスワードを作れないか」
定期的なパスワード変更や新規ユーザー作成の際、安全なパスワードを手動で考えるのは手間がかかります。
この記事では、
mkpasswd コマンドでランダムなパスワードを生成する方法を解説します。インストール方法、文字数や文字種の指定、opensslやurandomを使った代替手段まで、パスワード生成に必要な知識をまとめました。・
mkpasswd コマンドでランダムなパスワードを即座に生成できる・
-l で文字数、-d で数字数、-C で大文字数、-s で特殊文字数を指定できる・
mkpasswd は expect パッケージに含まれる(要インストール)・
openssl rand -base64 16 でもランダム文字列を生成できる・
/dev/urandom を使った生成方法は追加インストール不要でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
mkpasswdコマンドとは
mkpasswd は、ランダムなパスワードを生成するコマンドです。文字数や含める文字種(大文字・小文字・数字・特殊文字)を指定できるため、パスワードポリシーに沿ったパスワードを簡単に作成できます。mkpasswdのインストール
mkpasswdはexpect パッケージに含まれています。# RHEL系(AlmaLinux / Rocky Linux / CentOS) # dnf install expect # CentOS 6/7の場合 # yum install expect # インストール確認 $ which mkpasswd /usr/bin/mkpasswd
mkpasswdの基本的な使い方
1. デフォルトでパスワードを生成する
# ランダムなパスワードを生成 $ mkpasswd xK9#mP2$qR
2. 文字数を指定する(-l)
# 16文字のパスワードを生成 $ mkpasswd -l 16 aB3$kM7#pQ9!rT5@
3. 文字種を指定する
# 数字を最低3文字含める(-d) $ mkpasswd -l 12 -d 3 # 大文字を最低2文字含める(-C) $ mkpasswd -l 12 -C 2 # 特殊文字を最低2文字含める(-s) $ mkpasswd -l 12 -s 2 # 組み合わせ例:16文字、数字3以上、大文字3以上、特殊文字2以上 $ mkpasswd -l 16 -d 3 -C 3 -s 2
代替手段:mkpasswd以外のパスワード生成方法
mkpasswdがインストールできない環境でも、パスワードを生成する方法があります。1. opensslを使う
# opensslでランダム文字列を生成(base64エンコード) $ openssl rand -base64 16 aB3kM7pQ9rT5wX2y # 16バイトのランダムデータから英数字のみ抽出 $ openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | head -c 16 kM7pQ9rT5wX2yaB3
2. /dev/urandomを使う
# /dev/urandomからランダム文字列を生成 $ cat /dev/urandom | tr -dc 'a-zA-Z0-9!@#$%' | head -c 16 kM7p!Q9r@T5w#X2y
3. pwgenを使う(要インストール)
# pwgenのインストール # dnf install pwgen # 16文字のパスワードを1つ生成 $ pwgen -s 16 1 kM7pQ9rT5wX2yaB3
本記事のまとめ
| やりたいこと | コマンド |
|---|---|
| ランダムなパスワードを生成する | mkpasswd |
| 文字数を指定して生成する | mkpasswd -l 16 |
| 数字を最低N文字含めて生成する | mkpasswd -l 16 -d 3 |
| opensslで生成する | openssl rand -base64 16 |
| /dev/urandomで生成する | cat /dev/urandom | tr -dc 'a-zA-Z0-9' | head -c 16 |
パスワード生成だけでなく、Linuxサーバーのセキュリティを体系的に身につけたいですか?
強力なパスワードの自動生成はLinuxサーバーセキュリティの基本です。
ネットの切れ端の情報をコピペするだけでなく、現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。
「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。
3,100名以上が実践した「型」を無料で公開中
プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。
登録10秒/合わなければ解除3秒 / 詳細はこちら
- 次のページへ:pwunconvコマンドでシャドウパスワードを解除する方法|pwckでの事前チェックも
- 前のページへ:yumに関するログ(ログファイル)を把握する|yum historyで操作履歴を管理する方法
- この記事の属するカテゴリ:Linuxtips・システム管理へ戻る

無料メルマガで学習を続ける
Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。
登録無料・いつでも解除できます