OpenLDAP
■ このスレッドは過去ログ倉庫に格納されています
OpenLDAP slapd 2.4.10 で TLS を使おうとしています。 2.3 まで使っていたそのままの設定で 2.4 に移行したのですが TLS を有効にすると起動しなくなってしまいました。 OS は Debian lenny です。 slapd.conf における設定は次のとおりです。 TLSCipherSuite HIGH:MEDIUM:+SSLv2 TLSCACertificateFile /etc/ldap/cert.pem TLSCertificateFile /etc/ldap/cert.pem TLSCertificateKeyFile /etc/ldap/key.pem TLSVerifyClient never ログにおけるエラーは次のとおりです。 Aug 13 15:08:56 hoge slapd[5510]: main: TLS init def ctx failed: -1 Aug 13 15:08:56 hoge slapd[5510]: slapd destroy: freeing system resources. 使っているのは自己署名証明書で、鍵は key.pem、証明書は cert.pem です。 これらが壊れているかと思い以下のコマンドで確認しましたが 特に問題はレポートされませんでした。 openssl x509 -in cert.pem -noout -text openssl rsa -in key.pem -noout -text slapd は openldap というユーザの権限で実行されるので key.pem/cert.pem のアクセス権はそれでアクセス可能なようにしています。 どのような点を調べればいいでしょうか? >>201 とりあえずデバッグレベル挙げて。 どのファイルか分かるまで。 >>204 openssl req -x509 で自己署名証明書を作成したので。 仮の CA を別にでっち上げても同じエラーでした。 なおログを見ると鍵・証明書ファイルはちゃんと読めているようです。 slapd[30909]: line 42 (TLSCACertificateFile /etc/ldap/demoCA/cacert.pem) slapd[30909]: line 43 (TLSCertificateFile /etc/ldap/newcert.pem) slapd[30909]: line 44 (TLSCertificateKeyFile /etc/ldap/newkey.pem) slapd[30909]: line 45 (TLSVerifyClient never) ldaps での接続はとりあえずおいておいて、実はバックエンドをSQL(MySQL + ODBC) にしてから変更が反映されるまで時に間がかかるのです。数分間〜数時間、 場合によっては slapd を再起動しないと変更が反映されないこともあります。 たとえば ldapadd でエントリを追加し、ldapsearch で当該エントリを 問い合わせると10回に2回くらい見つからないとか。 あるいはエントリを削除したあともなぜか10回に2回くらい見つかってしまうとか。 slapd 内に何かキャッシュされているのでしょうか? しかしキャッシュだとすると一度反映されたものがまた逆戻りということは無いはずです。 MySQL 側のログをつぶさに観察していると、 データベースへの更新 (insert/update) は即座におきています。 しかし問い合わせに対して select が発生しないことがあるようです。 なぜ slapd がバックエンドに問い合わせしないことがあるのでしょうか? >>205 > なおログを見ると鍵・証明書ファイルはちゃんと読めているようです。 (略) そこは設定ファイルを読み込んでるだけ。 >>206 そうなんすか・・ ううむ、libopenssl が -1 を返す条件を ソースからあたってみます。 >>205 > openssl req -x509 で自己署名証明書を作成したので。 うーん… >>172 一般ユーザではLDAPのポート389が使用できないため 使用するポートを1024 以降で設定しているのに、 389ポートでアクセスしているからでは? どうしても下記のmodifications require authenticationというエラーが出てしまいます…_| ̄|〇 何がいけないんでしょうか? #smbldap-populate Populating LDAP directory for domain MYGROUP (〜) (using builtin directory structure) adding new entry: dc=〜,dc=〜 failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 498, <DATA> line 466. adding new entry: ou=Users,dc=〜,dc=〜 failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 498, <GEN1> line 12. adding new entry: ou=Groups,dc=〜,dc=〜 failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 498, <GEN1> line 17. adding new entry: ou=Computers,dc=〜,dc=〜 failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 498, <GEN1> line 22. adding new entry: ou=Idmap,dc=〜,dc=〜 failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 498, <GEN1> line 27. adding new entry: uid=root,ou=Users,dc=〜,dc=〜 failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 498, <GEN1> line 57. adding new entry: uid=nobody,ou=Users,dc=〜,dc=〜 failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 498, <GEN1> line 87. adding new entry: cn=Domain Admins,ou=Groups,dc=〜,dc=〜 failed to add entry: modifications require authentication at /usr/sbin/smbldap-populate line 498, <GEN1> line 99. adding new entry: cn=Domain Users,ou=Groups,dc=〜,dc=〜 つ modifications require authentication いやパスワードやbinddnとかちゃんと設定してるんですよ え? /var/log/messeage とかsecure とか。。 >>216 nss_ldap: failed to bind to LDAP server ldap://127.0.0.1/: Invalid credentials というメッセージが多いです LDAPを使って各UNIXサーバのログインアカウントを管理した場合、 LDAPの設定でユーザ毎にサーバのログインの権利を制御することって出来ますか? nsswitch.confのpasswd欄にcompatを指定して、 +@グループ指定で制御したまえ。 >>216 OpenLDAPが鉄板だとは思ってないから、やってみたいとも思えないけど。 つーか、krb5とかの方がよほどかマシに思える。 まどろっこしいことには 大差無いが。 誤爆か? ほとんどのLDAPサーバで、Kerberos 5使えるぞ。 SASLを通して。 >>218 host attributeじゃだめなの? 結構OpenLDAPって使われてるはずなんだけど、いまいち盛り上がってないな。 みんな商用製品使ってんのかねー? マルチマスターとかもっと議論されててもいいはず。 導入した人います? 議論すること別にないので。 いまだにradiusしかまともに喋れないVPN機とかウザイって思うくらいで。 OpenLDAP から FDS への移行って大変かな? 試した方いますか? samba schema を使っているから、簡単に移行できるか 心配で・・・ >>225 schemaがどうしたこうしたよりも、 サーバ管理のHOWTOが全然違うからそこがネックになると思う。 例えばFDSがほとんど全ての設定をLDAP上のデータとして持つこととか。 データの移行やschemaなんかは全く問題ない。 というか問題になったら、もうそれはLDAPじゃないよ。 アクセスコントロールリストは切ったり張ったり、 さらに書き換えもする必要がある。 とにかく管理者ガイドは全て目を通してください。 サーバの能力は十分すぎるくらいだから、 ほとんどの場合移行担当者の能力がボトルネックです。 bdbさえつかわなければおかしなバグには遭遇しないのでしょうか 最近bdb backendのバグも直ったんじゃないのかな。 FDSのスレは別にたてないで,ここに書き込めばいいのかな OpenLDAPをメールの認証用に使ってる人って アカウント追加時のディレクトリ操作とかってどうしてんだろ うちはphp越しにLDAPアカウント追加=>新アカウントの存在確認=>Maildir・ldif・iaf等作成用の.shをphpから実行、 ってやってる 研究室でNISが使われてるんですが 管理者の引き継ぎやマシン移行が繰り返されたために 設定があまり綺麗でない状態になってしまいました この際にOpenLDAPに乗り換えようと思っているのですが お勧めの入門書などありますでしょうか? 普通は公式ページのガイドとかその他の日本語リソースなんかで十分なんでしょうか 自分はDOCの中身とマニュアルの和訳と、あとぐぐって出てきたサイトで勉強して、大体なんとかなった。 本買って読んでハマったりするよりは自力で調べつつハマるより勉強になると思ってる。 日本語おかしいな。自力で調べつつハマる方が、に脳内変換頼む >>235 乗り換えだけが目的ならそれで十分。 研究室ならエントリも少ないだろうから、 手作業で問題ないと思うが、 一応file形式からの移行toolがある。 nisが動いてる環境と通信してldapにimportするスクリプトも /usr/shareのどっかに入ってたな >>234 LAMかなんか使えるかな。。 Samba-LDAPのバックエンドで動いてるのがあるが、 統合認証/PAMしてないから。 LAMって、LDAP Account Manager だよね。 独自スキーマ使えるのかな。 SambaやPAMとの連携が必須で無くて、かつ独自のLDAPスキーマがサポートされてれば素敵なんだけど。 ホームディレクトリの自動生成・自動削除は出来るみたいだけど、 登録時に何かのコマンドを実行(maildirmakeとかね)するのは出来ない…のかな。 ただ日本語対応してないのが惜しいね。 皆が皆、英語読めるワケじゃ無いからなあ。 つーかそれとは別に、PAM連携って必要? 時代に逆行してるんかもしらんけど、メールユーザはメールユーザのみで 適当に作ったVirtualUserに全部閉じ込めちまうのがシンプルに思うんだけど、世間一般はどうなんだろう。 >>241 LAMは日本語対応・・・つか、 データの扱いをUTF-8にすれば良いだけじゃないか。 >>241 何だって使う必要があるときに使えばいい。 > pam 君は使う必要がない、それだけの話。 ldapaddするとき、LDIF内容ってこんな感じじゃないですか。 dn: cn=xxx, dc=xxx objectClass: DUMMYOBJECT dummyattr: dummyval 仮にDUMMYOBJECTにdummyattrがあるとして、dnにしかdummyattrがない状態でエントリを自動登録できるようなスキーマ設定ってできますか。 ↓だけでDUMMYOBJECT.dummyattrを登録できちゃうような。 dn: dummyattr=hogehoge, cn=xxx, dc=xxx objectClass: DUMMYOBJECT LDAPはもう時代遅れ、というか運用しにくいから普及すること無く終わると思う せいぜい ActiveDirectory で生き残るくらいか Radius、Sun製品がある。 ADでUNIX、Linux管理できるのか? 出来ないでもないだろうけど、 バージョンアップするたびに検証する必要があるな、MS製品の場合。 ユーザーの分類するのにobjcetClass使うのって正しい使い方? mailしか使えないユーザー objcetClass=mailResipient sshでログインできるユーザー objcetClass=posixUser squidにだけアクセスできるユーザー objcetClass=inetOrgPerson mailしか使えないというのはどういう意味ですか? mail spoolもそのシステムには存在しないのでしょうか? squidにだけアクセスできるというのはどういう意味ですか? squidでユーザ認証はしますか? postfixのユーザー情報検索設定に %s=mail && objcetClass = mailResipient みたいなものを書き足せばメールアドレスだけ使えるユーザーになるのではないかと思いました >>255 質問に全部答えろw mail spoolはなくていいの? いや、そこは本題じゃないだろ むしろ、どうして関係あるといいたいのだね? 俺はお前に聞いてるんだ 質問に全部答えろ mail spool はどうして関係してるの? 明けましておめでとうございます。 ldapsearch -x -b 'dc=localdomain' '(&(objectClass=posixGroup)(memberUid=hoge))' のようにして、特定のposixAccountが属するposixGroupの一覧は得られますが、 逆に、特定のposixGroupに属するposixAccountの一覧を得るにはどのようにすればよいのでしょうか? ちなみに下記の方法を考えました。 1. posixGroupとposixAccountの関係をきちんとツリー構造にする。 同じposixAccountのコピーだらけになってしまう点が難。aliasは(以下略 2. posixAccountのdescriptionなどにグループ名を含ませて検索に利用する。 オレオレ仕様な点が難。 もし>>41 氏のまとめにヒントがありましたら、ぜひ再アップを希望致します。 ldapsearch -x -b 'dc=localdomain' '(&(objectClass=posixGroup)(cn=hoge))' memberUid >>267 ありがとうございます。 なのですが、uidのみの一覧ではなく、uidを含むposixAccount全体の一覧を得たい感じです。 どうやらmemberof overlayという仕組みが目的に近いようです。 全く未知の分野なので暫く地下に潜ります。 失礼しました。 for i in `上記のコマンド | sed -n '/^memberUid/p' | awk '{ print $2 }'`; do ldapsearch -x -b 'dc=localdomain' "(&(objectClass=posixAccount)(uid=$i))" done 個人の自鯖ローカルでとりあえずOIDを振りたい場合、 1.3.6.1.3 Experimental を使っておけば問題ないのでしょうか? あ、1.1を使えとOpenLDAP 2.2 Administrator's Guideに書いてありました。 でもバージョン2.3以降からその行が消えています。謎です。 >>270 それはExperimental RFCで定義されているOID用。 割り当てて貰うか、いいのを探すか。 >>271 よくない使い方を勧めれば削除されて当然。 OpenLDAPのLDAP構造体って、非公開データになったんだっけ? いや、そんなことありませんでした。 ソースもってきたらちゃんと書いてありました僕が馬鹿でした 弟は、かゆいから掻いてたと言い訳してたけど、あの手の動きは間違いなくアレだと思った。 ああ、LPIC 301か。 2004年ごろにLPIC Level 3にLDAPの試験が用意されると聞いて 受験してみようと思いつつ、もう6年経ってしまった。 資格は専用の板があるんじゃないの? なければマ板がいいんじゃない? >>278 この前取ったよ、301。 資格本だけじゃあ無理だった、、管理者権限とかSambaでバックアンドデータベースに 指定したときのパスワード不整合時の現象とか調べるべき最初の対応とか 実機構築しないと知りえない無理な内容が満載っだったさ・・ >>279 資格全般板にあるけど、資格本何がいい?とかこの資格取る意味あるの?とか そんな話ばかり・・ 運用してもいない、し始める予定もない奴に、試験の話されても困るわけで。 >>280 別に資格なんて取らなくても仕事できるんだし、何威張ってんだ? LDAPサーバとSambaサーバを連携させる場合について質問です。 互いに別の環境で動かす場合、ldap用のpamモジュールとnssモジュールが必要なのは Sambaサーバが起動している環境のみですよね。 pamとnssのモジュールは、LDAP情報を使ってログインするUNIX上で必要です。 pamは認証を、nssはユーザ情報を取り扱います。 というか存在意義ありましたか? OpenLDAPサポートする会社あるから、 なにか助けて欲しければそこに頼めばいいし。 中の人同じだしw 単にドメインの期限切れた後に よそに取られただけでしょ? http://web.archive.org/*/http ://www.ldap-jp.org/ で見ると、 2007/03/31 前の状態 2007/12/23-2008/04/24 アクセス不可 2009/03/05 今の状態 Debian(squeeze)でldap+kerberosを利用した認証を 出来るようになりましたが、ldapのposixAccountを継 承したエントリのhost属性をチェックして、マシンへの ログインを制限することが出来ません。 /etc/libnss-ldap.confで pam_check_host_attr yes pam_fileter host=<ホストのFQDN> を記述してやれば良いのかと思ったのですが間違っ ているのでしょうか? LDAPサーバで、ユーザアカウントのエントリのhost 属性を、わざと間違ったものにして試してみるのです が、ログイン出来てしまうのです。 objectClass: extensibleObject objectClass: inetOrgPerson objectClass: organizationalPerson objectClass: person objectClass: posixAccount objectClass: top cn: *** gidNumber: *** homeDirectory: *** sn: *** uid: *** uidNumber: *** loginShell: *** host: <間違ったホストのFQDN> >>291 > pam_check_host_attr yes > pam_fileter host=<ホストのFQDN> この2つは別の機能です。 前者は、 host: !拒絶するホスト名 host: 許可するホスト名 host: * でホスト指定できます。大文字小文字は区別しません。 比較する文字列はgethostname(2)で得られたものです。 最初の一つにマッチするか、後の2つにマッチしないと認証失敗して、 "Access denied for this host"のログを吐きます。 だから、pam_check_host_attrがyesのホストでは、 host属性がないアカウントは一切ログインできなくなります。 後者は、アカウントを検索する時のfilter指定です。 検索失敗すると"pam_ldap: ldap_search_s 〜"のログを吐きます。 これ以外にデバッグログを得る方法はありません。 (Debianのパッケージ版についてはよく知らないが、オリジナルのソースでは) >>291 > /etc/libnss-ldap.confで 上にも書いたようにDebian系はよく知らないのですが、 書く場所を間違えているということはないですか。 つまりpam_check_host_attrがyesになってないのでは? /etc/libnss-ldap.conf /etc/pam_ldap.conf の両方とも pam_filterをコメント pam_check_host_attrをyes にしてLDAPの当該エントリのhost属性を消去してみましたが やはりログイン出来てしまいます。 /var/log/auth.logを見ているのですが、 ログにはpam_krb5とpam_unixのものしかでてこないのはおか しいのでしょうか?通常pam_ldapもログに現れますか? LDAP+gssapi(Kerberos)による認証の場合、pam_krb5で ユーザ認証をし、pam_unixでユーザのuidやgidなどの 取得を試み、失敗したらログインさせないように動くよう です。 KerberosにはあってLDAPに無いユーザでログインしよう とするとgetpwnam(<ユーザ名>)で識別できなかったとい うエラーがログに記録されます。 この時にpam_filterのチェックは行われるのかと思ったの ですが、やってくれない。 >>296 > KerberosにはあってLDAPに無いユーザで エントリがなかったら、そもそもhost属性も付けられないよね。 >>297 認証時の動きを見たくて試したときの話しです。 Kerberos使わずにLDAPに認証もやらせれば出来るのですかね。 LDAPとKerberosを合わせた場合の資料が少ないのですよね。 どうしてslapdなんて名前にしたんだろうな ldapdでいいじゃん LDAP-DNS についてわかりやすいサイトキボンヌ LDAPの何がええのん? 読み取りが高速で書き込みが低速ってのは解説記事から分かったんだけど、 だからなんなの?って思ってしまう。 DNSくらいしか使い道ないんじゃないの? DBからLDAPに変えて大幅に成功が向上したとかっていう成功事例ってないの? ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる