linux security

CentOSで暗号鍵用のパスワードを生成

投稿日:

そこそこ長くて文字種の入り混じった強度の高いものを自分で考えるのは面倒です。

暗号化処理を使う際に必要なパスワード文字列を、mkpasswdコマンドでいい感じに生成出来るようにしておきます。

mkpasswdコマンドをインストール

デフォルトでmkpasswdコマンドが入っていないので、どのRPMパッケージで提供されるか調査。

# yum provides \*/mkpasswd

    (snip)

expect-5.45-14.el7_1.x86_64 : A program-script interaction and testing utility
リポジトリー        : base
一致          :
ファイル名    : /usr/bin/mkpasswd

expectに入っていることが分かったのでインストール。

# yum install expect

    (snip)

インストール:
  expect.x86_64 0:5.45-14.el7_1

依存性関連をインストールしました:
  tcl.x86_64 1:8.5.13-8.el7

完了しました!

/bin/mkpasswdが入りました。

# which mkpasswd
/bin/mkpasswd

パスワード生成関連オプション

man mkpasswdするかWeb版manページで確認。

-lパスワードの長さ。指定しなかった場合のデフォルトは9。
-d数字を含める最低数。デフォルト2。
-c小文字アルファベットを含める最低数。デフォルト2。
-C大文字アルファベットを含める最低数。デフォルト2。
-s記号を含める最低数。デフォルト1。
-2左手と右手を交互に使うように生成。

-2は面白いけど暗号化パスワード生成が目的なので今回は使わないですかね(^_^;

パスワード生成例

  • パスワードの長さ16桁
  • 数字が4文字
  • 小文字アルファベットが4文字
  • 大文字アルファベットが4文字
  • 記号が4文字

で構成されるパスワードを生成してみます。

# mkpasswd -l 16 -d 4 -c 4 -C 4 -s 4
G07&%yI0rm4Fw"/R

ここまで厳密に指定しなくても、デフォルト値で全ての文字種を入れてくれます。

桁数さえ決めれば、man通りのサンプルコマンド例でも十分ですね。

# mkpasswd -l 15 -d 3 -C 5
2s$jBR8Dx9CMvbc

秘密鍵や公開鍵のパスワードを決める際に頭を悩まさずに済むようになりました。

-linux, security
-,

執筆者:

関連記事

pgcryptoの有効化と共通鍵暗号の動作確認

PostgreSQLで「pgcrypto」拡張機能を有効にすると、PostgreSQLに保存するデータを暗号化出来るようになります。 INSERTする際、共通鍵暗号はpgp_sym_encrypt関数 …

テキストファイル内の改行コード差異を見つけるワンライナー

ファイル内容は同じなのにdiffで違いが出るWeb上でソースレビューする時に同じ内容の行なのに差分が出て紛らわしい これらの原因はWindows、Mac、Linuxが入り混じった、改行コードが統一され …

開発用のPKCS#12ファイルをOpenSSLで出来るだけ速く作る

「電子署名法」に則るにはセキュリティトークンが必要で、デジタル署名をちょっと試したいケースならPKCS#12が手っ取り早いです。 One IT Thing電子署名法で求められる「本人性」と「非改ざん性 …

SNS他Webサービスの情報流出、セキュリティ事故に巻き込まれたかどうか調べる

FaceBookやCapital Oneなど、サービスに登録されたユーザ情報が漏洩する事件が取り沙汰されています。 「もしかしたら自分が登録した情報も漏れてるかもしれない」 そう思って気になったら、セ …

CentOS8をPC実機にネットワークインストール(CD使用)

前回Windows上のVirtualBoxにCentOS8をインストールしました。 One IT ThingCentOS8をVirtualBoxにインストールしてXからdnfを打つまでhttps:// …

 

shingo.nakanishi
 

東京在勤、1977年生まれ、IT職歴2n年、生涯技術者として楽しく生きることを目指しています。デスマに負けず健康第一。