4

mod_sql_mysqlバックエンドを使用するように ProFTPD をセットアップしました。ユーザーを SQL データベースに挿入するまで、すべてが正常に機能します。そのために次のクエリを使用しました。

INSERT INTO `auth`.`users` (`userid`, `passwd`, `uid`, `gid`, `homedir`, `shell`)
 VALUES ('username', ENCRYPT('bluefish'), '999', '999', '/dev/zero', '/bin/laden');

"bluefish"アカウントに問題なくログインできますが、ソルトが提供されていない場合、MySQL はランダムなソルトを使用するため、ProFTPD が暗号化されたパスワードを読み取る方法が本当にわかりません。ENCRYPT('bluefish')これにより、 ProFTPD が MySQL バックエンドを使用してパスワードがデータベース内の 1 つのエントリと一致するかどうかを確認するたびに、異なる出力が得られるはずです。

しかし、それはうまく機能します。ProFTPD はどのソルトが使用されたかをどのように知ることができますか?

4

1 に答える 1