LDAPについてat UNIX
LDAPについて - 暇つぶし2ch275:名無しさん@Meadow
03/10/09 17:57
OpenLDAPのpam_mkhomedir.soに相当するような
ユーザホームディレクトリ自動作成をiplanetでやるには
どうしたらいいんでしょうか?

276:名無しさん@お腹いっぱい。
03/10/10 01:09
>>275
そりゃ、OpenLDAPじゃなくて、PAMでしょ。

277:
03/10/10 18:07
つまり、pam_ldap と pam_mkhomedir を使え、と。

278:slapd のユーザ
03/10/14 20:00
みなさん、slapd をどんな権限で動かしていますか?
ユーザとグループは root:root ですか?
man slapd によると、次のような問題があるそうですが…

「特権ユーザでないユーザでslapdを実行した場合、
 passwd back-endsが暗号化されたパスワードに
 アクセスすることが出来なくなるようなシステムが存在すること、
 またいかなるシェル back-endsも指定されたその特権ユーザでない
 ユーザで実行されることに注意すべきです。」

279:名無しさん@お腹いっぱい。
03/10/14 20:56
>>278
DES認証モードなYPをbackendにしている時も、rootじゃないと辛いわね。

本題についてはrootでしようがないわね。
shadow passwordをroot以外でも読めるよりましだわね。

