Top過去ログ目次掲示板

作成日:2004年11月30日 作成:おやじ
掲示板で過去に質問された内容です。

No.3990 Proftpd1.2.10のPAM認証について


No.3990 投稿時間:2004年11月30日(Tue) 19:05 投稿者名:マッドアングラー URL:
タイトル:Proftpd1.2.10のPAM認証について

はじめまして

おやじ様のページを参考にProftpd1.2.9をインストールした者です。
そろそろ1.2.10にバージョンアップしようとしたのですが、
PAM認証の部分でエラーが表示されます。

SmartFTPで接続時のエラー
220 ProFTPD 1.2.10 Server (ProFTPD) []
AUTH TLS
500 AUTH not understood

proftpd.confには以下を記載しています。
AuthPAM on
AuthPAMAuthoritative on
AuthPAMConfig ftp
注:proftpd.confは1.2.9を使いまわし。

/etc/pam.d/ftpの内容
#%PAM-1.0
auth required /lib/security/pam_pwdb.so shadow nullok
account required /lib/security/pam_pwdb.so
session required /lib/security/pam_pwdb.so
注:おやじ様の指示と違っていますが、1.2.9では動きました。


PAM認証設定は苦し紛れで作りました。正直よく分かっておりません。
不躾なお願いなのですが、ご教授の程宜しくお願いします。


No.3991 投稿時間:2004年11月30日(Tue) 21:05 投稿者名:おやじ URL:http://http://www.aconus.com/~oyaji/
タイトル:ProFTPDがTLS対応できていないためにでるエラーです。

> そろそろ1.2.10にバージョンアップしようとしたのですが、
> PAM認証の部分でエラーが表示されます。
>
> SmartFTPで接続時のエラー
> 220 ProFTPD 1.2.10 Server (ProFTPD) []
> AUTH TLS
> 500 AUTH not understood

このエラーはPAM以前の話で、ProFTPDがTLS対応できていないためにでるエラーです。
証明書等はそのままだと思いますから、RPM作成時に「--with mod_tls」を付け忘れたりしてませんか?

> proftpd.confには以下を記載しています。
> AuthPAM on
> AuthPAMAuthoritative on
> AuthPAMConfig ftp
> 注:proftpd.confは1.2.9を使いまわし。
>
> /etc/pam.d/ftpの内容
> #%PAM-1.0
> auth required /lib/security/pam_pwdb.so shadow nullok
> account required /lib/security/pam_pwdb.so
> session required /lib/security/pam_pwdb.so
> 注:おやじ様の指示と違っていますが、1.2.9では動きました。

 上記は問題ありません。ソースにあるftp.pamdを使うと、ftpusersによる制御が効きますが、それができないだけですから。


No.3993 投稿時間:2004年12月01日(Wed) 10:45 投稿者名:マッドアングラー URL:
タイトル:Re: ProFTPDがTLS対応できていないためにでるエラーです。

おやじ様

ご返答有難うございます。

1.2.9の時にPAM認証で苦労したので、思い込みをしていました。
make時にmoduleエラーが出ております。
どうやらmod_tlsを組み込めていないようです。
make時エラーは以下の通りです。

環境はRedhat9、カーネル2.4.20です。
宜しくお願いします。

cc -DLINUX -I.. -I../include -I/usr/include/openssl -O2 -Wall -c mod_tls.c
/usr/include/openssl/ssl.h:179 から include されたファイル中,
mod_tls.c:40 から:
/usr/include/openssl/kssl.h:72:18: krb5.h: そのようなファイルやディレクトリはありませ

