FTPログイン時に「PAM unable to dlopen」のエラーが出たときにやったこと

高瀬 裕介 888views 更新:2014年11月18日

Plesk 11 + CentOS 6環境に移行したらFTPログインで認証が通らなくてログインできなくなった。/var/log/secureを確認すると↓みたいなログが残ってる。

proftpd: PAM unable to dlopen(/lib64/security/pam_stack.so): /lib64/security/pam_stack.so: cannot open shared object file: No such file or directory

そんな時は「/etc/pam.d/proftpd」を編集する。

cp -p /etc/pam.d/proftpd{,.default}
vi /etc/pam.d/proftpd
---
#%PAM-1.0
auth       required     pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
auth       required     pam_stack.so service=system-auth
auth       required     pam_shells.so
account    required     pam_stack.so service=system-auth
session    required     pam_stack.so service=system-auth

↓

#%PAM-1.0
auth       required     pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
auth       include      system-auth service=system-auth
auth       required     pam_shells.so
account    include      system-auth service=system-auth
session    required     pam_loginuid.so
---

具体的な変更箇所としては

(1)「required pam_shells.so」という箇所を全て「include system-auth」に変更する。

(2)「session」の行は下記のように変更する。

session    required     pam_stack.so service=system-auth
     ↓
session    required     pam_loginuid.so

最後にxinetdを再起動してProftpdに設定を再読込させる。

service xinetd restart

なお、PLESK 11にしたらFTPクライアント側でも調整が必要になる模様。

http://ex-cloud.jp/support/question/q-630 (FFFTP)

http://www.aconus.com/~oyaji/centos/proftpd_centos.htm (Filezilla、SmartFTP等)

【参考サイト】

http://blog.be-dama.com/2013/06/06/centos6%E3%81%AEproftpd%E3%81%AB%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3%E5%87%BA%E6%9D%A5%E3%81%AA%E3%81%84%E3%80%82/

http://www.psl.ne.jp/blog/?p=397

http://www.dontwalk.org/archives/310

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません