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
-,

執筆者:

関連記事

Javascript(暗号化JSライブラリ「Forge」)とp12ファイルで署名値を作成、Javaで検証する

前回、送信データの改ざんを検知する為、簡易的なセキュリティトークンであるPKCS#12形式のファイルを作成しました。 One IT Thing  10 Pockets開発用のPKCS#12フ …

pgcryptoで公開鍵暗号の動作確認

共通鍵暗号で暗号化されたデータはパスワードが漏洩すると復号される危険が高まるのに対し、公開鍵暗号で暗号化されたデータは秘密鍵とパスワードの二つが漏洩しないと復号できません。 APサーバとDBサーバ通信 …

VirtualBoxにUbuntu18.04をインストール(SSH接続するまで)

2019年も変わらずLinuxディストリシェアトップをキープしたUbuntuをVirtualBoxでインストールします。 マイナビニュース  7 UsersDebianとCentOS下落- …

Chrome76でシークレットモード非検知を実現出来なかった件の検証

2019/07/30にChrome76がリリースされました。 76では以前からGoogleが問題視していた「閲覧者がシークレットモードでみているかどうか運営側が分かってしまう」が解決されるはずでした。 …

HTTPS開発環境用、自己署名証明書の作成

(2020/09/18追記) mkcertを使ってより簡単に完璧なSSL証明書を作ることができました。 ささっと開発用のHTTPSサーバを作りたい時はmkcert使った方が良いですね。 One IT …

 

shingo.nakanishi
 

東京在勤、1977年生まれ、IT職歴2n年、生涯現役技術者を目指しています。健康第一。