Monthly Archives: 11月 2009

20090122 LPIC レベル3

■目次
301 概念、アーキテクチャおよび設計
302 インストールおよび開発
303 設定
 303.1 LDAPにおけるアクセス制御リスト 重要度2
 303.2 LDAPレプリケーション 重要度5
 303.3 ディレクトリのセキュリティ 重要度4
 303.4 LDAPサーバのパフォーマンスチューニング 重要度2
 303.5 OpenLDAPデーモンの設定 重要度2

■303.2 LDAPレプリケーション 重要度5
2種類のレプリケーション方式がある。

1.slurpd(マスタスレーブ方式。更新情報をログに出力し、それをスレーブに転送、スレーブが自DBに反映。)
1.1slurpd設定
・マスタ
replica uri=ldap://***
suffix=”dc=uegaito,dc=com”
bindmethos=simple
binddn=”cn=***,dc=uegaito,dc=com”
credentials=”****”

・スレーブ
updatedn “cn=***,dc=uegaito,dc=com”
updateref ldap://*****:389

2.Syncレプリケーション(同期式。プロバイダ・コンシューマ構成。コンシューマが定期的に更新有無を問い合わせる。)
2.1Syncレプリケーションの設定
・プロバイダ
overlay syncprov
syncprov-sessionlog 100

・コンシューマ
syncrepl rid=RID (RID:0以上の3桁以内の値)
provider=ldap://***
binddn=”cn=***,dc=uegaito,dc=com”
credentials=”****”


20090121 LPIC レベル3

■目次
301 概念、アーキテクチャおよび設計
302 インストールおよび開発
303 設定
 303.1 LDAPにおけるアクセス制御リスト 重要度2
 303.2 LDAPレプリケーション 重要度5
 303.3 ディレクトリのセキュリティ 重要度4
 303.4 LDAPサーバのパフォーマンスチューニング 重要度2
 303.5 OpenLDAPデーモンの設定 重要度2

■303.1 LDAPにおけるアクセス制御リスト 重要度2
・シスログ設定
slapd -l local3:syslog のファシリティ指定。デフォルトはlocal4
[root@fedora ~]# cat /etc/rsyslog.conf |egrep “ldap|slap”
# ldap
local3.* /var/log/slapd.log

・アクセス制御設定
access to 対象 :(対象例:*,dn)
by ユーザ 操作:(ユーザ例:*,annonymous,users,self,dn)(操作例:write,read,search,compare,auth,none)(

・設定例
access to *
by self write
by users read
by annonymous *

defaultaccess read:access toを指定しなかった場合のデフォルト操作権限


20090120 LPIC レベル3

■目次
301 概念、アーキテクチャおよび設計
302 インストールおよび開発
303 設定
 303.1 LDAPにおけるアクセス制御リスト 重要度2
 303.2 LDAPレプリケーション 重要度5
 303.3 ディレクトリのセキュリティ 重要度4
 303.4 LDAPサーバのパフォーマンスチューニング 重要度2
 303.5 OpenLDAPデーモンの設定 重要度2

■303.1 LDAPにおけるアクセス制御リスト 重要度2
slapdプロセス起動時のオプション
slapd -f /bbb/aaa :/bbb/aaaを起動時の設定ファイルに指定
slapd -u ldap:起動ユーザ指定
slapd -g ldap:起動グループ指定
slapd -l local3:syslog のファシリティ指定。デフォルトはlocal4
slapd -T t slaptestモードで起動
slapd -T a slapaddモードで起動

/usr/local/libexec/slapd -u ldap -g ldap -l local3 -f /usr/local/etc/openldap/slapd.conf


20090119 LPIC レベル3

■目次
301 概念、アーキテクチャおよび設計
302 インストールおよび開発
303 設定
 303.1 LDAPにおけるアクセス制御リスト 重要度2
 303.2 LDAPレプリケーション 重要度5
 303.3 ディレクトリのセキュリティ 重要度4
 303.4 LDAPサーバのパフォーマンスチューニング 重要度2
 303.5 OpenLDAPデーモンの設定 重要度2

■303.1 LDAPにおけるアクセス制御リスト 重要度2
以下、sldapd.confの参考例
# cat /usr/local/etc/openldap/slapd.conf |egrep -v “^#|^$”
include /usr/local/etc/openldap/schema/core.schema :core.schemaで記述されているオブジェクトクラス・属性を使用可能。
pidfile /usr/local/var/run/slapd.pid :起動しているslapdプロセスの番号が出力される場所。
argsfile /usr/local/var/run/slapd.args :slapd起動時のコマンドラインオプションが出力される場<所。
database bdb :データベースを指定。(bdb,hdb等)
suffix “dc=uegaito,dc=com” :データベースの検索のベース。
rootdn “cn=******,dc=uegaito,dc=com” :データベース管理者のID。(フルパス)
rootpw ******* :データベース管理者のパスワード。
directory /usr/local/var/openldap-data :LDAPデータベースの保存場所。バックアップ対象。
index objectClass eq :インデックスを作成する


20090118 LPIC レベル3

■目次
301 概念、アーキテクチャおよび設計
302 インストールおよび開発
 302.1 OpenLDAPのコンパイルとインストール 重要度3
 302.2 Perl/C++を使ったLDAP向け開発 重要度1

■302.2 Perl/C++を使ったLDAP向け開発 重要度1
Net::LDAP PerlスクリプトでLDAPを操作可能となる。

1.インストール
cpan> install Net::LDAP

2.宣言(use)
use Net::LDAP;

3.LDAPサーバへ接続(new)
$ldap = Net::LDAP->net( ‘example.com’,port =>389 );

4.バインドの開始(bind)
$mesg = $ldap->bind;

5.ディレクトリを検索(search)
$mesg = $ldap->search(
base => “ou=,people,dc=example,dc=com”,
scope => ‘sub’,
filter => ‘(dn=$ARGV[0])’
);

6.バインドの終了(unbind)
$mesg = $ldap->unbind;

7.接続の切断(disconnect)
$mesg = $ldap->disconnect();