-H オプションを使用して pw ユーティリティでユーザーを作成する

-H オプションを使用して pw ユーティリティでユーザーを作成する

私はFreeBSDシステムにユーザーを追加するためにpwを使用していますが、-Hオプションを使用したいと思います。例:

pw add user userfoo -H pwfile

マニュアル ページには、パスワードを「パスワード データベースに直接書き込むのに適した形式で暗号化して提供」する必要があると書かれています。

では、何が適しているのでしょうか? 具体的には、どのような暗号化アルゴリズムを使用すればよいのでしょうか、またファイルの形式は何でしょうか?

答え1

つまり、パスワードが書き込まれる形式/etc/master.passwd、つまり、crypt(3)その出力は通常、次の形式の MD5 ソルト付きハッシュになるということです。

$1$salt$hash

PS: 引用されている形式は奇妙です。FreeBSD のマニュアル ページには実際に次のように書かれています。

pw [−V etcdir] useradd [name|uid] [−C config] [−q] [−n name] [−u uid]
   [−c comment] [−d dir] [−e date] [−p date] [−g group] [−G grouplist]
   [−m] [−M mode] [−k dir] [−w method] [−s shell] [−o] [−L class]
   [−h fd | −H fd] [−N] [−P] [−Y]

−H fd     Read an encrypted password string from the specified file
          descriptor. [...]

「add user」は「useradd」の別名のようですが、ファイル記述子はファイルではなく数値です (例: 1 は stdout、2 は stderr)。

関連情報