/usr/include/openssl/ssl.h:179 から include されたファイル内,
mod_tls.c:40 から:
/usr/include/openssl/kssl.h:132: 構文解析エラー が "krb5_enctype" の前にあります
/usr/include/openssl/kssl.h:134: 構文解析エラー が "FAR" の前にあります
/usr/include/openssl/kssl.h:135: 構文解析エラー が '}' トークンの前にあります
/usr/include/openssl/kssl.h:147: 構文解析エラー が "kssl_ctx_setstring" の前にあります
/usr/include/openssl/kssl.h:147: 構文解析エラー が '*' トークンの前にあります
/usr/include/openssl/kssl.h:148: 構文解析エラー が '*' トークンの前にあります
/usr/include/openssl/kssl.h:149: 構文解析エラー が '*' トークンの前にあります
/usr/include/openssl/kssl.h:149: 構文解析エラー が '*' トークンの前にあります
/usr/include/openssl/kssl.h:150: 構文解析エラー が '*' トークンの前にあります
/usr/include/openssl/kssl.h:151: 構文解析エラー が "kssl_ctx_setprinc" の前にあります
/usr/include/openssl/kssl.h:151: 構文解析エラー が '*' トークンの前にあります
/usr/include/openssl/kssl.h:153: 構文解析エラー が "kssl_cget_tkt" の前にあります
/usr/include/openssl/kssl.h:153: 構文解析エラー が '*' トークンの前にあります
/usr/include/openssl/kssl.h:155: 構文解析エラー が "kssl_sget_tkt" の前にあります
/usr/include/openssl/kssl.h:155: 構文解析エラー が '*' トークンの前にあります
/usr/include/openssl/kssl.h:157: 構文解析エラー が "kssl_ctx_setkey" の前にあります
/usr/include/openssl/kssl.h:157: 構文解析エラー が '*' トークンの前にあります
/usr/include/openssl/kssl.h:159: 構文解析エラー が "context" の前にあります
/usr/include/openssl/kssl.h:160: 構文解析エラー が "kssl_build_principal_2" の前にあります
/usr/include/openssl/kssl.h:160: 構文解析エラー が "context" の前にあります
/usr/include/openssl/kssl.h:163: 構文解析エラー が "kssl_validate_times" の前にあります
/usr/include/openssl/kssl.h:163: 構文解析エラー が "atime" の前にあります
/usr/include/openssl/kssl.h:165: 構文解析エラー が "kssl_check_authent" の前にあります
/usr/include/openssl/kssl.h:165: 構文解析エラー が '*' トークンの前にあります
/usr/include/openssl/kssl.h:167: 構文解析エラー が "enctype" の前にあります
mod_tls.c:40 から include されたファイル内:
/usr/include/openssl/ssl.h:909: 構文解析エラー が "KSSL_CTX" の前にあります
/usr/include/openssl/ssl.h:931: 構文解析エラー が '}' トークンの前にあります
make[1]: *** [mod_tls.o] エラー 1
make[1]: 出ます ディレクトリ `/usr/local/src/proftpd-1.2.10/modules'
make: *** [modules] エラー 2


No.3994 投稿時間:2004年12月01日(Wed) 16:22 投稿者名:マッドアングラー URL:
タイトル:解決しました

自己レスです。

過去ログを見ておりましたら、2004/11/04にnoda様の記事に
回答がありました。
/usr/include/opensslを自サーバのssl(私の環境では
/usr/local/ssl/include/openssl)にコピーしたら
解決しました。
インストールを無事に完了し、接続も問題ないです。

有難うございました。
今後とも参考にさせていただきます。


No.3997 投稿時間:2004年12月01日(Wed) 21:42 投稿者名:おやじ URL:http://http://www.aconus.com/~oyaji/
タイトル:コピーはやめたほうがいいのでは?

> 過去ログを見ておりましたら、2004/11/04にnoda様の記事に
> 回答がありました。
> /usr/include/opensslを自サーバのssl(私の環境では
> /usr/local/ssl/include/openssl)にコピーしたら
> 解決しました。
> インストールを無事に完了し、接続も問題ないです。

上記スレも最終的にはコピーしていないはずです。
コピーは、止めたほうがいいのでのではないでしょうか? 
nadaさんの時にも書きましたが、Apacheでも問題になるのと同じ理由で、原因は、RedHat9 の場合、openssl が Kerberos サポートの状態でコンパイルされていて、kerberos のヘッダが何故か /usr/kerberos/include にあるためにmake でエラーが発生していると思います。

作業前に、

# export CPPFLAGS=-I/usr/kerberos/include

とやるか、proftpd.specにHPの内容以外に下記のように一行追加すればうまくいくはず。

%endif
  MODULES="mod_ratio:mod_readme"
  MODULES="${MODULES}%{?_with_mod_tls::mod_tls}"
  MODULES="${MODULES}%{?_with_mod_radius::mod_radius}"
  MODULES="${MODULES}%{?_with_mod_ldap::mod_ldap}"
  MODULES="${MODULES}%{?_with_mod_wrap::mod_wrap}"
  MODULES="${MODULES}%{?_with_mod_sql::mod_sql}"
  MODULES="${MODULES}%{?_with_mod_sql_mysql::mod_sql_mysql}"
  MODULES="${MODULES}%{?_with_mod_sql_postgres::mod_sql_postgres}"
  MODULES="${MODULES}%{?_with_mod_rewrite::mod_rewrite}"
  MODULES="${MODULES}%{?_with_mod_ifsession::mod_ifsession}"
  CPPFLAGS="-I/usr/kerberos/include" \           <---追加
  CFLAGS="$RPM_OPT_FLAGS" ./configure \
	--prefix=%{prefix} \
	--sysconfdir=/etc \
	--localstatedir=/var/run \
	--mandir=%_mandir \
	%{?_with_mod_tls:--with-includes=/usr/kerberos/include} \
	%{?_with_mod_sql_mysql:--with-includes=/usr/include/mysql} \
	%{?_with_ipv6:--enable-ipv6} \
	--with-modules=${MODULES}



掲示板▲頁先頭