ユーザーが自分のRailsアプリケーションの資格情報をsftpアカウントへのログインに使用できるようにしたい。正しく理解していれば、どういうわけかこれにPAMを使用する必要があります。しかし、その方法に関する情報が見つかりませんでした。この?
pam_exec 外部プログラムを使用してパスワードを検証できます。
必要に応じて、独自のPAMモジュールを作成できます。しかし、他の解決策はおそらくより良いでしょう。ここでサンプルPAMモジュールをチェックしてください: http://www.freebsd.org/doc/en/articles/pam/pam-sample-module.html
このRails情報がmysqldbaseにある場合は、pam_mysqlを構成できます。ほぼすべてのpamモジュールがあります。
これが私がmysqlで持っているftp用のものです:
session optional pam_keyinit.so force revoke
auth required pam_listfile.so item=user sense=allow file=/etc/vsftpd/ftpusers onerr=fail
auth sufficient pam_mysql.so user=virt_admin passwd=PASS Host=localhost db=DBNAME table=TABLENAME usercolumn=USERNAMECOL passwdcolumn=PASSCOL crypt=3
auth required pam_shells.so
auth include system-auth
account sufficient pam_mysql.so user=virt_admin passwd=PASS Host=localhost db=DBNAME table=TABLENAME usercolumn=USERNAMECOL passwdcolumn=PASSCOL crypt=3
account include system-auth
session include system-auth
session required pam_loginuid.so
また、username:passwordsを定期的にファイルにダンプしてpam_pwdfileを使用するスクリプトを実行することもできます。たくさんの選択肢があります。