280:名無しさん@お腹いっぱい。
03/10/14 20:58
あ、backendをsaslauthdみたいなのに独立して実行させて、
それでroot以外のユーザでslapd動かすという手はあるかも。
ただ、backend作らないとね(w

281:slapd のユーザ
03/10/14 21:07
バックエンドを SQL にしてみるか…
ODBC/PostgreSQL とかで試してみるかな。

282:名無しさん@お腹いっぱい。
03/10/14 22:11
>>281
SQLサーバの認証は?
userPassword属性をODBCで読まれるとまずいわけだが。

283:slapd のユーザ
03/10/14 22:20
>>282 IDENT でいいかと…

284:名無しさん@お腹いっぱい。
03/10/14 23:42
ああ、local onlyだからidentで十分か。
SO_PEERCREDでユーザ特定できるもんね。

285:名無しさん@お腹いっぱい。
03/12/03 17:39
おつかれさんです。

VAリナックス、OpenLDAPにおける同期レプリケーション機能等を公開
URLリンク(japan.linux.com)

286:名無しさん@お腹いっぱい。
03/12/06 14:35
これかな。

High-Available OpenLDAP
URLリンク(openldap-ha.sourceforge.net)
信頼性の高いLDAPシステムを構築する
URLリンク(openldap-ha.sourceforge.net)


287:名無しさん@お腹いっぱい。
03/12/12 00:22
>>277
FreeBSDで、pam_mkhomedir.soに変わるものってあるんですか?

288:名無しさん@お腹いっぱい。
03/12/19 05:08
ユーザアカウントの一元管理としてNISを使うのと、
PAM+LDAPの組み合わせはどちらがいいと思いますか?
やっぱりこれからは認証の枠組みを超えて、
データの統合化を見据えて、無理やりにでもLDAPや
RDBを用いるべきなんですかね。
UNIXの構築運用を任されて、いま勉強しているところ
なんですが、判断に迷います。

289:名無しさん@お腹いっぱい。
03/12/19 06:10
>>288
アカウントになにを含めるかが重要。単にUNIXでパスワードの認証だけを
すればいいのなら、今から構築するのでもNISでもOKじゃないの?

将来的にさまざまなユーザデータも入れたいとか、マルチOSになるとか
いう可能性があるのならLDAPにしたほうがいいけど。

それに、無理やりにでもという意味が不明。何で無理やりなの? どこが無理やりなの?
単にお前の知能が足りないだけじゃないの?

290:名無しさん@お腹いっぱい。
03/12/19 07:15
>>289
UNIXの運用に関しては素人ですが、
ある組織のサーバー管理を任されました。
管理するアカウント数は130程度ですが、これが今後どう
変わっていくかは現時点では予測できません。
またユーザデータが将来どう使われるかも分りません。
現時点でのアカウント数から考えればNISを使ってシンプルな
構成にするのがよさそうですが、後からユーザー情報の一元管理が
求められた時に移行の手間がかかるのはやっかいかと思います。
そういう意味で「無理やり」にでも最初からデータ管理用の何かを
入れるべきなのかなと思っていました。
ディレクトリサービスはRDBとはまた違った概念なので、
それで何が出来るのか勉強しなくてはならないことは承知のうえです。
プロの方がどのようなケースでLDAPの採用を決めるのか
参考にさせて頂きたい、なと。

291:名無しさん@お腹いっぱい。
03/12/19 07:39
>>290
NISのサーバは何にするの?
> SunはNISを将来サポートしなくなると思うが大丈夫か? (というか一時ハズレた)

組織の各subnetはどのくらい離れているの?
> NISはreplica serverへの同期はmap全体のみ。大丈夫か?

NISが喋れないclientはないか?
> Microsoftは、Service for UNIXをいつまでreleaseするのか?
> これからLDAPのmeta serverに移行していくことはないか?
> UNIX以外にLDAP clientが増える可能性があるか?

securityはどう考えるのか? snoopingはどうか?
> NIS+のDES認証modeは手軽でsecure。
> LDAPはちゃんと設計する必要がある。NISはmap単位のsecurity。

などを考えないといけませんな。
正直LDAPをsupportしてない古いclientがなければ、LDAPの方が簡単。

292:名無しさん@お腹いっぱい。
03/12/19 09:04
>>291
丁寧なレスをありがとうございます。
URLリンク(docs.sun.com)
ここなどを読んで分ったような気になっていたので、教えて頂いたことが
とても難しく感じられます。時間的に少し余裕があるので、
OpenLDAPとSambaについて勉強するところから始めたいと思います。

293:>>292
03/12/19 10:24
samba?
そのsubnetにWindowsはいるの? PDCは誰?
WindowsがいるとLDAPは難易度がかなり増す。
英語のドキュメント必読。

Service for UNIX使えばWindowsもNIS clientに出来る。
これは簡単。ホームのNFS mountもOK。
ただ95系はダメだわな。Service for UNIXないもん。

294:名無しさん@お腹いっぱい。
03/12/19 10:34
>>291
NISとNIS+混同してる部分が多くないか、それ?

295:>>292
03/12/20 07:39
>>294
たとえばどれ?
NISは"replica"って用語じゃなかったかな?

296:名無しさん@お腹いっぱい。
03/12/22 00:14
>>290
FreeBSD+LDAPで、ユーザ管理をさせたかったのでいろいろ挑戦してみたが
以下の理由であきらめた

・adduserで簡単にユーザ追加ができない
・LDAPに直接ユーザを追加した場合のUIDとGIDの扱いが難しい
・ホームディレクトリの作成がされない
・FreeBSD5.1で、すでに問題が発生している

上記の問題は、OpenLDAPとSambaで対応できるが
まだ、試していないが問題が出そう・・・

297:名無しさん@お腹いっぱい。
03/12/22 00:18
>>296
FreeBSDってNSSあるんですか?
この辺り笑えるくらい遅れてないですか?

298:名無しさん@お腹いっぱい。
03/12/22 10:20
>>297
5系列にはあるよ。
まあ、今5系に手を出すのはLinuxの2.6系に手を出すのと同じくらい怖いけど。

ま、遅れてるところが気になったら移植よろしく。


299:名無しさん@お腹いっぱい。
03/12/23 16:26
OracleのユーザをOpenLDAPで管理(認証)することは可能?

300:名無しさん@お腹いっぱい
03/12/23 22:52
>299
可能


301:名無しさん@お腹いっぱい。
03/12/24 09:32
>300
ホントですか?!
いろいろ調べたんですがどこにも載ってなくて・・
何か参考になる所があったら教えていただけませんか?

302:300
03/12/24 16:57
>301
それはともかく、Oracle->LDAP認証にする意味は?
将来的にOracleを破棄する予定でしょうか?

そうでないなら、LDAP->Oracle連携でもいいような気がするけど。
->back SQLで

303:名無しさん@お腹いっぱい。
03/12/24 17:21
>302
やっぱりOracle->LDAPで認証はあまり意味がないのでしょうか??
これにする理由は特にないのですが、可能なら試して見たいと
ただそれだけで・・・


304:300
03/12/24 18:27
>303
なるほど、好奇心ということですね。

いや、普通に考えれば、ユーザ情報は、既存のDBに登録されているなら
それをLDAPから利用とかってことになるでしょ。(統合の際)
だから、そう思ったの。

305:名無しさん@お腹いっぱい。
03/12/24 20:31
>304
色々ありがとうございます。
OpenLDAPを勉強するにあたって参考にしたHPとかあるんですか?

306:300
03/12/25 01:28
>305
基本は、ソース添付のドキュメントです。
いくつかのHPを見ましたが、その内容で動作しないものが多くて
結局ソースを追っかけながら確認。
おかげで、samba付属のスキーマのバグなどにも気づいて
対処できました。

この板だったかsamba板だかで、雑誌記事の誤りについて
触れられてからの追っかけなんで偉そうなことは言えませんが。


307:名無しさん@お腹いっぱい。
03/12/25 08:25
<306
何から何まですみません。。
どーいう場合にOpenLDAPを使えば一番有効に活用できるのでしょうか?

308:名無しさん@お腹いっぱい。
03/12/25 08:50
金がないのにLDAPサーバを立ち上げたい時。
OpenLDAPにしか実装されてない機能を使いたい時。

309:300
03/12/25 09:57
>307

>308さんに書かれている理由が1つ。
あとは、1メーカの戦略に振り回されたく無いというのが一番大きい理由かな。

そうそう全入れ替えなんてできないからねぇ。
困ってないのに、サポートが受けられないから、バージョンアップしないと
いけないというのが一番腹立たしいもの。。

だから、OpenLDAPで統合した際に、BackSQLにはPostgreSQL使ったり
しています。(データ規模によって、標準のもの使ったりしますが)

Schemaも、各社の設定の矛盾調整で悩む羽目になったりするから、
OID取得しておくと便利。


310:名無しさん@お腹いっぱい。
03/12/25 17:37
OpenLDAPはセキュリティの強化に何か役立つ事がありますか?

311:名無しさん@お腹いっぱい。
03/12/25 18:24
例えば、NIS→(Open)LDAPならば、
きめ細かいaccess controlが可能、などと答えることもできるが、
単独一般論でsecurity強化ってことはない。どんなsystemでもね。


312:名無しさん@お腹いっぱい。
03/12/25 18:33
URLリンク(yokaichi.com)
↑すごいよw

313:名無しさん@お腹いっぱい。
03/12/25 23:18
もともとOpenLDAPは何をするためのものなのだろう・・・

314:名無しさん@お腹いっぱい。
04/01/16 00:18
>>313
変なこと言うから、スレの流れとまっちゃったじゃねーか!



315:名無しさん@お腹いっぱい。
04/01/19 15:54
質問させて下さい。
ldapsearchコマンドでOr結合の複数条件で検索を行う時、存在しない属性、
索引が付いていない属性があるとエラーで検索できないのですが、これを
「存在しない属性、索引が付いていない属性への検索は無視する」方法で
検索する事はできないでしょうか?
LDAPサーバの設定、又はコマンドの書き方が悪いのでしょうか?

例:存在しない属性とのOr検索
ldapsearch -h XXXXX -b "c=jp" "(|(mail=test*)(email=test*))" dn

# search result
search: 2
result: 19 Constraint violation

例:索引が付いていない属性とのOr検索
ldapsearch -h XXXXX -b "c=jp" "(|(telephonenumber=03*)(homePhone=03*))" dn

# search result
search: 2
result: 53 DSA is unwilling to perform


316:名無しさん@お腹いっぱい。
04/01/19 23:56
>>315
> ldapsearch -h XXXXX -b "c=jp" "(|(mail=test*)(email=test*))" dn
> result: 19 Constraint violation

*の利用が認められてない属性なんじゃないの?

> ldapsearch -h XXXXX -b "c=jp" "(|(telephonenumber=03*)(homePhone=03*))" dn
> result: 53 DSA is unwilling to perform

limitに達しちゃってんでしょ。増やしなよ。
nsLookthroughLimitじゃない?

ちゃんと/var/ds5/*/logs/errorsみてね。
エラーメッセージもどういう意味かちゃんとドキュメント読めーッ!書いてあるぞ。

317:こどちゃ♪ ●
04/01/25 23:04
オライリーのLDAP本(LDAP -設定・管理・プログラミング-)
って本を買った。なかなか必要事項がまとまってて,マジお勧め。

URLリンク(www.ldapbrowser.com)

ところで,Softerra LDAP Browserにはアトリビュート追加・編集機能
がついてないんだな。日本語化されてるならAdministratorを買っても
いいんだが,英語版のソフトを$145で買うのもなぁ。

318:名無しさん@お腹いっぱい。
04/01/25 23:23
>>149
ところでそのLDAP Browser/Editorだけど,まともに動いた?
漏れのところではJavaがなかなか言う事を聞いてくれなくて
断念した。2.81も2.82b2も試行錯誤したが,同じ結果だった。

実装のスマートさは>>317のが一番なんだけどね。日本語…。
UTF-8対応はしてるんで,メニュー表示が英語なのを我慢して
使うしかないのかなぁ。

319:名無しさん@お腹いっぱい。
04/01/25 23:39
「実装のスマートさ」ってソースコード出してないじゃん。

320:こどちゃ♪ ●
04/01/25 23:45
で,LDAP Clientの話だが,PHPベースで結構おもろい
ものを見つけた。

LDAPNavigatorというやつ。
URLリンク(sourceforge.net)

1年ほど新バージョンが出てないんだが,設定してみたら
案外すんなりと動いた。機能も最低限という感じでLDIF大量
流し込みとかには向かなさそうだが,それはそれでいいかと。

>>319
漏れが言ったのは,ソフトを作る上での考え方の話。
つまらん突込みをする位なら何か調べて情報提供ぐらいしろよ。

321:149(たぶん)
04/01/25 23:52
>>318
漏れのところ(MacOS X 10.3)では、2.82b2問題なく動きました。
たぶん10.2でも動いていたと思う。

こっちの方が、よさげ?
URLリンク(pegacat.com)

322:名無しさん@お腹いっぱい。
04/01/25 23:57
>>320
> 漏れが言ったのは,ソフトを作る上での考え方の話。

そりゃ設計。


323:名無しさん@お腹いっぱい。
04/01/26 06:24
>>322 > /dev/null

324:名無しさん@お腹いっぱい。
04/01/28 17:56
>>322-323 ワロタ

325:名無しさん@お腹いっぱい。
04/01/29 11:53
誰か、dhcpd.confの
host XXXX{
hardware ethernet xx:xx:xx:xx:xx:xx;
fixed-address 192.169.0.1;
}
の部分を、dhcpd.confに直接書き込むのではなく、LDAPに
持たせることをやったことある人って、いる?

326:名無しさん@お腹いっぱい。
04/01/29 12:12
>>325
URLリンク(www.kbs.twi.tudelft.nl)
これ?

327:名無しさん@お腹いっぱい。
04/01/31 00:06
>>326
さんくす。
でもよくよく見てみたら、LDAPにdnを追加したり、dnを
書き換えたりするたびに、dhcpd.conf自体をその都度書き
換えてしまうから、ホスト数が数十くらいならOKかもしれ
ないけど、数百単位のホストで、しかもMacアドレスの改
廃が頻繁に行われるには、ちょっと向いていないかも。。

328:名無しさん@お腹いっぱい。
04/01/31 00:27
Solaris使えば?
Mac OS X Serverはどうだったかな? entryはあってbootpには使ってんだけど。

329:326
04/01/31 02:47
>>325
dhcpHWAddress: ethernet xx:xx:xx:xx:xx:xx;
dhcpStatements: fixed-address 192.169.0.1;

これでいけるかな?


330:名無しさん@お腹いっぱい。
04/01/31 09:48
DHCP鯖はここで
URLリンク(www.isc.org)
LDAP用のパッチはここ
URLリンク(www.lunytune.net)

dhcpd-conf-to-ldap.pl
をいじってコンパイル、インストール

/etc/dhcpd.conf は
ldap-server "192.168.1.100";
ldap-port 389;
ldap-username "cn=xx,dc=xx,dc=xx";
ldap-password "";
ldap-base-dn "dc=xx,dc=xx";
ldap-method dynamic;

はこんな感じですね。

そんでもってdhcpServerが含まれるエントリは作成するのですが、
DHCP鯖は無条件にホスト名をcnとするので注意して下さい。
あとdhcpServiceが含まれたエントリを作成して鯖の動作を定義します。
最後にdhcpServer配下に個別のサービスを指定したエントリを追加
すれば完了です。

331:名無しさん@お腹いっぱい。
04/02/02 23:09
>>329,330
ありがとうございます!
ただ、会社で使っているのがfedora coreのため、パッチがある
dhcp-3.0.1rc11だと、makeが完了せず、エラー1でストップし
てしまいます。(rc12だと、問題なくmake installまでできるが、
その代わり、パッチが当てられない・・・)

で現在、rc12とrc11の差分を調べていて、どんどんドツボには
まっている状態です。。。

でも、patchのtarの中にあったReadmeなどのおかげで、dhcp用
のschemaを作ることができて、dhcpHostなどのobjectClassを
追加できるようにはなりました。。。


332:名無しさん@お腹いっぱい。
04/02/03 15:02
NTLM のサポートはしてるけど。。

URLリンク(www.polarhome.com:793)

>Q: Is NTLM supported?
>A: The NTLM mechanism is a non-standard, undocumented mechanism developed by
> Microsoft. It's included in the SASL distribution purely for sites that need it to interoperate
>with Microsoft clients (ie, Outlook) and/or servers (ie, Exchange); we don't support it.
> Don't enable it unless you know you need it.

333:名無しさん@お腹いっぱい。
04/02/03 15:10
>>331
DHCP 3.0pl2はやってみましたか?

>で現在、rc12とrc11の差分を調べていて、どんどんドツボには
>まっている状態です。。。

調べてみたけどヘッダの差分が問題になっている気がする。
あくまで気がするというレベルだけどね。ニーズがあれば修正はすぐ
できるレベルだけど3.0pl2じゃだめかなぁ。

334:331
04/02/03 16:12
うっかりしてまして、README.ldap の中に、
Makefile add -lldap to the LIBS= line
と書いてありました。。スミマセン・・一応、Make installまで
できましたが、現在、dhcpd.confと、LDAPのエントリ作成で
はまっています。
つまり。。。
dhcpd.confには、
 ldap-server "192.168.1.100";
 ldap-port 389;
 ldap-username "cn=xx,dc=xx,dc=xx";
 ldap-password "";
 ldap-base-dn "dc=xx,dc=xx";
 ldap-method dynamic;

だけを記述して、subnetやnetmask、option routerやrangeなどは、
dhcpServiceとか、dhcpSubnetとかに記述する・・・ってことなんでし
ょうかね・・・?

335:名無しさん@お腹いっぱい。
04/02/03 17:37
>>334
README.ldapを参考に一通りやってみたら?
それとも参考にしてもできなかった?

336:331
04/02/03 21:57
うまくいかなかった謎がちょっと解けました。
原因① dhcpServiceの記述のケアレスミスがあった・・・
原因② 326で紹介していただいた、
    URLリンク(www.kbs.twi.tudelft.nl)
    を先に当てると、/etc/init.dのdhcpのスクリプトを、
    pythonを利用する版に書き換えてしまっていて、それを
    引きずってしまっていた。。。

ので、明日、fedoraの再インストールから、きれいさっぱり
やり直してみようと思います。。。

337:331
04/02/05 22:16
何回か、Fedora再インストールから繰り返し、何とか、きちんと動作する
手順を見つけました。最終的に、pl2を使いました。

①LDAPのインストール(rpmで)
②pl2.tar.gz の展開
③patchを当てる (-p0付きで)
④contrib/dhcpd-conf-to-ldap.plのbaseDNを書き換え
 ※ただし、なぜかpatchをしても、~.plができないので、
  とりあえず失敗したときにできたものをcp
⑤Makefile.confの、LIB= に、「-llber -lldap」を書き込み
⑥./configure -> make -> make install
⑦以下のファイルを適切に書き換える
 slapd.conf,ldap.conf,dhcpd.conf
⑧LDAPにエントリを追加
⑨touch /ver/state/dhcp/dhcpd.leases
 ※dhcpd.confにsubnetの定義が無いと、LDAPに
 dhcpOptionsでエントリを追加していてもdhcpd
 起動時にno declarationで怒られる。
⑩/etc/init.d にScriptが無いので、適当に持ってきてcp
⑪ldapとdhcpdを起動

ってな感じでした。とりあえず何とか・・。
ありがとうございました。

338:名無しさん@お腹いっぱい。
04/02/05 23:16
ところでIPアドレス<->MACアドレスをLDAP上に置く目的は?

339:今日のへぇ~
04/02/08 18:03

LDAP is pronounced "えるだっ( ´,_ゝ`)プッ"

340:名無しさん@お腹いっぱい。
04/02/08 23:00
>>338
Macアドレスでの、DHCP Client管理をやりたいんだけど、
追加や変更の頻度が高いので、直接dhcpd.confに書き
込んでしまうと、その都度dhcpdの再起動をしなければ
ならなくなるので、もし記載ミスで起動しなかった場合
の影響を考えると、LDAPに持たせるほうがいいかなぁ。。。
と。


341:名無しさん@お腹いっぱい。
04/02/09 15:37
LDAPサーバが動いてないと機能しないシステムって
どうなんでしょうかね。

342:名無しさん@お腹いっぱい。
04/02/09 15:56
>>341
そりゃ不安定要因が増すことになるけど、いまやNIS/NIS+の代わりにLDAP使う
時代だというのに、問題になるのか?

343:名無しさん@お腹いっぱい。
04/02/09 16:34
>>342
LDAPがダウンしたらクライアントが巻き添えになる事が問題って
ことですよね。340さん

344:名無しさん@お腹いっぱい。
04/02/09 16:34
341さんだったw

345:名無しさん@お腹いっぱい。
04/02/09 17:10
Oracle Internet Directoryでldapsearchを使った検索時の
条件式の書き方について質問があります。

「田中某さん、又はABC会社所属」を検索したい時は
 '(|(cn=Tanaka*)(o=ABC*))' で検索できるのですが、
上記の逆「田中某さんではなく、ABC会社所属でもない」を
検索するのに '(!(|(cn=Tanaka*)(o=ABC*)))' と指定すると
エラーになってしまいます。
 '(&(!(cn=Tanaka*))(!(o=ABC*)))' とすると検索できます。

not演算子の書ける位置は決まりがあるのでしょうか?


346:名無しさん@お腹いっぱい。
04/02/09 23:05
>>345
エラーメッセージはぁ?

それはともかく、LDAP的にはfilterに制限はない。
しかし、serverの方では実装ごとに制限や設定項目がある。
制限しないと、複雑なfilterでsearchするというDoSアタックを受けてしまう。

というわけでserver側にいろいろ設定するところがあるから、
その辺りをいじればなんとかなるかも。

Oracleのは触ったことがないから、こんなところで。(つづく)

347:名無しさん@お腹いっぱい。
04/02/09 23:18
>>345
賢いfilter compilerでpre-compileしてない場合、

>  '(&(!(cn=Tanaka*))(!(o=ABC*)))' とすると検索できます。

こっちは、疑似コードで書くと、

foreach (@entrys) {
  if ($_.cn !~ /Tanaka*/) {
  if ($_.cn !~ /ABC*/) {
  push(@result, $_);
  }
  }
}

とショートカット論理積で効率良く実行出来る。

> 検索するのに '(!(|(cn=Tanaka*)(o=ABC*)))' と指定すると

こっちは、(|(cn=Tanaka*)(o=ABC*))に該当する集合を作ってから、
その補集合をとる必要があって、結構な手間が。scopeがsubだと悲惨。


348:名無しさん@お腹いっぱい。
04/02/09 23:20
で、さっきの話に戻るけど、
後者はOracleのサーバで設定された上限に引っ掛かるんだと思う。

349:名無しさん@お腹いっぱい。
04/02/10 00:34
>>346

> 制限しないと、複雑なfilterでsearchするというDoSアタックを受けてしまう。


Oracle Internet Directoryでanonymous提供してるとこってある
かな~。

