-PR-
解決
済み

OpenLDAPを使ったFTPについて

  • すぐに回答を!
  • 質問No.5533797
  • 閲覧数952
  • ありがとう数11
  • 気になる数0
  • 回答数8
  • コメント数0

お礼率 33% (20/60)

OpenLDAPを使ったFTP転送について質問があります。
Solarisマシン2台の環境で、1台のマシンにOpenLDAPサーバとFTPサーバを立てています。
もう1台をクライアントとして、クライアントからはLDAP認証でログインはできます。dirコマンドを実行した所、下記のところで止まっています。
ftp> dir
200 PORT command successful
150 Opening ASCII mode data connection for file list

また、WindowsからFFFTPを使用したら、ログインは出来たのですが、サーバ側の方には、なにも表示されませんでした。サーバ側には、ユーザのホームディレクトリはあります。
色々、ネットで調べて設定はしてみたのですが、結局うまくいきませんがでした。勉強不足で申し訳ありませんが、教えて頂けたら、幸いです。
FTPには、 ProFTPD 1.3.2を使用しています。
よろしくお願いします。

proftp.conf
ServerType inetd
DefaultServer on
Port 21
UseIPv6 off
Umask 022
MaxInstances 30
User nobody
Group nobody
AllowOverwrite on
RootLogin off
ListOptions "-a"
DefaultRoot ~
<Limit LOGIN>
Order allow, deny
Allow from 127.0.0.1, 192.168.24.0/24
Deny from all
</Limit LOGIN>
LDAPServer "192.168.24.52"
LDAPAuthBinds on
LDAPDoAuth on "ou=People,dc=solaristest,dc=com"
LDAPDoGIDLookups on "ou=Group,dc=solaristest,dc=com"
LDAPDoUIDLookups on "ou=People,dc=solaristest,dc=com"

pam.conf
login auth requisite pam_authtok_get.so.1
login auth required pam_dhkeys.so.1
login auth required pam_dial_auth.so.1
login auth required pam_unix_cred.so.1
login auth sufficient pam_unix_auth.so.1
login auth required pam_ldap.so.1
#
# rlogin service (explicit because of pam_rhost_auth)
#
rlogin auth sufficient pam_rhosts_auth.so.1
rlogin auth requisite pam_authtok_get.so.1
rlogin auth required pam_dhkeys.so.1
rlogin auth required pam_unix_cred.so.1
rlogin auth sufficient pam_unix_auth.so.1
rlogin auth required pam_ldap.so.1
#
# rsh service (explicit because of pam_rhost_auth,
# and pam_unix_auth for meaningful pam_setcred)
#
rsh auth sufficient pam_rhosts_auth.so.1
rsh auth required pam_unix_cred.so.1
#
# PPP service (explicit because of pam_dial_auth)
#
ppp auth requisite pam_authtok_get.so.1
ppp auth required pam_dhkeys.so.1
ppp auth required pam_dial_auth.so.1
ppp auth sufficient pam_unix_auth.so.1
ppp auth required pam_ldap.so.1
#
# Default definitions for Authentication management
# Used when service name is not explicitly mentioned for authentication
#
other auth requisite pam_authtok_get.so.1
other auth required pam_dhkeys.so.1
other auth required pam_unix_cred.so.1
other auth sufficient pam_unix_auth.so.1
other auth required pam_ldap.so.1
#
# passwd command (explicit because of a different authentication module)
#
passwd auth sufficient pam_passwd_auth.so.1
passwd auth required pam_ldap.so.1
#
# cron service (explicit because of non-usage of pam_roles.so.1)
#
cron account required pam_unix_account.so.1
#
# Default definition for Account management
# Used when service name is not explicitly mentioned for account management
#
other account requisite pam_roles.so.1
other account required pam_unix_account.so.1
#
# Default definition for Session management
# Used when service name is not explicitly mentioned for session management
#
other session required pam_unix_session.so.1
#
# Default definition for Password management
# Used when service name is not explicitly mentioned for password
通報する
  • 回答数8
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.5
レベル10

ベストアンサー率 87% (87/100)

ProFTPD のログをよく見てみたら、LDAPDNInfo で dn と passwd を(空文字でもかまわないので)設定しないと、以下のようにプロセスが異常終了していました。

