gate-make-authkey は引数 username に指定された ユーザの公開鍵ファイルを作成します。 gate-make-home(8) の内部からスーパーユーザ権限で起動されることを想定しています。
公開鍵ファイルを作成する際に使用する情報源は /etc/passwd ( passwd(1) 参照)、ユーザデータベース ( gate-user-db(5) 参照) にある username で与えられたユーザの登録カード、 ユーザ情報に関する設定ファイル gate-user-conf(5) の $RSA_PUBKEY_AUTH, $RSA_AUTHKEY_FILE です。
$RSA_PUBKEY_AUTH が 1 である場合にこのプログラムは動作します。 また、引数 username に指定されたユーザが 個人ユーザである場合のみこのプログラムは動作します。
ユーザの登録カードのエントリ authorized_keys_setting が、 "override", "append" の場合にはエントリ authorized_keys の 内容を、各ユーザのホームディレクトリ以下の公開鍵ファイル ($RSA_AUTHKEY_FILE で指定されたファイル) へ上書きまたは追記します。 "delete" である場合は公開鍵ファイルの中身を空にします。 エントリ authorized_keys_setting が空または "none" の場合にも何もしません。
現在、公開鍵ファイル作成のシステムは単独ホスト上での動作のみ考慮されており、 複数ホスト上での動作を確認していません。例えば 公開鍵ファイルを作成した際、データベース上の公開鍵 (authorized_keys) および公開鍵の設定方法 (authorized_keys_setting) を削除しています。 これは複数ホスト上で動作する上で問題となるでしょう。 従って、複数ホスト上で動作させる際には、実装の以前にどのような 仕様にするのかまず考慮する必要があります。