350:345
04/02/10 14:42
>>346
'(!(|(cn=Tanaka*)(o=ABC*)))'を指定した場合、
oracleのbinにあるldapsearchを使うと下の答えを返してきます。
ldap_search: 制約違反です。

/usr/bin/ldapsearch を使うと下の答えを返してきました。
result: 19 Constraint violation

'(&(!(cn=Tanaka*))(!(o=ABC*)))'を指定した場合は
どちらのldapsearchも該当する答えを返してきました。

351:名無しさん@お腹いっぱい。
04/02/10 14:49
RFC 2251「Lightweight Directory Access Protocol (v3)」より
constraintViolation (19),

後はOracleのdocument調べなよ。
>>347に書いた理由から、iPlanetのserverだと nsslapd-lookthroughlimitに引っ掛かる。


352:名無しさん@お腹いっぱい。
04/02/12 22:16
質問させてください。
OpenLDAPの2.1.26をRedhat Linux8.0にインストールしようとしています。
/usr/libに、regex.hがあるのに、configureで 
configure: error: POSIX regex.h requiredと言われてしまいます。

googleで探してみたりしましたが、一向に解決しなくてずっと足踏みです。
何か解決の糸口だけでもいいので、教えていただけませんでしょうか?
一度、Linux板で聞いてみましたが、聞き方が悪かったのか、スルーされてしまい、
こちらに流れ着いてきました。

OS依存の質問かもしれないので、板違いとおっしゃられるかもしれませんが、
何としてでも解決したいのです。
技術評論社のOpenLDAP入門という本を買って、バージョンもほぼ本の通りに
そろえてます。(BerkeleyDB4.1.25 OpenLDAP2.1.26など saslやkerberosは入れてない)
上記 よろしくお願いします。

353:名無しさん@お腹いっぱい。
04/02/12 22:27
${OPENLDAP}/include/ac/regex.hより、

#ifndef HAVE_REGEX_H
/* NO POSIX REGEX!!
you'll need to install a POSIX compatible REGEX library.
Either Henry Spencer's or GNU regex will do.

For NT: URLリンク(people.delphi.com)
*/
#error "No POSIX REGEX available."

というわけでGNU regexをinstallすれ。後はくだ質 or Red Hatスレで。

354:352
04/02/12 22:34
>>353
ありがとうございます。installしてみます。


355:名無しさん@お腹いっぱい。
04/02/13 14:29
NISサーバで出来てLDAPで出来ないことってなに?

356:名無しさん@お腹いっぱい。
04/02/13 15:47
NISにしか対応していないクライアントの面倒をみること。

357:名無しさん@お腹いっぱい。
04/02/14 18:08
>>356
最近のUNIXシステムならPAMのような機構が入ってるから,
困ることは少なそうね。LDAPモジュールを用意する手間はあるけど。

358:名無しさん@お腹いっぱい。
04/02/14 18:14
PAM LDAPモジュールも今時のシステムには完備だけど、
なければURLリンク(www.padl.com)の奴が使える。NSS LDAPモジュールも込み。

359:名無しさん@お腹いっぱい。
04/02/15 17:34
このスレってどっちかというとデータベース板の方がいいよな。
スキーマ定義の話までいけば、RDBの使い方に関する難しさと
何も変わらんでしょ。

360:名無しさん@お腹いっぱい。
04/02/15 19:29
OpenLDAPで、基本?のアドレス帳を作ってます。
Windows側から検索もできるようになりました。
ひとつ質問なんですが、cn;Lang-ja:名前 などとして、iconv経由で
ldifを読み込ませて、LDAPBrowserとかでは日本語表示されますが、
OutLook expressとかで表示名を日本語にするにはどうすればいいんでしょ?
MozillaだとdisplayNameをに日本語にするといいらしいんですけど、
OEだとdisplayName;Lang-ja:として日本語の名前をつけても英語表示の
ままなんです。日本語表示にはどうすればいいの?
この質問は板違いですかね?

361:名無しさん@お腹いっぱい。
04/02/16 03:51
>>359
ディレクトリシステム(データベースの一種)として
LDAPを考えるならデーターベース板扱いになるね。
けど,その段階に到達できない管理者も多くいるわけで。

また,認証システムとしてのLDAPなら,この板で
やるのが一番ましなのかな。Windowsでも使えるけど,
おまけ的扱いだしUNIXでの利用が一番多いかと。

362:名無しさん@お腹いっぱい。
04/02/16 14:21
LDAPでパスワード無しのユーザを認証をしている方いますか?
パスワード無しだとでたらめなユーザIDでも認証されません?
ネットでLDAP認証のサンプルソース(JAVA)を見るとLDAP認証前に
ユーザプログラムではじいてるようなのですが。。。
LDAP Browserもパースワード無しだと認証前にエラーとなります。
パスワード無しは無理なんですかね~

それともWin2003SvrのLDAPが駄目なんですかね?

363:名無しさん@お腹いっぱい。
04/02/17 09:31
>>362
> パスワード無しだとでたらめなユーザIDでも認証されません?

この文の意味がわからん。(ので全体的な主旨が掴めない)

>>359
あなたの言っていること(リレイションベースのdirectory=RDB)は問題外。

364:名無しさん@お腹いっぱい。
04/02/17 09:32
>>362
> LDAPでパスワード無しのユーザを認証をしている方いますか?

これが可能かどうかは、ldapsearchで簡単に調べられるでしょ。

365:名無しさん@お腹いっぱい。
04/02/17 12:06
>>363
URLリンク(www.geocities.co.jp)
↑ここに書いてあるLDAP認証を参考にLDAP接続処理を作ったところ
 ユーザIDとパスワードに1文字以上設定されていればLDAPに存在しない
 ユーザ情報だと認証されないが
 ユーザIDもしくはパスワードが空白だと無条件で認証されてしまう。
 というかユーザIDとパスワードを指定しなくても認証できる。

 サーバのセキュリティはこれでもかってぐらいガチガチに固めて終いには
 管理者もログイン出来なくなり再インストールを余儀なくされました。。。

>>364
LDAPに一度繋いでからLDAP内を検索する方法ですか。。。
ワンクッションおかずにダイレクトに認証出来ると最高なのですが
でもありがとうございますldapsearchの方法も最終手段として検討してみます。

かれこれ1週間近く調べてますがLDAP認証を行っているプログラムで
パスワード無しを認めている処理が見当たりません。
駄目なんですかね~
セキュリティ的にはもちろん駄目ですけど。。。


366:名無しさん@お腹いっぱい。
04/02/17 12:10
>>365
>  ユーザIDもしくはパスワードが空白だと無条件で認証されてしまう。

「両方空」は"anonymous bind"でしょ。
禁止したければ、サーバ側のACLの設定で。

あなたは個人認証とbindがごっちゃになってる。

> >>364
> LDAPに一度繋いでからLDAP内を検索する方法ですか。。。

そうじゃなくて、

> LDAPでパスワード無しのユーザを認証をしている方いますか?

の真偽は、ldapsearchで簡単に調べられると言うこと。

367:名無しさん@お腹いっぱい。
04/02/17 12:11
それから、LDAPの知識が足りないようだから、
LDAPのレベルで語ろうとせずに、何がやりたいかを語った方がいいと思う。
質問の意図や状況が良く分からない。

368:名無しさん@お腹いっぱい。
04/02/17 13:21
>>367
素人の質問に何度も答えて頂きありがとうございます。
ldapsearchについては私の早とちりだったみたいですいません。
調べ直します。

状況としては
現在Linux上で動いているシステムのログインに必要なIDとパスワードを
Win2003Svrで管理する為LDAPを使用していたのですが、
パスワードが空白だと登録されていないIDでも無条件に
ログインできる障害がありまして急遽対策していました。
時間が無いので暫定としてパスワード無しは認めないように対策しました。

将来的にパスワード無しのユーザも認証したいので
LDAP認証について引き続き調べてました。

LDAPもWin2003Svrも今回の障害対策で
初めて触ったのでわからないことだらけて行き詰ってました。

ldapsearchとACL
貴重なキーワードありがとうございます。
これを手がかりに自分で調べ直して見ます。

時間があれば基礎から勉強したほうがよさそうですね。。。

369:名無しさん@お腹いっぱい。
04/02/18 07:28
>>368
> 現在Linux上で動いているシステムのログインに必要なIDとパスワードを
> Win2003Svrで管理する為LDAPを使用していたのですが、

これはどう認証しているの? PAM? 自前のprogram?
それがはっきりしないとLinux(LDAP client)側の問題か、
Windows 2003 server(LDAP server)側の問題かはっきりしないよね?

そもそも認証にbind operation使っているかどうかも定かじゃないわけだし。

> パスワードが空白だと登録されていないIDでも無条件に
> ログインできる障害がありまして急遽対策していました。

LDAP server側に問題があるなら、それはldapsearchで確認できる。

# 十中八九client側が自前のプログラムでそこに問題があるんだと思うが。

> 時間が無いので暫定としてパスワード無しは認めないように対策しました。

それはどうやって? LDAPとは関係なくその手前の段階の自前プログラムで?

> 将来的にパスワード無しのユーザも認証したいので
> LDAP認証について引き続き調べてました。

これは独立の問題なのね。こっちは問題ないと思うよ。


370:名無しさん@お腹いっぱい。
04/02/20 09:06
>>369
ご返信が遅くなり申し訳ございません。
別作業が忙しくなりLDAPの調査は中断しております。

ちなみに認証は自前のJAVAプログラムでJNDIを使っております。
パスワード無しは自前のプログラム内でLDAP認証前にはじくようにしました。

JNDIを使ってLDAP認証を行っているJAVAのソースをネットで検索すると
認証前にパスワード無しははじいているので
もしかするとJAVAのJNDIはパスワード無し駄目なのかな~
とも思ったりしますが
JAVAについても始めて日が浅いので検討違いかもしれません。。。

構築したActiveDirectoryにWindowsからログインする分には
パスワード無しのユーザもパスワード有りのユーザも
ちゃんと認証はされます。

しばらく別作業が忙しくLDAPについて調べる時間が無いので
時間が出来たら教えて頂いた情報を元にいろいろが角度から
原因を調べてみたいと思います。

どうもありがとうございました。


371:名無しさん@お腹いっぱい。
04/02/20 11:19
>>370
> JNDIを使ってLDAP認証を行っているJAVAのソースをネットで検索すると
> 認証前にパスワード無しははじいているので
> もしかするとJAVAのJNDIはパスワード無し駄目なのかな~
> とも思ったりしますが

アプリのロジック、セキュリティポリシーとしては、パスワードなしのユーザを認めたくない。
しかし、JNDI+LDAPではパスワードなしのユーザを認証してしまう。
だから、事前に弾いている、と考えるのが自然では?

372:名無しさん@お腹いっぱい。
04/02/21 00:22
ActiveDirectoryからLDAPで引っ張ってユーザ認証(具体的にはsquid)させたい
んですがうまくいきません。
ActiveDirectoryインストールして、OU作ってその下にユーザを登録したんですが
他に何か作業が必要ですか?そもそもなんてDNで問い合わせれば良いかも確信が持てません・・・。
LDAPに関しては初心者なのでチンプンカンプンな事を言ってるかも知れませんが、
どなたかアドバイスを頂けませんか?

373:名無しさん@お腹いっぱい。
04/02/21 00:27
>>372
> ActiveDirectoryインストールして、OU作ってその下にユーザを登録したんですが

どこに作ったの? Base DN分からなければ、

> 他に何か作業が必要ですか?そもそもなんてDNで問い合わせれば良いかも確信が持てません・・・。

DN分からないよね。DN分かったら、とりあえずldapsearchで認証してみれ