Dec 23 14:47:55 xxxx proftpd[13631]: xxxx (xxxx[192.168.1.65]) - ProFTPD terminating (signal 11)

ソースファイル mod_ldap.c を確認したところ、やはり LDAPDNInfo で dn と passswd を設定しないとプロセスが異常終了するようなコードになってました。
ソースでは dn: 変数 ldap_dn, passwd: 変数 ldap_dnpass になっており、初期値は以下の通り NULL(0) です。

136 static char *ldap_server_url, *ldap_dn, *ldap_dnpass,

proftpd.conf に LDAPDNInfo が設定されていれば、以下のコードで値が設定されますが、LDAPDNInfo が設定されていないと NULL のままです。

1929 if ((c = find_config(main_server->conf, CONF_PARAM, "LDAPDNInfo", FALSE)) != NULL) {
1930 ldap_dn = pstrdup(session.pool, c->argv[0]);
1931 ldap_dnpass = pstrdup(session.pool, c->argv[1]);
1932 }

そして、NULL のまま以下のコードが実行されるので、異常終了します。

267 if (do_bind == TRUE) {
268 #if LDAP_API_VERSION >= 2000
269 bindcred.bv_val = ldap_dnpass;
270 bindcred.bv_len = ldap_dnpass != NULL ? strlen(ldap_dnpass) : 0;
271 ret = ldap_sasl_bind_s(*conn_ld, ldap_dn, NULL, &bindcred, NULL, NULL, NULL);

ということで、dir で止まる原因は LDAPDNInfo を設定していないためだと思いますけど。
-PR-
-PR-

その他の回答 (全7件)

  • 回答No.2
レベル10

ベストアンサー率 87% (87/100)

# 引用が前後します。 >> Solaris 付属の FTPサーバではどうなりますか? > mod_ldap の設定をしていない場合と同じ現象になっています。 LDAP に登録されているユーザが FTP でログインできないということは、FTP サーバをしているホストの LDAP クライアントホストの設定が正しく行われていないということになります。 念のために確認します ...続きを読む
# 引用が前後します。

>> Solaris 付属の FTPサーバではどうなりますか?
> mod_ldap の設定をしていない場合と同じ現象になっています。

LDAP に登録されているユーザが FTP でログインできないということは、FTP サーバをしているホストの LDAP クライアントホストの設定が正しく行われていないということになります。

念のために確認しますが、質問の pam.conf は FTP サーバをしているホストのものなのですよね?
(つまり FTP サーバであり、かつ LDAP クライアントホストでもあるのですよね?)

> >ホームディレクトリのオーナやパーミッションは問題ないですか?
> 所有者をrootグループをOtherで、パーミッション777にしていますが、ここが問題ですか?もし、ここが問題であれば、ホームディレクトリを作成後、LDAPサーバに登録されているユーザは、/etc/passwdに存在しないので、所有者を設定できません。そうなると、LDAPユーザで認証し FTP転送ができないと言うことになりますよね?

上記の意味がよく分かりません。
FTP サーバをしているホストが、LDAP クライアントホストとしても設定されていれば、ユーザ情報は LDAP サーバからも得られますので、LDAP サーバに登録されているユーザでもホームディレクトリに所有者として設定できますけど。
補足コメント
hironona

お礼率 33% (20/60)

>念のために確認しますが、質問の pam.conf は FTP サーバをしているホストのものなのですよね?
(つまり FTP サーバであり、かつ LDAP クライアントホストでもあるのですよね?)

はい、そうです。

>上記の意味がよく分かりません。
FTP サーバをしているホストが、LDAP クライアントホストとしても設定されていれば、ユーザ情報は LDAP サーバからも得られますので、LDAP サーバに登録されているユーザでもホームディレクトリに所有者として設定できますけど。

申し訳ありません。ホームディレクトリに所有者をLDAPユーザとして設定できます。勉強不足でした。
ホームディレクトリに所有者をLDAPユーザに登録しました。
Proftpd側でmod_ldap の設定した場合にLDAPサーバに登録しているユーザは、ログインしたら、CPUが上がり、プロセスを強制終了後、ファイルの一覧の取得に失敗と表示されるが、ファイルの転送ボタンが押せるようになります。Proftpdの設定がよくないってことですよね?
mod_ldap の設定する必要がないと確かに下記のURLでも書いてあってPAMのみでOK。
http://gihyo.jp/admin/serial/01/ldap/0004?page=1

mod_ldap の設定をしないと、FTPでLDAPユーザで認証ができない
LDAP クライアントホストの設定は、問題ないと思うんですが。
NS_LDAP_FILE_VERSION= 2.0
NS_LDAP_SERVERS= 192.168.24.52
NS_LDAP_SEARCH_BASEDN= dc=solaristest,dc=com
NS_LDAP_CACHETTL= 0
NS_LDAP_SERVICE_AUTH_METHOD= pam_ldap:simple
投稿日時 - 2009-12-20 18:26:10
  • 回答No.3
レベル10

ベストアンサー率 87% (87/100)

> Proftpd側でmod_ldap の設定した場合にLDAPサーバに登録しているユーザは、ログインしたら、CPUが上がり、プロセスを強制終了後、ファイルの一覧の取得に失敗と表示されるが、ファイルの転送ボタンが押せるようになります。Proftpdの設定がよくないってことですよね? > mod_ldap の設定する必要がないと確かに下記のURLでも書いてあってPAMのみでOK。 > ...続きを読む
> Proftpd側でmod_ldap の設定した場合にLDAPサーバに登録しているユーザは、ログインしたら、CPUが上がり、プロセスを強制終了後、ファイルの一覧の取得に失敗と表示されるが、ファイルの転送ボタンが押せるようになります。Proftpdの設定がよくないってことですよね?
> mod_ldap の設定する必要がないと確かに下記のURLでも書いてあってPAMのみでOK。
> mod_ldap の設定をしないと、FTPでLDAPユーザで認証ができない

No.1 の回答で以下のように書きましたが、ProFTPD の mod_auth_pam は LDAP 認証には対応していないみたいですね。
すみません。

> ProFTPD は標準で PAM が有効になるので、mod_ldap の設定は必要ないのではないかと思います。

ProFTPD で LDAP 認証するためには、やはり mod_ldap を使う必要があるようです。
なお、手元の環境で確認してみたところでは LDAP ユーザで FTP 認証をさせるためには proftpd.conf に以下ように LDAPDNInfo の設定が必要でした。

LDAPDNInfo "" ""

ちなみに私の環境では ftp コマンドの dir で固まるなどの現象は発生していません。
なお、当方の proftpd -V の出力は以下の通りです。

----ここから----
/usr/local/sbin/proftpd -V
Compile-time Settings:
Version: 1.3.2 (stable)
Platform: SOLARIS2 (SOLARIS2_10)
Built: Mon Dec 21 22:05:31 JST 2009
Built With:
configure '--with-modules=mod_ldap' 'CC=/usr/sfw/bin/gcc' 'LDFLAGS=-L/usr/local/lib -R/usr/local/lib -R/usr/local/ssl/lib' 'CPPFLAGS=-I/usr/local/include -I/usr/local/ssl/include'

CFLAGS: -O2 -Wall
LDFLAGS: -L$(top_srcdir)/lib -L/usr/local/lib -R/usr/local/lib -R/usr/local/ssl/lib
LIBS: -lsendfile -lldap -llber -lpam -lsupp -lsocket -lnsl -lresolv

Files:
Configuration File:
/usr/local/etc/proftpd.conf
Pid File:
/usr/local/var/proftpd.pid
Scoreboard File:
/usr/local/var/proftpd/proftpd.scoreboard

Features:
- Autoshadow support
- Controls support
+ curses support
- Developer support
- DSO support
+ IPv6 support
+ Largefile support
- Lastlog support
+ ncurses support
- NLS support
- OpenSSL support
- POSIX ACL support
+ Shadow file support
+ Sendfile support
+ Trace support

Tunable Options:
PR_TUNABLE_BUFFER_SIZE = 1024
PR_TUNABLE_GLOBBING_MAX = 8
PR_TUNABLE_HASH_TABLE_SIZE = 40
PR_TUNABLE_NEW_POOL_SIZE = 512
PR_TUNABLE_SCOREBOARD_BUFFER_SIZE = 80
PR_TUNABLE_SCOREBOARD_SCRUB_TIMER = 30
PR_TUNABLE_SELECT_TIMEOUT = 30
PR_TUNABLE_TIMEOUTIDENT = 10
PR_TUNABLE_TIMEOUTIDLE = 600
PR_TUNABLE_TIMEOUTLINGER = 30
PR_TUNABLE_TIMEOUTLOGIN = 300
PR_TUNABLE_TIMEOUTNOXFER = 300
PR_TUNABLE_TIMEOUTSTALLED = 3600
PR_TUNABLE_XFER_SCOREBOARD_UPDATES = 10
----ここまで----

それから、混乱させてしまい申し訳ありませんが、ProFTPD の PAM は LDAP に対応していないので、ProFTPD を使用する分には LDAP クライアントホストの設定は必要ありません。
(Solaris 付属の FTP サーバでは LDAP クライアントホストの設定は必要です。)
補足コメント
hironona

お礼率 33% (20/60)

xinuさん、

ご返答ありがとうございます。
>ProFTPD で LDAP 認証するためには、やはり mod_ldap を使う必要があるようです。
>なお、手元の環境で確認してみたところでは LDAP ユーザで FTP 認証をさせるためには proftpd.conf に以下ように LDAPDNInfo の設定が必要でした。
>
>LDAPDNInfo "" ""

LDAPDNInfoについて質問があります。
ProFTPDソースのREADME.LDAPにはLDAPDNInfoの指定をみると
LDAPDNInfo cn=your-dn,dc=example,dc=com dnpass
記載されていますが、 cn=your-dn、dnpassの部分は、管理者の情報を記述するのですか?パスワードの指定もありますし、セキュリティ上良くないような感じもしますか?この設定は、必要なんでしょうか?
間違っていたら申し訳ありませんが、ネットで調べたら、dnpassは、平文で記述が必要なことがあったような感じがします。
Proftpd.confにはLDAPDNInfoの設定をしないのとAuthPAM offの設定で、確認した結果、LDAPユーザでの認証を確認しました。

>(Solaris 付属の FTP サーバでは LDAP クライアントホストの設定は必要です。)

こちらの方の確認は、明日までには、確認したいと思います。
投稿日時 - 2009-12-23 00:24:20
  • 回答No.8
レベル10

ベストアンサー率 87% (87/100)

> 当初は、Proftpdがインストールされているマシンを、 LDAP クライアントとして構成されていたので、LDAPクライアントの構成なしで、確認すると > dirで固まる現象は、回避されましたが、LDAPクライアントを構成した場合に、LDAPDNInfo "" ""を設定した状態で確認すると、dirで固まります。 > 私のマシンの環境に問題 ...続きを読む
> 当初は、Proftpdがインストールされているマシンを、 LDAP クライアントとして構成されていたので、LDAPクライアントの構成なしで、確認すると
> dirで固まる現象は、回避されましたが、LDAPクライアントを構成した場合に、LDAPDNInfo "" ""を設定した状態で確認すると、dirで固まります。
> 私のマシンの環境に問題があるのかもしれませんが。

私の No.5 の回答は読んでいますか?
LDAP クライアントホストの設定によらず、コード上からも LDAPDNInfo の設定は必要です。
また、dir で固まる時の ProFTPD のログは確認していますか?
dir で固まる場合、inetd から起動された ProFTPD が異常終了しているはずですけど。

>>(Solaris 付属の FTP サーバでは LDAP クライアントホストの設定は必要です。)
>こちらで、解決できるのであれば、LDAP クライアントホスト構成でFTPが正常に利用できる形で、今ご指導させていただいています。

Solaris 付属の FTP サーバの件については、直接 ProFTPD とは関係のないことですよね。
2つの問題を1つの質問で同時進行させると分かりづらく混乱の原因になるので、Solaris 付属の FTP サーバの件は、新たに別の質問として投稿してほしいです。
私はこれ以上この質問で Solaris 付属の FTP サーバの件に回答するつもりはありません。
お礼コメント
hironona

お礼率 33% (20/60)

>LDAP クライアントホストの設定によらず、コード上からも LDAPDNInfo の設定は必要です。
>また、dir で固まる時の ProFTPD のログは確認していますか?
dir で固まる場合、inetd から起動された ProFTPD が異常終了しているはずですけど。

/etc/hostsの書き換えたのとIPアドレスを固定にしたことによって
dirで固まる現象は、なくなりましたが、LDAP認証でのFTPログインが
まったくできなくなったので、新たに新規投稿で聞いてみます。
ありがとうございました。

>Solaris 付属の FTP サーバの件については、直接 ProFTPD とは関係のないことですよね。

当初の質問内容とは、異なった質問をしてしまって申し訳ありませんでした。
投稿日時 - 2009-12-25 02:25:33
  • 回答No.7
レベル10

ベストアンサー率 87% (87/100)

確認なのですが、当初の質問の dir で止まる現象はまだ解決していないということなのでしょうか? > svcs -xv ftp > svc:/network/ftp:default (FTP server) > 状態: 2009年12月23日 (水) 19時45分28秒 以降maintenanceです > 原因: リスタータ svc:/network/inetd:def ...続きを読む
確認なのですが、当初の質問の dir で止まる現象はまだ解決していないということなのでしょうか?

> svcs -xv ftp
> svc:/network/ftp:default (FTP server)
> 状態: 2009年12月23日 (水) 19時45分28秒 以降maintenanceです
> 原因: リスタータ svc:/network/inetd:default に説明がありません。
> 参照: ​http://sun.com/msg/SMF-8000-9C
> 参照: man -M /usr/share/man -s 1M in.ftpd
> 参照: man -M /usr/share/man -s 1M ftpd

確認ですが、proftp.conf で ServerType inetd としているということは、ProFTPD も inetd 経由で動かしているのですよね。
Sun 付属の FTP サーバを有効にしようとしている際に、ProFTPD も有効になってしまっているということはないですか?

また、inetd 経由で ProFTPD を動かすようにするためにどのような設定を行いましたか?

>>domainName=dc=solaristest,dc=com ですよね?
>Sunのマニュアルには、domainName=dc=example.co.jpの形式だったので
>すが、domainName=dc=solaristest,dc=com の形式に変えて再度してみた
>ところ、結果は、同じでした。

Sun のマニュアルの ldapclient コマンドの実行例が一部間違ってますね。
そして先の私の回答も間違ってますね。すみません。
正しくは、
domainName=solaristest.com
です。(dc= はいらない。)
詳細は man ldapclient としてマニュアルページを参照して下さい。
補足コメント
hironona

お礼率 33% (20/60)

>確認なのですが、当初の質問の dir で止まる現象はまだ解決していないということなのでしょうか?

dirで止まる現象は原因が、まだ特定できていないですが、xinuさんが言われてた、
>それから、混乱させてしまい申し訳ありませんが、ProFTPD の PAM は LDAP に対応していないので、ProFTPD を使用する分には LDAP クライアントホストの設定は必要ありません。

当初は、Proftpdがインストールされているマシンを、 LDAP クライアントとして構成されていたので、LDAPクライアントの構成なしで、確認すると
dirで固まる現象は、回避されましたが、LDAPクライアントを構成した場合に、LDAPDNInfo "" ""を設定した状態で確認すると、dirで固まります。
私のマシンの環境に問題があるのかもしれませんが。

>(Solaris 付属の FTP サーバでは LDAP クライアントホストの設定は必要です。)

こちらで、解決できるのであれば、LDAP クライアントホスト構成でFTPが正常に利用できる形で、今ご指導させていただいています。

>確認ですが、proftp.conf で ServerType inetd としているということは、ProFTPD も inetd 経由で動かしているのですよね。
Sun 付属の FTP サーバを有効にしようとしている際に、ProFTPD も有効になってしまっているということはないですか?

Solarisマシン2台あった1台を再インストールし、Sun 付属の FTP サーバのみの構成にしたマシンで確認しています。
投稿日時 - 2009-12-23 23:36:37
  • 回答No.4
レベル10

ベストアンサー率 87% (87/100)

>>LDAPDNInfo "" "" > LDAPDNInfoについて質問があります。 > ProFTPDソースのREADME.LDAPにはLDAPDNInfoの指定をみると > LDAPDNInfo cn=your-dn,dc=example,dc=com dnpass > 記載されていますが、 cn=your-dn、d ...続きを読む
>>LDAPDNInfo "" ""
> LDAPDNInfoについて質問があります。
> ProFTPDソースのREADME.LDAPにはLDAPDNInfoの指定をみると
> LDAPDNInfo cn=your-dn,dc=example,dc=com dnpass
> 記載されていますが、 cn=your-dn、dnpassの部分は、管理者の情報を記述するのですか?パスワードの指定もありますし、セキュリティ上良くないような感じもしますか?この設定は、必要なんでしょうか?

何か認識違いをされているようですが、私が設定したのは「LDAPDNInfo "" ""」です。
つまり、dn, passwd とも設定していません。
ProFTPD のマニュアル mod_ldap.html には「LDAPDNInfo "" "」がデフォルトの設定なので明示的に設定する必要はないような記述がありますが、私の環境では明示的に設定する必要があったということです。

> 間違っていたら申し訳ありませんが、ネットで調べたら、dnpassは、平文で記述が必要なことがあったような感じがします。

確かに平文のパスワードを proftpd.conf に書いておくのはセキュリティ的には好ましいとは言えませんが、それはファイルのパーミッションの設定で解決するのではないでしょうか?
(root 以外は読み取り不可にするとか)

あと蛇足ですが、セキュリティのことを気にするのでしたら、以下の設定は問題ありますよね。
平分のパスワードがネットワーク上を流れてしまいますけど...

・ProFTPD
LDAPUseSSL、LDAPUseTLS を設定しないと、ともにデフォルトでは off

・LDAP クライアント
NS_LDAP_SERVICE_AUTH_METHOD= pam_ldap:simple
補足コメント
hironona

お礼率 33% (20/60)

>何か認識違いをされているようですが、私が設定したのは「LDAPDNInfo "" ""」です。
つまり、dn, passwd とも設定していません。
>ProFTPD のマニュアル mod_ldap.html には「LDAPDNInfo "" "」がデフォルトの設定なので明示的に設定する必要はないような記述がありますが、私の環境では明示的に設定する必要があったということです。

申し訳ありません。認識違いでした。

>(Solaris 付属の FTP サーバでは LDAP クライアントホストの設定は必要です。)

LDAPクライアントを設定した状態で、確認したところ、Solaris付属のFTPのサービスがmaintenanceになります。構成する前は、オンラインでした。
実行コマンド
ldapclient manual \
-a domainName=dc=solaristest.com \
-a serviceAuthenticationMethod=pam_ldap:simple \
-a defaultSearchBase=dc=solaristest,dc=com \
192.168.24.52
投稿日時 - 2009-12-23 16:30:50
  • 回答No.6
レベル10

ベストアンサー率 87% (87/100)

# なんか今となっては、当初の質問とは直接関係ないことのような気がしますが.... > LDAPクライアントを設定した状態で、確認したところ、Solaris付属のFTPのサービスがmaintenanceになります。構成する前は、オンラインでした。 svcs -xv ftp の結果はどうなりますか? > 実行コマンド > ldapclient manual \ > ...続きを読む
# なんか今となっては、当初の質問とは直接関係ないことのような気がしますが....

> LDAPクライアントを設定した状態で、確認したところ、Solaris付属のFTPのサービスがmaintenanceになります。構成する前は、オンラインでした。

svcs -xv ftp の結果はどうなりますか?

> 実行コマンド
> ldapclient manual \
> -a domainName=dc=solaristest.com \
> -a serviceAuthenticationMethod=pam_ldap:simple \
> -a defaultSearchBase=dc=solaristest,dc=com \
> 192.168.24.52

単なる typo なんじゃないですか?
domainName=dc=solaristest,dc=com ですよね?
補足コメント
hironona

お礼率 33% (20/60)

>svcs -xv ftp の結果はどうなりますか?

以下になります。
svcs -xv ftp
svc:/network/ftp:default (FTP server)
状態: 2009年12月23日 (水) 19時45分28秒 以降maintenanceです
原因: リスタータ svc:/network/inetd:default に説明がありません。
参照: http://sun.com/msg/SMF-8000-9C
参照: man -M /usr/share/man -s 1M in.ftpd
参照: man -M /usr/share/man -s 1M ftpd

>単なる typo なんじゃないですか?
>domainName=dc=solaristest,dc=com ですよね?

Sunのマニュアルには、domainName=dc=example.co.jpの形式だったので
すが、domainName=dc=solaristest,dc=com の形式に変えて再度してみた
ところ、結果は、同じでした。
後、ログに以下のメッセージがありました。
Dec 23 19:45:28 solaris10 inetd[354]: [ID 702911 daemon.error] Property 'proto' of instance svc:/network/ftp:default is missing, inconsistent or invalid
Dec 23 19:45:28 solaris10 inetd[354]: [ID 702911 daemon.error] Invalid configuration for instance svc:/network/ftp:default, placing in maintenance
投稿日時 - 2009-12-23 20:01:47
  • 回答No.1
レベル10

ベストアンサー率 87% (87/100)

> Solarisマシン2台の環境で、1台のマシンにOpenLDAPサーバとFTPサーバを立てています。 > もう1台をクライアントとして、クライアントからはLDAP認証でログインはできます。dirコマンドを実行した所、下記のところで止まっています。 LDAP認証しない FTP サーバにローカルアカウントのあるユーザでは正常に動作するのでしょうか? つまり LDAP が関係しているの ...続きを読む
> Solarisマシン2台の環境で、1台のマシンにOpenLDAPサーバとFTPサーバを立てています。
> もう1台をクライアントとして、クライアントからはLDAP認証でログインはできます。dirコマンドを実行した所、下記のところで止まっています。

LDAP認証しない FTP サーバにローカルアカウントのあるユーザでは正常に動作するのでしょうか?
つまり LDAP が関係しているのかどうか切り分けできていますか?

> サーバ側には、ユーザのホームディレクトリはあります。

ホームディレクトリのオーナやパーミッションは問題ないですか?

> FTPには、 ProFTPD 1.3.2を使用しています。

Solaris 付属の FTPサーバではどうなりますか?

> proftp.conf
(中略)
> LDAPServer "192.168.24.52"
> LDAPAuthBinds on
> LDAPDoAuth on "ou=People,dc=solaristest,dc=com"
> LDAPDoGIDLookups on "ou=Group,dc=solaristest,dc=com"
> LDAPDoUIDLookups on "ou=People,dc=solaristest,dc=com"

蛇足かもしれませんが、ProFTPD は標準で PAM が有効になるので、mod_ldap の設定は必要ないのではないかと思います。

proftpd-1.3.2% ./configure --help | grep -i pam
--enable-auth-pam enable PAM support (default=yes)

以下 proftpd-1.3.2 の README.PAM からの抜粋です。

----ここから----
1. AuthPAM
You may selectively enable or disable PAM authentication. This is
especially useful in environments where you are receiving ProFTPD in a
distribution, and you want to disable the builtin PAM authentication
module. The default is to enable PAM authentication. You may disable
it as follows:

# This enables or disables the PAM authentication module.
# The default is 'on'.
AuthPAM on
----ここまで----
補足コメント
hironona

お礼率 33% (20/60)

xinuさん、

ご回答ありがとうございます。
Proftpdでmod_ldap の設定している場合としていない場合の切り分けを行いました。

Windows側で、FFFTPを使用
mod_ldap の設定をしていない場合
ローカルユーザでは、問題なくログインできてファイル転送も行えます。
LDAPサーバに登録しているユーザは、ログインできません。

mod_ldap の設定した場合
ローカルユーザ及びLDAPサーバに登録しているユーザは、ログインできますが、サーバ側の方には、なにも表示されませんでした。

>ホームディレクトリのオーナやパーミッションは問題ないですか?

所有者をrootグループをOtherで、パーミッション777にしていますが、ここが問題ですか?もし、ここが問題であれば、ホームディレクトリを作成後、LDAPサーバに登録されているユーザは、/etc/passwdに存在しないので、所有者を設定できません。そうなると、LDAPユーザで認証しFTP転送ができないと言うことになりますよね?

>Solaris 付属の FTPサーバではどうなりますか?

mod_ldap の設定をしていない場合と同じ現象になっています。
投稿日時 - 2009-12-20 14:44:13
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