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

執筆者:

関連記事

H2 Databaseで生成したSHA256値をJavaで生成したSHA256値と比較してみる

ファイル、サーバ、メモリ、様々な動作形態がとれてプロトタイピングや、配布アプリの組み込みDBとして便利に使えるPure Javaデータベースの「H2」。 h2database.com  2 …

GitLabのIPを変更したらMattermostにログイン出来なくなった話「the redirect uri included is not valid. 」

目次1 発端2 環境3 GitLabのIP変更設定を開始4 そしてハマる5 解決6 結局どこに設定が保存されていたか7 まとめ 発端 先日オフィスの引っ越しが有りネットワークセグメントが変わる為、Gi …

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

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

ブラウザでRSA暗号化したデータをサーバで復号する(Angular + JSEncrypt、Spring MVC)【前編】

セキュリティ的にクリティカルなデータをクライアントブラウザで暗号化保存するようにしてみます。 通信経路はHTTPSで暗号化されていてもスマホに重要なデータが平文で残っていたら珠に傷です。 目次1 環境 …

podman + docker-comopseでwordpressを起動

前回podmanをdockerとして使えるようになりました。 One IT Thing  2 Pocketspodmanをdockerとして使うhttps://one-it-thing.co …

 

shingo.nakanishi
 

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