web-dev-qa-db-ja.com

PAMでの認証にカスタムスクリプトを使用することは可能ですか?

ユーザーが自分のRailsアプリケーションの資格情報をsftpアカウントへのログインに使用できるようにしたい。正しく理解していれば、どういうわけかこれにPAMを使用する必要があります。しかし、その方法に関する情報が見つかりませんでした。この?

4
retro

pam_exec 外部プログラムを使用してパスワードを検証できます。

3
ptman

必要に応じて、独自のPAMモジュールを作成できます。しかし、他の解決策はおそらくより良いでしょう。ここでサンプルPAMモジュールをチェックしてください: http://www.freebsd.org/doc/en/articles/pam/pam-sample-module.html

3
Michael Mior

この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を使用するスクリプトを実行することもできます。たくさんの選択肢があります。

http://www.kernel.org/pub/linux/libs/pam/modules.html

1
CarpeNoctem