374:名無しさん@お腹いっぱい。
04/02/21 00:43
>>373
ありがとうございます。
BaseDNは example.comで登録しました。ホスト名はADです。
その下にtestってOU作ったんですが、問い合わせの際のDNは
OU=test,O=example,C=com ですか?(汗
OU=test,DC=example,DC=com ですか?(汗


あー恥ずかしい、勉強しますんで誰か良いURL教えてください。。。


375:名無しさん@お腹いっぱい。
04/02/21 01:14
ou=test,dc=example,dc=comでしょ

URLリンク(www.wlug.org.nz)

376:372
04/02/21 01:53
ドメインは実際には”ホゲ.co.jp”としてあります。
openldapではconfにBaseDNを記述するみたいですが、
ActiveDirectoryでBaseDNを確認する方法ってありますか?

377:名無しさん@お腹いっぱい。
04/02/21 02:18
そりゃ、板違い。
URLリンク(www.microsoft.com)

378:名無しさん@お腹いっぱい。
04/02/23 17:27
>>371
何度もご意見ありがとうございます。
>アプリのロジック、セキュリティポリシーとしては、パスワードなしのユーザを認めたくない。
私も初めはそうかと思ったのですがサンプルソースからパスワードの未入力チェックを
外すと例のパスワード無しだと無条件で認証されてしまう現象が再現したので
どうなのかな~という状況です。

時間が出来たらいろいろ試して結論を出したいと思います。
結論が出たらご報告します。(4月以降になりそうですが。。。)

379:初めてのLDAP
04/02/24 00:21
どうもこんにちは。
今度、初めてLDAPを触ることになったものです。iPlanetを使っています。
教えて頂きたいのですが、Administratorなどの管理者用ユーザーでLDAP接続を
行った場合、他のユーザーのパスワードを取得することは可能でしょうか?
パスワードは「*****」みたいになっていて、パスワードを取得しても値が読め
ないのではないかと心配しています。(当方、作業環境が整っておらず、実際に実行
して調べることができないのです。(涙))
取得できるか、と取得した値が文字変換されていたりするのであれば、その変換方法
を教えてください。
超初心者なので的外れなことを言っていたらすいません。
何卒よろしくお願い致します。

380:名無しさん@お腹いっぱい。
04/02/24 09:07
>>378
プログラム晒せや
>>379
password-storage-schemeがclearの場合用意。
それ以外の場合困難。
SSL使ってないならタッピング攻撃しただけでbindオペレーションのパスワードスルスル。

381:名無しさん@お腹いっぱい。
04/02/24 17:52
>>380
サンプルソースは365

382:名無しさん@お腹いっぱい。
04/02/29 00:13
ホームディレクトリが、
Solarisは/export/home/hiroyuki
Linuxは/home/hiroyuki
なんかの場合、LDAPにどのような形で格納するとよいですか?

383:名無しさん@お腹いっぱい。
04/02/29 01:09
同じパス名にしなさい。

384:382
04/02/29 15:30
>>383
そういたします。リンクでも張っておきます。

もう一つ質問です。
LDAPサーバが落ちているときに別のサーバに問い合わせをするには
どうしたらいいでしょうか。

クライアント側の設定になると思いますが、
opensslのldap.confやsmb.confなどに設定を見つけられなくて。


385:名無しさん@お腹いっぱい。
04/02/29 16:02
ldap.confのURIかHOSTのところに複数記述しておきなさい。

> 設定を見つけられなくて。

ちゃんとマニュアルを読みなさい。

386:382
04/02/29 18:25
man ldap.confにしかと書いてありましたね。
これは失礼いたしました。

sambaの方も3.0なら
passdb backend = ldapsam:"ldap://master ldap://slave"
のような書き方ができるようです。


387:名無しさん@お腹いっぱい。
04/03/01 10:09
名前解決にLDAP鯖を使おうとしてますが、
LDAPサーバーが動くホストのnsswitch.confとは
どんな感じになるでしょうか?見せていただけませんか?

388:名無しさん@お腹いっぱい。
04/03/01 10:47
使っているプラットフォームの板/スレに行った方がいいと思います。


389:名無しさん@お腹いっぱい。
04/03/05 01:41
各サーバでログインシェルを変えたいときはどうやってんの?

390:名無しさん@お腹いっぱい。
04/03/05 01:55
同じパス名にしなさい。

391:名無しさん@お腹いっぱい。
04/03/07 00:36
統一した情報を LDAP に持たせるのが本来の目的なので
サーバ固有の情報を持たせようと考えるのは間違いなんですね、先生

392:初心者です
04/03/17 14:14
別のPCのldapからslapcatでデータを取ってきて、
slapaddで追加したデータをldapsearchで検索できるのですか?
どうもうまくいかないのですが、
ちなみにこの2つのldapの環境は同じものです。
初歩的な質問で申し訳ないのですが、どなたか教えてください。
参考になるHPがありましたら、それもお願いします。

393:名無しさん@お腹いっぱい。
04/03/17 22:15
>>392
> 初心者です
> どうもうまくいかないのですが、

どうやると、どううまくいかないんだい?

394:名無しさん@お腹いっぱい。
04/03/19 14:28
どなたか、netmeeting用ILSサーバとして
openldapを稼動させている方、いませんか?

395:名無しさん@お腹いっぱい。
04/03/20 02:04
現在
httpd-devel-2.0.48-1.2
httpd-2.0.48-1.2
httpd-manual-2.0.48-1.2
を、rpmでインストールしているんですが、このApache-2.0に
対応した、auth_ldapのありかをご存知の方いませんか???

auth_ldap-1.6.0をソースからインストールしても、make時に
怒られまくりで。。。。

396:名無しさん@お腹いっぱい。
04/03/20 02:59
mod_authz_ldap
URLリンク(authzldap.othello.ch)

397:名無しさん@お腹いっぱい。
04/03/20 17:35
>>396
ありがとうございます。でもやっぱりMakeで怒られまくり。。。
fedoraの標準のApacheでやっているんですけど、いろいろ調べて
みたら、fedoraの場合は、ディレクトリ構造の問題か何かで、
小細工をする必要があるようで、
#./configure --with-apxs2=/usr/sbin/apxs --with-apr-include=/usr/include/apr-0

としてみたんですけど、やっぱりダメでした。。出直します。。

398:名無しさん@お腹いっぱい。
04/03/23 22:07
age

399:名無しさん@お腹いっぱい。
04/03/25 21:58
既出の質問かもしれませんが、どなたか情報をいただけませんでしょうか。

OpenLDAP と Windows Server 2003 の Active Directory の間でアカウントの
同期 (パスワードを含む) を行う方法はありますでしょうか。SUN なり富士通なり
NEC なりの商用 LDAP 製品と付属ソフト等を使えば出来る、という事はわかる
のですが、金銭的な余裕が無いため、OpenLDAP でなんとかならないか、と
考えております。Windows Server 2003 では InetOrgPerson がサポートされた
とかなんとか聞きましたので、もしかして何とかならないかな、とか考えています。
完全自動ではなくとも、運用でカバー出来るのであれば、それでも良いと考えています。
最低限、ユーザからみたらひとつのパスワード変更で両方のパスワードが変更
されるとうれしいです。

400:名無しさん@お腹いっぱい。
04/03/25 22:17
>>399
最低限のところは、
Active Directoryの認証機能をUNIXenで利用する、ってお題でいいかな?

Active Directory側でKerberosを動かして、
PAMでpam_kerberos.so使うのが簡単じゃない?

pam_ldap.so使う手もあるけど、まあkerberosの方が簡単。
アカウント同期もやめておいた方がいい。
両方、理由はschemaが(ya

401:名無しさん@お腹いっぱい。
04/03/26 09:25
>>399 URLリンク(www.amazon.co.jp) でも嫁。

ADと pam_ldap でどーするかは書いている。もっとも、漏れも>>400
同意見で、LDAPでアカウント動悸なんて(藁)って感じだが


402:名無し
04/03/27 02:02
MAC OSXもOpenLDAPで認証をかけたいと考えているのですが

OSX 10.2以降は大丈夫っぽいけど、10.1以前は
やっぱりOSX ServerをいれてNetInfo -> LDAP中継させる
必要がありますか?


403:名無しさん@お腹いっぱい。
04/03/27 02:18
OpenLDAP用のNetInfo backendはread onlyですよ。
それから、10.1はLDAPあるけどbuggy。
10.2以降で出てるfixがmergeされているかどうかは知らない。
知る方法がない。Windows並のインチキリリースノート。

404:402
04/03/27 02:46
>403

回答ありがとうございます。
NetInfo Backendがread onlyって、、
LDAPにユーザ情報があれば、(登録もLDAP上で行うこと前提で)
MAC OSX -> OSX Server -> OpenLDAPという形で認証可能ということでしょうか?

それとも、逆に
OSX Serverをメイン認証サーバにして、そのLDAPに、
Windows/Unixからの認証をさせる形になるのでしょうか?

(さすがにOSX Serverが動いているマシンが手元にないものですから)


405:名無しさん@お腹いっぱい。
04/03/27 03:37
>>404
前段:
というかMac OS X Serverは必要ない。
で、Mac OS Xの古いLDAP Agentがbuggy。

後段:
というか君は>>399か?
まず、古いMac OS XにはPAMがない。古いFreeBSDにも。
だから、>>400の方法はダメ。

構成を書いてくれ。

406:404
04/03/27 04:36
>405

>>399ではないです。
なるほど。じゃあ、古いMAC OSXはバージョンアップするのが一番ということですね。

MAC OSX Server云々は、OSX ServerがLDAP統合サービスサポートとあったので
MAC OSXクライアント認証をサーバのNetInfoで行い、このNetInfoサーバが
実体はLDAP参照ができるのかなと思ったせいです。

イメージとしては、NIS -> LDAP的な感じで。

FreeBSDのPAMサポートは、5.xからでしたよね。

MAC OSXクライアントのバージョンアップを無しで、というのは
やはり無理なのでしょうか?(1000台オーバあるもので)


407:名無しさん@お腹いっぱい。
04/03/27 09:29
>>406
> MAC OSX Server云々は、OSX ServerがLDAP統合サービスサポートとあったので

Mac OS XとMac OS X Serverで、Open Directory関係に違いはない。

> MAC OSXクライアント認証をサーバのNetInfoで行い、このNetInfoサーバが
> 実体はLDAP参照ができるのかなと思ったせいです。

逆。NetInfoのdb fileを参照するOpenLDAP backendをAppleが提供。
メインがNetInfoで、LDAPの方がNetInfoを参照。

> MAC OSXクライアントのバージョンアップを無しで、というのは
> やはり無理なのでしょうか?(1000台オーバあるもので)

無理じゃない。ただAppleのリリースノート見ている限りでは、
bugがどうなっているのかさっぱり分からない。

408:名無しさん@お腹いっぱい。
04/03/27 09:32
>>406
OpenLDAPで、LDAPサービスを立ち上げる。

これはMac OS X上でも、他のsystemでもいいが、
Mac OS Xの奴は、NetInfoのbackendを参照する設定になっているので、
これを辞めない限り、read onlyのまま。

各UNIXでNSS/PAMを設定する。Mac OS XはDirectory Accessで。

以上。

409:399
04/03/27 18:52
お返事が遅くなりすみません。

>>400
AD の認証機能を利用するってのではダメで、別途 LDAP サーバを立てる必要があります。
PAM の Kerberos とか存在しないクライアントから LDAP サーバに認証かけることもありますので。

理由は、schema が、、、の続きはなんでしょうか?

>>401
書籍の情報、ありがとうございます。

他に調べて見ますと、acctsync (URLリンク(acctsync.sourceforge.net)) というものがありました。
どなたか、これを使ったことありますか?

# 今試してるんだけど、passwdHk-config をインストール時に、passwd.pl なるスクリプトが見つからない。


410:名無しさん@お腹いっぱい。
04/03/31 14:33
すいません。
LDAP Browser\Editor v2.8.1を使用しているのですが
Valueが日本語場合正常に表示されません。
j2reのバージョンは1.4.2_03です。

何か情報をお持ちな方がいらっしゃいましたら
ご教授いただけるとありがたいです。

411:名無しさん@お腹いっぱい。
04/03/31 22:01
>>409
パスワードのLDAPを使った共有がsambaのMLにサーベイされてます。

schemaって言って分からないと基礎的なところから勉強した方がいいです。
アカウント情報共有は一筋縄でいかないので。>>401の本がいい。


412:名無しさん@お腹いっぱい。
04/03/31 22:02
>>410
ValueはちゃんとUnicodeになっていますか?

413:名無しさん@お腹いっぱい。
04/04/01 15:46
>412さん
はい。
UNICODEにはなっています。データを入れる時にUTF8に変換しているので。
先輩のPCのLDAPBrowserではちゃんと表示されていますが
特に何も設定していないと言われたので困っている状態です。

414:410
04/04/01 15:59
あ、、、↑は410の発言です。

415:名無しさん@お腹いっぱい。
04/04/01 16:31
>>413
じゃあ、Javaのfontの設定の問題じゃない?
この板だからUNIX上で実行してるんだよね。
それなら、そのUNIX専用のスレで質問する方が手っ取り早いと思われ

Javaの日本語環境も完璧なやつから、
自分でfonts.propertiesいじらなければならないのまで多種多様だから。


416:名無しさん@お腹いっぱい。
04/04/01 16:32
それから、
> 先輩のPCのLDAPBrowserではちゃんと表示されていますが
こういう情報は最初に書いてね。


417:名無しさん@お腹いっぱい。
04/04/09 00:26
Solaris9のldapclientで-a "defaultServerList=HostA HostB"
という感じで2つのサーバのIPアドレスを指定していますが
HostAが死んでる場合にHostBを見に行ってくれません。
何か他に設定ポイントがあるでしょうか。



418:名無しさん@お腹いっぱい。
04/04/17 09:59
すんません、質問させてください。
solaris と linux の間でのアカウントをLDAPに移行する場合、
事前にそれぞれのUID,GIDを統一する必要があるってことでOKですか?

419:名無しさん@お腹いっぱい。
04/04/17 10:33
>>418
LDAP移行の問題じゃなくて、
アカウント情報統合の問題だから、当然。

420:名無しさん@お腹いっぱい。
04/04/17 10:37
>>417
bindTimeLimitは幾つになってるの?
とりあえず、本当にsnoopでpacket飛んでないか調べたら?

421:名無しさん@お腹いっぱい。
04/04/17 10:44
LDAPって読みは
「らだっぷ」でいいんですか?

422:名無しさん@お腹いっぱい。
04/04/17 10:53
○えるだっぷ
△えるでぃーえーぴー

423:名無しさん@お腹いっぱい。
04/04/17 10:56
>>422
ありがとうございます。
1年ぐらいラダップって言ってました。
でも誰にも突っ込まれなかったです..

424:418
04/04/17 11:04
>>419
ありがとうございますた。

425:名無しさん@お腹いっぱい。
04/06/06 12:50
基本的なことですが教えてください。

コンテナってなんですか?

426:名無しさん@お腹いっぱい。
04/06/06 17:02
何かを入れるobjectclass。
例えばou=People。

427:名無しさん@お腹いっぱい。
04/06/17 22:37
OpenLDAP 2.2.13 で --enable-phonetic を有効にしてコンパイル
しても、cn;lang-ja;phonetic とかが使えないみたいです。
確認したのは Fedora Core 2 です。

adding new entry "uid=hoge,ou=People,dc=2ch,dc=net"
ldapadd: update failed: uid=hoge,ou=People,dc=2ch,dc=net
ldap_add: Undefined attribute type (17)
additional info: cn;lang-ja;phonetic: unrecognized option

どうにかして使えるようにはならないんでしょうか?
おながいします。

428:名無しさん@お腹いっぱい。
04/06/18 07:26
slapd.conf(5)のattributeoptions の所は読んだ?
それから2.2.13は古いねえ。
source取得して$(OPENLDAP)/tests/data/lang-out.ldifでテストしてね。

429:427
04/06/18 18:59
>>428
レスありがとうございます。
slapd.confのattributeoptionsにlang- phoneticを
指定したら、正常に登録とか検索ができますた。

430:名無しさん@お腹いっぱい。
04/06/20 18:17
Samba 3をメンバサーバで運用する場合、add userスクリプトを使って
ローカルにUNIXアカウントを作成しなくとも、DCのLDAPをFreeBSDから覗いて
動作可能だったりするのでしょうか?

認証にDCのLDAPとKerberosを使うのはいいけどローカルにUNIXアカウントも作る
ってのが不細工じゃないかなと思ってるわけで。

431:430
04/06/20 18:19
ちなみにDCは2000 Serverです。

432:名無しさん@お腹いっぱい。
04/06/20 23:11
>>430
URLリンク(www.samba.org)
は読みましたか?

それからDCはちゃんとWindowsのドメインコントローラって書いてね。

433:名無しさん@お腹いっぱい。
04/06/21 07:20
>>432
ありがとうございます。

ドキュメント > Google ってことがよくわかりました。

434:名無しさん@お腹いっぱい。
04/07/13 19:47
LDAP(OpenLDAP + RHELv2.1)にて、ユーザーアカウントを
ロックすることは可能ですか?

# passwd -l UserAccount

って crypt ハッシュの頭に '!' をくっ付け実現しているっぽい
んですが、LDAPだとこれが無視されてログイン可能なんです

435:名無しさん@お腹いっぱい。
04/07/14 20:51
Red Hat Enterpriseなら、
shadowの有効期限の方でコントロール可能です。
man 5 ldapしてみてください。

もちろん、LDAPで管理可能です。
nis.schemaのshadowAccount objectclassです。

436:名無しさん@お腹いっぱい。
04/07/15 00:03
>>435
なるほどshadowAccountを使えば良いんですね、助かりました~

437:名無しさん@お腹いっぱい。
04/07/18 13:25
ldapsearch しても作ったエントリが全然見えません。

例えば、

dn: dc=pakahoge,dc=co,dc=jp
dc: pakahoge
objectClass: dcObject

と記した test.ldif というファイルを作ります。その後

ldapadd -x -D "cn=root,dc=pakahoge,dc=co,dc=jp" -w password -f top.ldif

としてエントリを追加し、

ldapsearch -x -b "dc=pakahoge,dc=co,dc=jp" "objectclass=*"

としても、

version: 2

#
# filter: objectclass=*
# requesting: ALL
#

# search result
search: 2
result: 0 Success

# numResponses: 1

という結果になるだけです。どうしたんでしょう?

438:名無しさん@お腹いっぱい。
04/07/18 14:41
バックエンドパーミッション

439:名無しさん@お腹いっぱい。
04/07/18 14:49
>>438
ありがとうございます。
とりあえずslapd.confのaccess行をとっぱらったら見えました。
まだ訳がわからないのですが勉強します。

440:一応修正
04/07/19 01:16
>>435
> man 5 ldapしてみてください。

man 5 shadowの間違いでした。


441:名無しさん@お腹いっぱい。
04/07/30 00:12
Solaris9でさ、
PADLのpam_ldapをコンパイルしようとしたら、
warningばっかりで、コンパイルできないんだけど。

誰か知ってる人いる?

442:名無しさん@お腹いっぱい。
04/07/30 03:45
>>441
普通にコンパイルできて問題なく利用できている。

443:名無しさん@お腹いっぱい。
04/07/30 19:58
warning ばっかりで error が無いならコンパイルできてそうに思えるが

444:名無しさん@お腹いっぱい。
04/08/10 02:28
>395
激しく亀レス。
URLリンク(www.muquit.com)
にあった。

WBEL3.0 respin1 でかるーく動作確認した

445:ななし
04/10/04 00:45:51
openldap使用時に、idletimeoutの設定をかけるのは基本なのでしょうか。
デフォルトではidletimeoutしないようですが・・・。

446:名無しさん@お腹いっぱい。
04/10/12 18:10:02
WindowsのOutlookで使われてるアドレス帳のLDAP検索結果表示のスキーマを、OpenLDAPサーバで設定することはできますか?
Mozilla/Thunderbirdのアドレス帳用のスキーマはこちら↓を参考に取り込むことはできて、
URLリンク(www.mozilla.org)
URLリンク(www.netpress.com)
同様に、Outlook用の*.schemaデータがあるとうれしいんですが。

ちなみにActiveDirectoryの user attributeの情報を見つけましたが、
URLリンク(www.kouti.com)
これから作ることも可能ですかね?

447:名無しさん@お腹いっぱい。
04/10/12 23:37:09
>>445
用途による。

システム全般のldap.conf以外に、
NSS, PAM用のldap.confがあるのはそのため。
# debianだとlibnss-ldap.conf, pam_ldap.conf

>>446

攻めるならaddressBookContainer辺りからなんじゃないのかな?
URLリンク(msdn.microsoft.com)


448:446
04/10/14 11:17:52
openldapのcvsにmicrosoft.schemaがありました
URLリンク(www.openldap.org)
が、参考程度で利用できる状態ではないみたいです。
URLリンク(www.unav.es)
この辺↑も参考に、ごにょごにょいじって試してます。

449:447
04/10/14 22:53:46
>>448
Mac OS X 10.4はそのscheme + OpenLDAPで頑張って、
Windowsのプライマリ・ドメイン・コントローラを目指しているみたい。

450:名無しさん@お腹いっぱい。
04/10/19 01:00:30
現状ActiveDirectoryが立ってる状態で
UNIXの認証をpam_ldap等用いてADのLDAPで統一することは可能でしょうか?

451:名無しさん@お腹いっぱい。
04/10/19 01:09:34
自己レスですが
UNIX認証方法のいろいろってスレみたらだいたいのことは書いてありました
142以降

スレ汚しスマ

452:名無しさん@お腹いっぱい。
04/10/19 01:52:20
あそこに書かなかったのは、
・Inside Active Directory
URLリンク(www.kouti.com)
・UNIX側でそれが許されれば、
kerberos認証で統一の方が簡単かも知れないこと。
くらい。

453:名無しさん@お腹いっぱい。
04/10/27 01:44:32
LDAPでmp3を管理しているという事を聞きますが、
具体的にはどういうシステムを構築しているのでしょうか?
単にmp3の情報を管理しているのか、それともWEBベース
でmp3ジュークボックスソフトを構築しているのか、
興味がありますのでお教え願います。

454:名無しさん@お腹いっぱい。
04/10/28 20:04:58
>>453

こんな感じか?
URLリンク(www.mizzy.org)

455:445
04/10/31 06:10:28
>>447
サーバ、クライアントともにRed Hat(RHEL3)で認証サーバとして
使っています。
PAM用の設定(ldap.conf)でidle_timelimitを短め(10秒)に
設定してはいるんですが、うまい事切れてはくれませんでした・・・。
uid引く様なプロセスが全てslapdに接続して接続しっぱなしに
なるので、今使っているopenldap(OS付属のrpm)だと同時接続数が
1024を超えると以後の接続が切られるので結構痛い状況なのです。

idletimeoutでサーバ側から切る、openldapの同時接続数(FD_SIZESET)
増やしてしのぐ、負荷分散する等色々考えられるとは思うのですが
どう思われますか?

456:名無しさん@お腹いっぱい。
04/10/31 07:17:26
>>445
447 じゃないけど、それなら idletimeout 設定すればいいんじゃない?
それで何か不都合あれば別だけど。
あと FD_SIZESET って FD の最大値を決めてるんだよね?
1024 程度はまだまだ余裕なんでもっと増やしてもよいかも。

457:445
04/10/31 09:20:52
寝ぼけてました。
FD_SETSIZEの間違いです。orz

>>456
FD_SETSIZEの値がselect()で扱うFDの最大値として実装されているので、
とりあえずFD_SETSIZEを65535にして、実際の上限はulimitで2048に
して様子を見ています。

# _SC_OPEN_MAXでFD_SETSIZE以下の上限が制御できる様です

同じ用途で使われている方達も同じ様な状況になっているのでは
ないかと思い、どうされているのか気になって質問してみました。

ユーザ認証にldapを使う場合、DNSと同程度(以上?)に重要な位置付け
になるんだなぁ・・・と痛感しています。

458:名無しさん@お腹いっぱい。
04/10/31 10:57:43
>>455
PAMとNSSを区別できていますか?
まあ状況から考えると、slapd.confでの設定が適切だと思いますが。

459:名無しさん@お腹いっぱい。
04/10/31 10:58:27
それから、nscdを使うのも効果があります。

460:445
04/10/31 16:13:06
>>458
> PAMとNSSを区別できていますか?
区別がついているかかなり怪しいのですが、
PAMは、実際のユーザ認証を提供するプロセス(login,su等)向け
NSSは、glibc経由でldapを使うプロセス(getpwnam,gwtpwuid等を
呼ぶプロセス全般)向けという理解でいます。

>>459
nscdは、NSS経由でldapを使うプロセスに対してキャッシュ機能を
提供するのでnscdを起動しておけばslapdへ逐一接続する事もなくなり
効果あり。といお話ですよね?

うちは、PAM経由のデーモンが沢山起動しているのでidletimeout
について検討していました。

とここまで考えた時点でふと思ったのですが、
・・・うちが特殊なだけか。orz

461:458
04/10/31 22:20:52
>>460
なるほど。
多数の接続の要因になるのは自前のデーモンなんですね?
>>455を読んで、ごく一般的な利用かと思っていました。

idletimeoutで何とかなると思いますが、
それでも駄目なら、saslauthd経由に変更してはどうですか?

462:名無しさん@お腹いっぱい。
04/11/19 22:54:33
ldapのアカウント情報データベースをfingerで引こうとしたのですが、うまくできません


例えばユーザAxxyyz1を検索するとき
%ldapseach -h 192.168.1.2 -x -b 'dc=2ch,dc=university,dc=ac,dc=jp' 'uid=Axxyyz1'
は検索に引っかかり結果が正常に出力されます。
しかし、
%finger Axxyyz1
を実行するとslapdはdc=Axxyyz1...とそれっぽいパケットを吐くようですが
finger: Axxyyz1: no such userと出力されます。

関係しそうなソフト(ports)、OSは以下です。
nss_ldap-1.204_5
openldap-client-2.2.18
openldap-server-2.2.18
pam_ldap-1.7.6
FreeBSD-5.3Release-p1/i386

アカウント情報のldifは大学のデータベースをldapsearchで抜き取り、
ldapaddで加えました。抜いたldifの情報は以下のような情報です。
(たくさん略してます)

# extended LDIF
#
# LDAPv3
# base <dc=2ch,dc=university,dc=ac,dc=jp> with scope sub
# filter: (objectclass=*)
# requesting: *
#

463:名無しさん@お腹いっぱい。
04/11/19 22:56:02
dn: dc=university,dc=ac, dc=jp
objectClass: dcObject
objectClass: organization
dc: university
o: university

# 2ch.university.ac.jp
dn: dc=2ch,dc=university,dc=ac,dc=jp
objectClass: dcObject
objectClass: organization
o: 2ch University
dc: 2ch

# users, 2ch.university.ac.jp
dn: ou=users,dc=2ch,dc=university,dc=ac,dc=jp
objectClass: top
objectClass: organizationalUnit
ou: users

# groups, 2ch.university.ac.jp
dn: ou=groups,dc=2ch,dc=university,dc=ac,dc=jp
objectClass: top
objectClass: organizationalUnit
ou: groups

464:名無しさん@お腹いっぱい。
04/11/19 22:56:54
# students, groups, 2ch.university.ac.jp
dn: cn=students,ou=groups,dc=2ch,dc=university,dc=ac,dc=jp
objectClass: posixGroup
objectClass: top
cn: students
gidNumber: 10000

(略)

# Axxyyz1, users, 2ch.university.ac.jp
dn: uid=Axxyyzz,ou=users,dc=2ch,dc=university,dc=ac,dc=jp
uid: Axxyyz1
cn: nana shi
objectClass: account
objectClass: posixAccount
objectClass: top
uidNumber: 16011
gidNumber: 10000
gecos: nana shi
homeDirectory: /home/students/Axxyyz1
loginShell: /bin/csh

# Axxyyz2, users, 2ch.university.ac.jp
(以下略)

465:名無しさん@お腹いっぱい。
04/11/19 22:57:53
設定したコンフィグファイルと内容は以下です。
/usr/local/etc/openldap/slapd.conf*********
include /usr/local/etc/openldap/schema/core.schema
include /usr/local/etc/openldap/schema/corba.schema
include /usr/local/etc/openldap/schema/cosine.schema
include /usr/local/etc/openldap/schema/inetorgperson.schema
include /usr/local/etc/openldap/schema/misc.schema
include /usr/local/etc/openldap/schema/nis.schema
include /usr/local/etc/openldap/schema/openldap.schema
pidfile /var/run/openldap/slapd.pid
argsfile /var/run/openldap/slapd.args
sizelimit 5000
dbcachesize 50000000
database ldbm
suffix "dc=university, dc=ac, dc=jp"
rootdn "cn=Manager,dc=university, dc=ac, dc=jp"
rootpw {MD5}*
directory /var/db/openldap-data
index objectClass eq

/etc/nsswitch.conf************************
group: ldap files
hosts: files dns
networks: files dns
passwd: ldap files


466:名無しさん@お腹いっぱい。
04/11/19 22:59:14
/usr/local/etc/nss_ldap.conf(ln -s nss_ldap.conf ldap.conf)*****
host 192.168.1.2
base dc=2ch,dc=university,dc=ac,dc=jp
uri ldap://192.168.1.2/
ldap_version 3
port 389
nss_base_passwd ou=users,dc=2ch,dc=university,dc=ac,dc=jp?one
nss_base_group ou=groups,dc=2ch,dc=university,dc=ac,dc=jp?one
nss_map_attribute uidNumber uid
nss_map_attribute gidNumber gid
ssl off
timelimit 30
bind_timelimit 5
idle_timelimit 5

vipwで"+:::::::::"を追加しました。エディタで/etc/groupに"+::0:"を追加しました。
#slapd -u ldap -g ldap -d -1でslapdを起動させました。

どなたか是非語教授ください。よろしくお願いします。長文失礼しました。

467:名無しさん@お腹いっぱい。
04/11/20 01:06:24
長くて読む気しない。とりあえず、
$ getent passwd Axxyyz1
して、ltraceやtethereal -V追い掛けてみて。

468:462-466
04/11/22 02:10:45
>>467
遅くなって申し訳ありません。レスありがとうございます。
fingerとgetpwentのソースを追いました。

途中で以下のような関数を呼び、
__nss_compat_getpwent_r(void *retval, void *mdata, va_list ap)

そいつがldapの関数を呼んで(関数ポインタにまかれて何の関数かわかりませんでした)
struct passwd構造体にアカウント情報を入れるようです。
大学ので行うときちんと格納される以下のように格納
__nss_compat_getpwent_r:USER=Axxyyz1
__nss_compat_getpwent_r:PASS=x
__nss_compat_getpwent_r:UID=16011
__nss_compat_getpwent_r:GID=10000
__nss_compat_getpwent_r:CHANG=(null)
__nss_compat_getpwent_r:CLASS=
__nss_compat_getpwent_r:GECOS=nana shi
__nss_compat_getpwent_r:HOMEDIR=/home/students/Axxyyz1
__nss_compat_getpwent_r:SHELL=/bin/csh
__nss_compat_getpwent_r:EXPIRE=(null)
__nss_compat_getpwent_r:FIELDS=(null)
で、成功を返します。
家から大学、家から自前のLDAPの場合は以下です。(値が入ってないところは略しました)
__nss_compat_getpwent_r:USER=Axxyyzz (データベースに格納されている最後のユーザー)
__nss_compat_getpwent_r:PASS=x
で、失敗を返します。

469:462-466
04/11/22 02:14:18
このことより、
データベースが腐っててstruct passwdに必要な値を格納することができずに
エラーを返しているか、アクセス制御か何かやその他設定が悪くてうまく値を
得ることができなかったのかなと思うのですが原因はまだわかりません。

470:462-466
04/11/22 02:18:17
あとは、パケットを見たところ
自前のLDAPサーバーは一応ホームディレクトリなどの情報も送っているようでした。
が、実際表示させると>>468のように入っていないようでした。

471:名無しさん@お腹いっぱい。
04/11/22 14:22:12
取得してからのmappingがおかしそうだから、
nss_ldap-1.204_5用のldap.confで、

#nss_map_attribute uidNumber uid

の辺りがどうなっているか調べてみれば?

# Debianだと/etc/libnss-ldap.confにあるね。

472:462-466
04/11/24 11:42:45
>>471
レスありがとうございます。
その項目をコメントアウトすると、なにごともなかったかのように
きちんと読むようになりました。

ありがとうございました。

473:467=471
04/11/25 00:59:05
ああ、直ったんだ。
最初「長くて読む気しない」って書いちゃったけど、
細かくて正確な調査報告があると問題点も分かりやすいね(w

474:hehehe
04/11/26 21:38:43
330での、dhcpd.confのデータをldapに格納する件。
draft-ietf-dhc-ldap-schemaがベースだと思うけど
RFCにならずdeleteされてますよね。
その後の動向どなたか知りませんか?

最新のisc-dhcpに対するldap対応パッチってないのかな。

475:467=471
04/11/26 23:07:05
URLリンク(home.ntelos.net)
のpatchでどうよ? (使ったこと無いけどね)


476:hehehe
04/11/27 00:16:25
おぉ! 情報ありがとうございます。
週明けに職場の検証環境で試してみます。

477:名無しさん@お腹いっぱい。
04/11/27 05:09:30
URLリンク(www.asahi.com)
続報でたよ。

大手商社伊藤忠商事のIT関連子会社
「伊藤忠テクノサイエンス」(東京)が約160億円分、
インターネット関連企業「ライブドア」(同)が
約17億円分の取引に関与し、
テクノ社は計約13億円、
ライブドアは計約5000万円の手数料を得ていたという。


478:名無しさん@お腹いっぱい。
04/12/05 22:04:07
nsswitchとLDAPでNISはいらなくなりますか?

479:名無しさん@お腹いっぱい。
04/12/05 23:29:41
はい。さらにpamを付け足せばね。

480:名無しさん@お腹いっぱい。
04/12/22 01:33:41
ずっと気になってること。「LDIF」てなんて発音する?
「えるでぃふ」?そのまま「えるでぃーあいえふ」?

481:名無しさん@お腹いっぱい。
04/12/22 09:51:45
えるでぃふ

482:名無しさん@お腹いっぱい。
04/12/22 16:30:40
OpenLDAPのコードの汚さにうんざりしてるんですが、
オープンソースで、これから育ちそうな競合はないものか?


483:名無しさん@お腹いっぱい。
04/12/22 17:19:01
OpenBSDの人達にOpenOpenLDAPでも作ってもらいますか。
(SASLなんとかしてほしい...)


484:名無しさん@お腹いっぱい。
04/12/22 21:10:46
>>482
mutex_lockとthreadpoolなんて、動いてるのが奇跡に近いコードになってるよな
1.2系の最初の頃はシンプルなコードだったのにな。。

485:名無しさん@お腹いっぱい。
04/12/22 21:22:54
LDAPってよくわかんねっす

なにができるのでしょうか??
兄貴な方々おしえてくらさい

486:名無しさん@お腹いっぱい。
04/12/23 01:47:57
>>481
でもLDIFの読み方のってるHPとかないよねー。
影薄い(/・∀・)/

487:名無しさん@お腹いっぱい。
04/12/23 02:19:29
>>485
簡易データベースです。
ネットワーク基本サービスの一部として働きます。
例えばアカウント情報、ブックマークレポジトリ。

488:名無しさん@お腹いっぱい。
04/12/23 02:44:38
>>482
正直、現状ではない。

>>483
OpenBSDではLDAPは思い切り軽視されていて、userlandには当然OpenLDAPは入って
いないし、pamにすら対応していないし、それどころか man -k ldap しても
何も出てこないぐらいだから…

489:名無しさん@お腹いっぱい。
04/12/23 23:47:17
>>487 あにきー ありがとです。 PostgresqlなどとはちがうDBなんすね
ラディウスのかわりになるですか?

490:名無しさん@お腹いっぱい。
04/12/24 00:37:48
>>489
> ラディウスのかわりになるですか?

ええ、LDAPもAAA(Authetication, Authorization and Accounting)やりますよ。

↓freeradiusのLDAP plugin
Radius authentication using LDAP
URLリンク(www.tldp.org)

最近は直接LDAPさーばに投げられるものも多いし。

491:名無しさん@お腹いっぱい。
04/12/30 17:26:41
OpenLDAPって数値を検索できる?
例えばuidNumberが1000以上2000以下なエントリーを抜き出したいです


492:名無しさん@お腹いっぱい。
04/12/30 17:59:22
integerMatchで、greaterOrEqual, lessOrEqual


493:名無しさん@お腹いっぱい。
05/01/06 15:36:24
LDAPに登録されているアカウントにsuしようとすると、segmentation faultしてしまいます。
どこで落ちているのかstrace -o trace su - hogeで、
open("/usr/lib/libcrypto.so.0.9.7", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20E<\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0555, st_size=1161935, ...}) = 0
old_mmap(NULL, 990776, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xf69bc000
old_mmap(0xf6a99000, 73728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xdd000) = 0xf6a99000
old_mmap(0xf6aab000, 11832, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xf6aab000
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
となりました。

/etc/passwdにあるユーザにsuしたとき同じ部分を見てみると、
old_mmap(NULL, 990776, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0xf6998000
old_mmap(0xf6a75000, 73728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0xdd000) = 0xf6a75000
old_mmap(0xf6a87000, 11832, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xf6a87000
mprotect(0xf6ff9000, 3788, PROT_READ|PROT_WRITE) = 0
mprotect(0xf6ff9000, 3788, PROT_READ) = 0
mprotect(0xfee9f000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC|PROT_GROWSDOWN) = 0
close(4) = 0

であることから、mprotectで問題がおきているだろうってのは解ったんですが。。。
そこからどうしたらいいのかわかりませんでした。

open-ldap-2.2.20
nss_ldap-277
pam_ldap-176
bdb-4.3.27

ldapsearchなどではちゃんと引けています。

アドバイスをよろしくおねがいします。

494:名無しさん@お腹いっぱい。
05/01/07 05:13:10
>>493
自己解決。

openldapのconfigureで、--enbale-cryptをしていました。それをはずしたらうまく動きました。

495:名無しさん@お腹いっぱい。
05/01/07 11:44:34
つーか、/usr/lib/libcrypto.so.0.9.7をどうにかしないと…

496:名無しさん@お腹いっぱい。
05/01/07 13:38:18
うみゅ。とりえあずOpenSSLのライブラリを入れなおすべきですな。

497:名無しさん@お腹いっぱい。
05/01/11 17:32:54
LDAPのAPIですが、
Filter設定してsearchとかやりますが、
SQLを指定してやる方法もあるのですか?
JAVAや.Netから使いたいんですが・・・

498:名無しさん@お腹いっぱい。
05/01/11 18:23:07
>>497
SQLを指定ってあまりにも意味不明なんだけど

499:名無しさん@お腹いっぱい。
05/01/11 19:46:23
>>498
例えば
Select 属性 from 'LDAP://DC=xxx,・・・' where ・・・
とかのことなんですが。
RDBアクセスなんかでは、SQL文指定でStatementオブジェクト作成⇒
executeQuery()してResultSetを処理ってやるけど、
そんな風にできるんでしょうか?



500:名無しさん@お腹いっぱい。
05/01/11 22:29:05
>>499
JavaならJNDI使え。知らないなら調べろ。
.netはよー知らんが、ActiveDirectoryとかにアクセスできるインターフェースがあるでしょ?

もしくは、OpenLDAPのバックエンドをRDBに(ぉ


501:名無しさん@お腹いっぱい。
05/01/12 00:01:54
Sun One System Directory 5.2 を使ってます。
こんなエラーが出てログインできなくなってしまってしまったんですが、
このページのとおりやってみてもinvalid format になって解決できません。

URLリンク(swforum.sun.com)

ldapsearch の結果を元にldapmodifyを実行しても line2の
「cn=admin-serv-servername, cn=Administration Server, cn=Server Group,」
がinvalid format となってしまう。

同じようなエラーを経験した方いませんか?


502:名無しさん@お腹減った。
05/01/12 00:32:48
>>499
Novell から LDAP JDBC Driver ってのが出てるが。
登録すれば無償で取って来られたはず。
URLリンク(developer.novell.com)


503:名無しさん@お腹いっぱい。
05/01/12 04:26:28
>>501
dn: cn=admin-serv-edog, cn=Netscape Administration Server, cn=Server Group, cn=edog.labnet.east.sun.com, ou=labnet.east.sun.com, o=NetscapeRoot
で一行であることは理解してますよね?

理解できてないとすると、(失敗した時に手に負えないという意味で)
かなり危険なことに手を出そうとしていることを念頭においてください。

504:名無しさん@お腹いっぱい。
05/01/12 10:07:13
>>500
今、JAVAではJNDI、.Netでは.NetのDirectoryアクセスクラスを
使ってやてるけど、SQL形式のインタフェースじゃないから
そういうのが無いかなぁっていうことでした。

>>502
なるほど、やはりJDBC経由になるってことですか。
それが自然ですね。

どうもです。

505:名無しさん@お腹いっぱい。
05/01/12 21:25:07
URLリンク(japan.internet.com)

これってどうなの?→使ったことある人

506:名無しさん@お腹いっぱい。
05/01/12 21:55:57
iPlanetがあぼ~んして以来、完全に忘れていたproductだなぁ。

507:名無しさん@お腹いっぱい。
05/01/13 11:38:14
>>505
5年以上前はよかったよ。
今はどうかしらないけど、OpenLDAPの競合くらいにはすぐになると思うよ。
iPlanet(Sun)位になるには時間がかかると思う。

508:名無しさん@お腹減った。
05/01/13 11:54:13
こんなところで聞くのもなんだが、ldap-jp ml って終わったの?
サーバが止まってるみたいで、メール送っても、
途中でエラーになって帰ってくるのだが。


509:名無しさん@お腹いっぱい。
05/01/13 16:05:33
皆さんが考える、ユーザ認証システムをRDBMSではなく、
ディレクトリサービスを用いる決定的な理由を教えてください。

検索性能に特化していると言われてるけど、
DBと比べて性能差があるのでしょうか?



510:名無しさん@お腹いっぱい。
05/01/13 16:06:58
>>509
ねえ、ボク。APIって言葉知ってる?

511:名無しさん@お腹いっぱい。
05/01/13 16:30:35
はい、薄々ながらですが。

512:名無しさん@お腹いっぱい。
05/01/13 17:18:40
509は実装とインターフェースとの違いがまったく理解できてないんだろうな。
LDAP serverのbackendにRDBMS使う例だってあるというのに。

513:509
05/01/13 17:54:40
>>510、512
レスありがとうございます。

バックエンドでRDBMSも使えることは知っております。
OpenLDAPにしても、Berkeley DBをバックエンドで使うんですよね?

にも関わらず、一般的な記事ではディレクトリサービスとRDBMSは
比較対照になっていて、しかも「ディレクトリサービスは検索に特化されている」
とされています。
"特化=DBに比べて早い"or"特化=更新に比べて検索が得意"のどっちなのかを
教えて頂きたかったのです。

また、"特化=DBに比べて早い"とした場合、どうして性能差が出るのでしょうか?

「もっと勉強して出直して来い」なのかもしれませんが、
ご教授願います。



514:名無しさん@お腹いっぱい。
05/01/13 18:38:57
そもそも、RDBMSを用いた認証って一般的なプロトコルが存在しないでそ。
各アプリがそれぞれのRDBMSに合わせた手法で独自にアクセスし、各アプリの独自の
形式で収納している。

LDAPを使う場合は、各アプリはLDAPプロトコルに則ってアクセスすればいいのだし、
スキーマも認証系ではだいたい決っているので、それにのっとれば各アプリが共通した
認証情報を使える。これはLDAPサーバのバックエンドになにが使われているだとか
速度がどうだとかはまったく関係ないインターフェース/プロトコルレベルの話。

そして、SQL系RDBMSよりもBerkeleyDBのほうがLDAPで用いるような単純な検索では
規模によっては速度的に有利だとかメンテも遥かに楽とかいうのはあるけど、
509はこのこととLDAPプロトコルの利点とを混同している。

余談。MySQLのバックエンドにBerkeleyDBを使いトランザクションを実現していた
時期もあったなぁ。いまはMySQLでトランザクションといえばInnoDBだから
最近の人には信じられないことだろうけど。

515:509
05/01/13 19:22:14
>>514
レスありがとうございます。

> 509はこのこととLDAPプロトコルの利点とを混同している。
なるほど。結局はバックグラウンドの格納先の問題であって、
ディレクトリサービスがどうとかLDAPだからとかそう言う問題ではないのですね。
もし、SQL系RDBMSでディクレクトリサービスを管理するとなると
テーブル構成はどの様になるのでしょうか?


> LDAPサーバのバックエンドになにが使われているだとか
> 速度がどうだとかはまったく関係ないインターフェース/プロトコルレベルの話。
この部分に関してはうっすらではありますが、理解しておりました。
ただ、これだけだとLDAPに決定する理由にしてはもう一パンチ欲しいなぁと
思ってたんです。
でも、まだぼんやりではありますが、ご説明いただいた事を
考えると結構大きなパンチになりそうです。

もう少し、しっかり勉強してみます。

本当にありがとうございました。



516:名無しさん@お腹いっぱい。
05/01/13 19:49:10
>>515
> もし、SQL系RDBMSでディクレクトリサービスを管理するとなると
> テーブル構成はどの様になるのでしょうか?

OpenLDAPのバックエンドにRDMBSが使えることは知っているのだから、
OpenLDAPのservers/slapd/back-sql/rdbms_depend/*/backsql_create.sqlを
参考にすればいいのに…

517:501
05/01/13 23:15:42
>>503
ありがとう。動きました。

2chアク禁環境にいたのでレス遅れて申し訳ないです。
おかげで翌朝に解決できました。

仰るとおり理解してませんでした。。
自社に戻って技術文書もって帰りました。。勉強します。。

518:名無しさん@お腹いっぱい。
05/01/14 02:10:36
>>509
> 皆さんが考える、ユーザ認証システムをRDBMSではなく、
> ディレクトリサービスを用いる決定的な理由を教えてください。

RDBMSじゃなくて、RDBの間違いだと思うが、

・ネットワークワイドな分散認証レポジトリの構築が容易。
・LDAPを中間層として構築すれば、レポジトリのRDB以降も行いやすい。
 つまりLDAPプロトコルが実装透明性を担う。
 LDAPを介したシステム組み合わせも容易。
・SASLを使うことができるので、LDAPプロトコルに閉じたまま、
 Kerberosを選ぶことができる。RDBではKerberosを扱う事はできない。
・認証の主体となることが多く、認証に関係することが多い、
ユーザのレポジトリはLDAPの専門分野である。
・認証RelemのレポジトリとしてもLDAPは優れている。
 schemeが既に多くつくられ、多くの場所で運用されている。

など。

519:名無しさん@お腹いっぱい。
05/01/14 02:12:24
>>513
> にも関わらず、一般的な記事ではディレクトリサービスとRDBMSは
> 比較対照になっていて、しかも「ディレクトリサービスは検索に特化されている」
> とされています。

記者が馬鹿だから。

520:名無しさん@お腹いっぱい。
05/01/14 08:27:20
>>513
たとえばどの記事よ。

521:509
05/01/14 10:17:53
>>516
調べてみました。
ありがとうございました。

>>518
やっぱり、プロトコルやスキーマが標準化されている事って
かなり大きいんですね。
Kerberosですか。新たなメリットです!
調べてみます。

ありがとうございました。

>>519
RDBをバックエンドに使えるはずなのに、
検索に特化されているとかトランザクション機能が無いとか
書いてあるので、なんか仕掛けがあるのかと思ってました。

そもそもトランザクション機能がよくわかってないんですけど。。

>>520
とりあえず、これです。
URLリンク(www.atmarkit.co.jp)
URLリンク(japan.cnet.com)



522:名無しさん@お腹いっぱい。
05/01/14 15:29:18
>>518
schemaのtypo.した。



523:名無しさん@お腹いっぱい。
05/01/14 15:41:48
>>521
トランザクション機能は全くないわけではありません。それに、

>>509
> ユーザ認証システム

として考えた場合は十分です。
ユーザ認証レポジトリとして考えてみると、
例えばdigital IDの生成の時には、若干トランザクション処理をする必要がありますが、
LDAPプロトコルとしてサポートしないだけで、
LDAPサーバを用いたユーザ認証レポジトリシステム、
しかもRDBと比較する程度の規模のもので、(iPlanet, Active Directory)
ちゃんとやってないもの方が少ないです。

そもそも(RDBでなく)RDBMSという「システム」と比べるべきなのは、
(RDBMSには認証機構やODBCなども入っていますから)
Sun Java System Directory Serverのような、
Directoryシステムであって、LDAPプロトコルでも、

>>509
> ディレクトリサービス

でもないですよね。RDBMSだってRDB部分だけ見ればほとんど何もないです。

524:名無しさん@お腹いっぱい。
05/01/14 15:43:58
>>521
> とりあえず、これです。

読む記事が短かすぎます。
この記事を見るだけで出来ることは、この記事をまとめることくらいです。
それだってきっと見当違いになるでしょう。表面をなぞったものを読んだだけなので。

525:509
05/01/14 17:53:53
>>523,524
レスありがとうございます。
知識がうすっぺらなんで、勘違いや混乱を起こしてしまうんですよね。

ディレクトリサービスとディレクトリシステム、
RDBとRDBMSをごっちゃにして考えてました。

最初の発言の『ユーザ認証システム』って言葉もユーザを認証する仕組み程度に
何気なく使っていました。
ので、『ユーザ認証レポジトリシステム』との区別がついておりません。。

『ユーザ認証レポジトリシステム』調べてきます。


526:名無しさん@お腹いっぱい。
05/01/14 18:03:01
SunOne Directory ServerってもともとはNetscape Directory Serverだよね?

RedHatがNetscape Directory Serverをフリーにするってことは、昔の
SunOne Directory Serverと似たようなものが出てくるのかな? もっとも、
NetscapeはCommunicatorのソースがあの調子でMozillaでは結局一から作りなおす
ハメになったわけで、出てくるソースについてあんまり期待しちゃいけないのかも
しれないけど。とはいえ、さすがにOpenLDAPよりは奇麗だと期待したい。

527:名無しさん@お腹いっぱい。
05/01/19 19:43:46
phpでLDAPにエントリを追加したいけど全然できません。
コマンドラインでは入るし、
ldap_add()に渡すデータ配列が間違っているだけのようなんだけど・・・。

Warning: ldap_add(): Unknown attribute in the data

Warning: ldap_add(): Add: Undefined attribute type

どっちが正解に近いエラーですか・・・。on_

528:名無しさん@お腹いっぱい。
05/01/19 23:42:31
>>527
PHPはよく知らないので、外しているかも知れないけど、

> Warning: ldap_add(): Unknown attribute in the data

データに不明な属性が含まれています。
例えば, posixAccountオブジェクトクラスのオブジェクトに、
jpegPhoto属性が含めてしまっているような場合。
下に比べると、属性としては正しいものなんでしょう。

> Warning: ldap_add(): Add: Undefined attribute type

定義されてない属性がある。
例えば、gifPhoto属性なんてどこにもないよー、など。

LDAPのerror codeそのまんまの解釈をしてみました。

529:528
05/01/20 00:15:08
> 528

ありがとうございます。
そう言われて、今ちょっと間違っていそうなところに気が付きました。
明日やって見ます。

530:527
05/01/20 10:14:27
やっぱり出来なかった。

Warning: ldap_add(): Add: Object class violation
これはもっと正解に近い?
オブジェクトクラス違反
近そうとは思うけど、どうしたら・・・。

531:名無しさん@お腹いっぱい。
05/01/21 00:25:37
>>530
> Warning: ldap_add(): Add: Object class violation

オブジェクトクラスそのものに関するエラーが起きたんだよ。

>>528の前者はオブジェクトクラスにはない属性を指定した場合。
こっちは、
・オブジェクトクラスの指定が全くない。
・存在しないオブジェクトクラスを指定した。
・複数のstructualオブジェクトクラスに属している。
などです。


532:名無しさん@お腹いっぱい。
05/01/25 11:19:29
URLリンク(incubator.apache.org)

これは期待していいのか?

533:名無しさん@お腹いっぱい。
05/01/30 13:29:14
OpenLDAPって数千件ほどのデータ更新をしようとすると10分くらいかかるんですが
こんなもんなんですか?
マシンは

Dell Power Edge 750
RHEL3 (smp)
P4 2.8Ghz (HT)
DDR 512MB
SATA 80GB * 2 RAID1

です。

534:名無しさん@お腹いっぱい。
05/01/30 20:21:30
OpenLDAP2 ってバグだらけだよな
オープンソースがうまくいかなかったときの悲惨さを見た

535:名無しさん@お腹いっぱい。
05/01/30 23:10:44
emacsでdviファイルをtexファイルに変換できるのでしょうか?できるのなら方法を教えて下さい。texファイルを消してしまいました!助けて下さい。。。お願いします。

536:名無しさん@お腹いっぱい。
05/01/31 10:46:59
>>533
本当に更新に時間かかっているの?
更新ごとにやるindexのないattributeでの検索に時間かかっているって事はない?

537:名無しさん@お腹いっぱい。
05/02/01 22:50:21
>>534
OpenLDAPの採用を検討しているので気になりました。
バグで苦労した点を教えてくれないでしょうか。

538:名無しさん@お腹いっぱい。
05/02/02 00:16:16
>>534 の脳がバグってるんだろ

539:名無しさん@お腹いっぱい。
05/02/02 04:47:49
>>533
もし berkeley db を使ってるなら ldbm を試してみた方がいい。
並列に高い負荷がかかると、berkeley db と OpenLDAP の組み合わせ
はメチャメチャ遅くなることがある。
逆に負荷が軽ければ berkeley db を選んだ方がずっと速いことも
ある。あと、パラメータのチューニングでかなり性能は変わる。

ちなみに berkeley db と、とあるバージョンの OpenLDAP の
組み合わせで大量の更新を行なうと、データベースが壊れて
ldapsearch もできなくなったことがあった。(再現性あり)
ldbm にして回避したが。

上記の事情は、OpenLDAP のバージョンによってもコロコロ変わる。

更新が少なくて参照ばかりなら、そんなに問題はでないと思うけど、
大量の更新を行なう用途に OpenLDAP を使うのはやめた方が安全。
苦労すればなんとか解決はできるが。

540:名無しさん@お腹いっぱい。
05/02/03 00:48:24
>>539
データ更新が頻発するシステムでOpenLDAPを置き換えるならどういう
選択肢があるんだろう。


541:名無しさん@お腹いっぱい。
05/02/03 02:27:12
素直にRDB使うとか?

542:名無しさん@お腹いっぱい。
05/02/04 08:02:02
backendにRDBMS使うとか

543:名無しさん@お腹いっぱい。
05/02/10 13:03:25
ldapのBDCへの複製をしたいと思ってるのですがうまくBDCへ伝播されません。。お知恵をお貸しくださいm(_ _)m
gentooをホストにPDCを構成し、認証にldap(2.1.30-r2)を使っています。BDC(debian slapd2.1.30-3)への複製を行いたいと思っています。
URLリンク(tsuttayo.sytes.net) URLリンク(tsuttayo.sytes.net)
上記2ページを参考に設定を行い、BDC側にはreplicaのbinddnでldapbrowserを使って接続し、値の書き換えなどができることを確認。

PDC側は、/var/lib/openldap-slurp/replica/slurpd.replogにmodifyのログが生成されているようでしたが、BDC側に変更が伝播していないようです。
ちなみにデバッグ(slurpd slapd.conf -d 255)で実行したログの後半(ここで停止。killしてもslurpdをとめられない…)最後にlocalhostに行ってるのが怪しいですがどうしていいものか…
Config: ** successfully added replica "hoge.localdomain:389"
Config: ** configuration file successfully read and parsed
begin replication thread for hoge.localdomain:389
Initializing session to ldap://hoge.localdomain
ldap_create
ldap_url_parse_ext(ldap://hoge.localdomain)
bind to hoge.localdomain:389 as uid=replica,ou=Users,dc=localdomain (simple)
ldap_simple_bind_s
ldap_sasl_bind_s
ldap_sasl_bind
ldap_send_initial_request
ldap_new_connection
ldap_int_open_connection
ldap_connect_to_host: TCP hoge.localdomain:389
ldap_create
ldap_simple_bind
ldap_sasl_bind
ldap_send_initial_request
ldap_new_connection
ldap_int_open_connection
ldap_connect_to_host: TCP 127.0.0.1:389

544:名無しさん@お腹いっぱい。
05/02/10 17:55:07
localにslapdは立ち上がっているのか?

545:543
05/02/10 18:45:07
>>544さん
PDC, BDCの両方で立ち上がってます。ldapsearch -x -h ホスト名 するとお互いにやってもずらーっと出るので大丈夫と思います。
>>543のログはPDCでのもので、hoge.localdomainがBDC側にあたります。

546:名無しさん@お腹いっぱい。
05/02/24 11:24:46
>>539
うちでもBarkeleyDBよくぶっ壊れると思ってたんだけど、やっぱりか・・・
BackendにRDB使えるって聞くけど、あまり導入したという資料見ないし、
実績がどの程度とか、そのへんで二の足踏んでる。

547:名無しさん@お腹いっぱい。
05/02/27 15:34:10
OpenLDAP以外にフリー&商用可のLDAPサーバって何があるの?

548:名無しさん@お腹いっぱい。
05/02/27 16:21:23
>>505


549:名無しさん@お腹いっぱい。
05/03/17 14:26:09
下記のようにpam_ldap を makeすると、エラーになりますが、 make install していいものでしょうか?
pam_ldap.c:3320: warning: dereferencing type-punned pointer will break strict-aliasing rules
pam_ldap.c:3357: warning: dereferencing type-punned pointer will break strict-aliasing rules
pam_ldap.c:3462: warning: dereferencing type-punned pointer will break strict-aliasing rules
pam_ldap.c:3477: warning: dereferencing type-punned pointer will break strict-aliasing rules
pam_ldap.c: In function `pam_sm_acct_mgmt':
pam_ldap.c:3694: warning: dereferencing type-punned pointer will break strict-aliasing rules
pam_ldap.c:3703: warning: dereferencing type-punned pointer will break strict-aliasing rules
gcc -DHAVE_CONFIG_H -DLDAP_REFERRALS -DLDAP_DEPRECATED -D_REENTRANT -g -O2 -Wall -fPIC -c md5.c
/usr/ccs/bin/ld -o pam_ldap.so -B dynamic -M ./exports.solaris -G -B group -lc pam_ldap.o md5.o -lldap -llber -lnsl -lcrypt -lresolv -lpam -ldl
ld: 重大なエラー: ライブラリ -llber: 見つかりません。
ld: 重大なエラー: ファイル処理エラー。pam_ldap.so へ書き込まれる出力がありません。
make: *** [pam_ldap.so] Error 1

550:名無しさん@お腹いっぱい。
05/03/17 23:24:20
>>549
make install以前にリンク失敗してるじゃない

551:名無しさん@お腹いっぱい。
05/03/18 13:21:47
FC3 で slapd をデバックモードで起動すると、
2.5.13.1 (distinguishedNameMatch): matchingRu
leUse: ( 2.5.13.1 NAME 'distinguishedNameMatch' AP
PLIES ( dITRedirect $ associatedName $ secretary $
documentAuthor $ manager $ seeAlso $ roleOccupant
$ owner $ member $ distinguishedName $ aliasedObj
ectName $ namingContexts $ subschemaSubentry $ mod
ifiersName $ creatorsName ) )
2.5.13.0 (objectIdentifierMatch): matchingRul
eUse: ( 2.5.13.0 NAME 'objectIdentifierMatch' APPL
IES ( supportedApplicationContext $ supportedFeatu
res $ supportedExtension $ supportedControl ) )
slapd startup: initiated.
bdb_db_open: dbenv_open(/var/lib/ldap)
bdb(dc=my-domain,dc=com): Program version 4.2 doe
sn't match environment version
bdb_db_open: dbenv_open failed: Invalid argument
(22)
backend_startup: bi_db_open(0) failed! (22)
slapd shutdown: initiated
====> bdb_cache_release_all
slapd shutdown: freeing system resources.
bdb(dc=my-domain,dc=com): txn_checkpoint interfac
e requires an environment configured for the trans
action subsystem
bdb_db_destroy: txn_checkpoint failed: Invalid ar
gument (22)
slapd stopped.
connections_destroy: nothing to destroy.
とエラーになります原因教えて下さい

552:名無しさん@お腹いっぱい。
05/03/18 13:28:25
デバッグモードでなければ動くの?

553:名無しさん@お腹いっぱい。
05/03/18 13:49:27
>>551
database fileが壊れてます。

554:名無しさん@お腹いっぱい。
05/03/18 14:00:02
>>553
Thanks

database fileを直して正常に動作させるにはどうすればいいでしょうか?

555:名無しさん@お腹いっぱい。
05/03/18 14:23:15
壊れたdatabase fileは破棄してください。

556:名無しさん@お腹いっぱい。
05/03/18 14:26:27
それから>>539


557:名無しさん@お腹いっぱい。
05/03/18 15:02:01
>>556

lapd startup: initiated.
slapd starting

Thanks


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch