クライアント証明書の処理における動作は TLSVerifyClient で設定する。
never :デフォルト値 クライアントに証明書を要求しない。
allow :クライアントに証明書を要求。証明書が与えられなくてもセッションは継続。
不正な証明書が与えられても無視してセッションは継続。
try :証明書を要求。証明書が与えられなくてもセッションは継続。
不正な証明書が与えられるとすぐさまセッション停止。
demand:証明書を要求。証明書が与えられなくても、不正な証明書が与えられても、
すぐさまセッション停止
属性名を調べていたら迷路に迷いこんだ。
せっかくだから、データとして保存。
代表的な属性
dn = distinguished name
dc = domain component ドメイン名
o = organization 会社(組織)名
ou = organization unit 会社(組織)の部署(部局)
l = 地域
st = 県
c = country 国
cn = common name 苗字
sn = surname ファーストネーム
uid = ユーザID
userPasswd = uidに対するパスワード
man vfs_full_audit によると 、
vfs objects = full_audit
とする。
構造型(structural)
各エントリに対して1つ含まれていなくてはならない。
インスタンス化された後、変更するにはエントリ全体を一旦削除して、
再度追加しなくてはならない
補助(auxiliaty)
構造型クラスになんらかの特徴を追加する。
単体で使用することはできず、既存の構造型オブジェクトの補足としてのみ使用する。
抽象(abstract)
直接は使用できない。派生クラスの親としてのみ使用する。
もっとも一般的な抽象クラスはtop。
openldap-2.4.21のtarballを展開しconfigureを見る
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--with-subdir=DIR change default subdirectory used for installs
--with-cyrus-sasl with Cyrus SASL support [auto]
--with-fetch with fetch(3) URL support [auto]
--with-threads with threads [auto]
--with-tls with TLS/SSL support auto|openssl|gnutls [auto]
--with-yielding-select with implicitly yielding select [auto]
--with-mp with multiple precision statistics
auto|longlong|long|bignum|gmp [auto]
--with-odbc with specific ODBC support
iodbc|unixodbc|odbc32|auto [auto]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
--with-pic try to use only PIC/non-PIC objects
[default=use both]
--with-tags[=TAGS] include additional configurations [automatic]
だそうだ。
特に暗号化のサポートは重要でしょ?
schemaに記述されているのでこれを読む。
例えば、samba.schemaの場合、sambaパッケージ(rpm)のサンプルドキュメント内にあるので、これを開ける。
objectclass ( 1.3.6.1.4.1.7165.2.2.6 NAME 'sambaSamAccount' SUP top AUXILIARY
DESC 'Samba 3.0 Auxilary SAM Account'
MUST ( uid $ sambaSID )
MAY ( cn $ sambaLMPassword $ sambaNTPassword $ sambaPwdLastSet $
sambaLogonTime $ sambaLogoffTime $ sambaKickoffTime $
sambaPwdCanChange $ sambaPwdMustChange $ sambaAcctFlags $
displayName $ sambaHomePath $ sambaHomeDrive $ sambaLogonScript $
sambaProfilePath $ description $ sambaUserWorkstations $
sambaPrimaryGroupSID $ sambaDomainName $ sambaMungedDial $
sambaBadPasswordCount $ sambaBadPasswordTime $
sambaPasswordHistory $ sambaLogonHours))
書式はこう。
objectClass (オブジェクト識別子 NAME 'オブジェクト名'
DESC '説明'
SUP 基底オブジェクトクラス
MUST ( 必項属性 )
MAY ( オプション属性 ))
この表示でAUXILIARYタイプということ、
MUST は必須属性なので、 uid属性 と sambaSID属性が必要だと解るわけだ。
MAY はオプション属性。 使用してもしなくても良い属性。
複数ある時は $ で区切っていく。
OpenPegasus
Web-Based Enterprise Management(WBEM)は分散コンピューティング環境の管理を統合するために開発されたシステム管理技術群の名称。
実装は各種インターネット標準やDMTF(Distributed Management Task Force IT環境のシステム管理のための標準を策定保守する標準化団体)のオープン標準に基づく。
(CIM(Common Infomation Model), CIM over HTTP, WS-Management)
その他の手法としてリモートシェル、SNMP、独自ソリューションなどを利用するネットワーク管理がある。
OpenPegasusはThe Open Group が主催する、DMTFによるWBEM技術のオープンソース実装。これは、標準C++プログラミングインターフェイス、および相互運用性プロトコルによって実装されるコアCIMOM(CIM ObjectManager)技術。
CentOSではtog-pegasusというサービスとして提供される。パッケージ名も同名。