【技術備忘録④】パスワード自動生成ツールの「apg」コマンドを試用して、地味にかかる思考時間を削減


  • 現在利用している言語や技術の記法や不明点等を記録していく記事第四弾。

  • 半覚醒状態での寝ぼけPC作業は、危険な破滅作業であることを深く刻みこむ最近。

  • 今回は、わりと時間をとられてしまうパスワード生成に便利な「apg」コマンドを試用していくことにしよう。


概要


  • 簡単なコマンドで、ランダムなパスワードの自動生成が可能なコマンドツール。

  • 単純な文字列や形式指定のものまで、あらゆるパスワードを生成できる。

  • ターミナルのみで完結するため、コマンドに組み込めたり、思考時間の削減等につながる。


特徴


豊富なオプション


  • 単純なランダム文字列から、「何文字以上」や「記号や英数字を含む」等、パスワード入力で求められる形式も、指定して生成が可能。


コマンド完結


  • コマンドツールのため、ターミナル内の作業で完結するため、Webサイト等のジェネレーターを利用しなくても済む。

  • また、shellやエイリアスに組み込むことで、さらに生成が簡単になる。


思考時間削減


  • 様々な形式での生成が簡単に実行可能ため、パスワードの文字列に悩む時間を削減できる。

  • ※単一の生成パスワードが不安であれば、複数生成して、それらを組み合わせることで、強固なものになる。


結果


  • 下記のように、簡単なコマンドで、ランダム文字列を自動生成。

apg.png


  • 指定形式での生成も可能。


    • 例: 数字・記号・大文字・小文字を含む



apg_option.png


  • 最長文字数指定での生成も可能

apg_max.png


  • 生成される数を指定しての生成も可能。

apg_count.png


  • パスワード生成だけではなく、覚え方の表示も可能。

apg_l.png


作業環境


  • Ubuntu 18.04.2


インストール


  • Linux(Ubuntuやapt環境)でのインストールは、下記のコマンドをうち、行う。

# apgのインストール

$ sudo apt install apg

# バージョン確認
$ apg -v


基本操作


  • apgの基本操作コマンドとして、下記。

内容
コマンド

通常生成
apg

表示数指定での生成

apg -n数
例 : apg -n2で2個

指定形式での生成

apg -M形式
形式一覧は下記。※大文字で必須。()内の小文字で必須ではない。
S(s) : 記号を含んだ生成
N(n) : 数字を含んだ生成
C(c) : 大文字を含んだ生成
L(l) : 小文字を含んだ生成
例 : apg -M SCNLで上記の形式を全て含んだ生成

指定文字を除いた生成

apg -E指定文字
例 : apg -Eabcdefg -n2で「小文字のapcdefg」を除いた2個

指定アルゴリズムでの生成

apg -a指定アルゴリズム
アルゴリズム一覧は下記。
0 : デフォルト(可読性が高い生成)
1 : ランダム生成
例 : apg -a1でランダム生成

指定文字数(最大)での生成

apg -m数
例 : apg -m10で10文字以上での生成

指定文字数(最低)での生成

apg -x数
例 : apg -x10で10文字以下での生成

指定形式のみでの生成

apg -オプション -a1
例 : apg -Mn -a1 -n2で数字のみ生成
例 : apg -Ms -a1 -n2で記号のみでの生成

覚え方も含んだ生成

apg -l
例 : apg -n2 -lで覚え方含む2個の生成

発音可能な生成

apg -t
例 : apg -n2 -tで発音可能な2個の生成

暗号化も同時に行う生成

apg -y
例 : apg -n2 -yで暗号化含む2個の生成

ヘルプページ表示
apg -h

バージョン確認
apg -v


まとめ


  • 今回は自動パスワード生成コマンドの試用ということで、現在脳内をCLIツールが一世風靡している状態で、記事を書く。

  • 単体利用ではなく、「他の生成ツールやランダム手動入力文字との組み合わせ」も便利だと感じたが、私の狭量脳内での記憶作業に不安。

  • 「不要なパスワードの大量生成」と「無作為文字列の組み合わせ」という快感作業が完了したら、次回のツール捜索に取り掛かることしよう。


参考