ActiveDirectoryにはLDAP機能を有している。
なら外部からLDAP検索できてもいいよな。って考えて取敢えず、windowsServerマシン(ad.cerius2.local)の「ActiveDirectoryユーザとコンピュータ」パネルを開くと表示される項目をldapsearchで引けるか検索してみた。

このADDCの中身をldapsearchで外部のマシンから検索するには、下記のようにする。
*xxxxはadministratorのパスワードである。-bオプションの検索対象に留意。
[root@s ~]# ldapsearch -H ldap://ad -x -D 'cerius2\administrator' -w 'xxxx' \
-b 'cn=builtin,dc=cerius2,dc=local'
[root@s ~]# ldapsearch -H ldap://ad -x -D 'cerius2\administrator' -w 'xxxx' \
-b 'cn=computers,dc=cerius2,dc=local'
[root@s ~]# ldapsearch -H ldap://ad -x -D 'cerius2\administrator' -w 'xxxx' \
-b 'ou=Domain Controllers,dc=cerius2,dc=local'
[root@s ~]# ldapsearch -H ldap://ad -x -D 'cerius2\administrator' -w 'xxxx' \
-b 'cn=foreignsecurityprincipals,dc=cerius2,dc=local'
[root@s ~]# ldapsearch -H ldap://ad -x -D 'cerius2\administrator' -w 'xxxx' \
-b 'CN=Managed Service Accounts,dc=cerius2,dc=local'
[root@s ~]# ldapsearch -H ldap://ad -x -D 'cerius2\administrator' -w 'xxxx' \
-b 'cn=users,dc=cerius2,dc=local'
中身全体は
[root@s ~]# ldapsearch -H ldap://ad -x -D 'cerius2\administrator' -w 'xxxx' -b 'dc=cerius2,dc=local'
で見れる。
グループ追加 †
「ActiveDirectoryユーザとコンピュータ」画面で新規のグループを作ってみる。左のツリーを展開して、
[Users]フォルダを右クリックして、[新規作成]から[グループ]を選ぶ

そして、表示された[新しいオブジェクト-グループ]から、グループ名はfate、グループのスコープはグローバル、グループの種類はセキュリティーとする。

作成後、ldapsearchで調べてみると、
[root@s ~]# ldapsearch -H ldap://ad -x -D 'cerius2\administrator' -w 'xxxx' \
-b 'cn=fate,cn=users,dc=cerius2,dc=local' -LLL
dn: CN=fate,CN=Users,DC=cerius2,DC=local
objectClass: top
objectClass: group
cn: fate
distinguishedName: CN=fate,CN=Users,DC=cerius2,DC=local
instanceType: 4
whenCreated: 20140408124631.0Z
whenChanged: 20140408124631.0Z
uSNCreated: 45089
uSNChanged: 45089
name: fate
objectGUID:: qtRYraioOESUFNFKXkgeSw==
objectSid:: AQUAAAAAAAUVAAAAn8inb35zPZzqZPiqUQQAAA==
sAMAccountName: fate
sAMAccountType: 268435456
groupType: -2147483646
objectCategory: CN=Group,CN=Schema,CN=Configuration,DC=cerius2,DC=local
dSCorePropagationData: 16010101000000.0Z
[root@s ~]#
となった。っで、samba4ADのグループ追加のスクリプトから思うに[objectclass: posixGroup]と[gidnumber: $gid]が必要かな?って思う。
ユーザ追加 †
次に、ユーザ。グループの追加同様に「ActiveDirectoryユーザとコンピュータ」画面で行う。左のツリーを展開して、[Users]フォルダを右クリックして、[新規作成]から今度は[ユーザ]を選ぶ。

そして、表示された[新しいオブジェクト-ユーザ]から、、、まあーいつものようにユーザを作る。


作成後同じくldapsearchで閲覧すると、
[root@s ~]# ldapsearch -H ldap://ad -x -D 'cerius2\administrator' -w 'xxxx' \
-b 'CN=Illyasviel von. Einzbern,cn=users,dc=cerius2,dc=local' -LLL
dn: CN=Illyasviel von. Einzbern,CN=Users,DC=cerius2,DC=local
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: user
cn: Illyasviel von. Einzbern
sn: Einzbern
givenName: Illyasviel
initials: von
distinguishedName: CN=Illyasviel von. Einzbern,CN=Users,DC=cerius2,DC=local
instanceType: 4
whenCreated: 20140408132218.0Z
whenChanged: 20140408132218.0Z
displayName: Illyasviel von. Einzbern
uSNCreated: 45100
uSNChanged: 45105
name: Illyasviel von. Einzbern
objectGUID:: p0M7EmKvuE60urjVtAsdAg==
userAccountControl: 66048
badPwdCount: 0
codePage: 0
countryCode: 0
badPasswordTime: 0
lastLogoff: 0
lastLogon: 0
pwdLastSet: 130414369382262258
primaryGroupID: 513
objectSid:: AQUAAAAAAAUVAAAAn8inb35zPZzqZPiqUwQAAA==
accountExpires: 9223372036854775807
logonCount: 0
sAMAccountName: illya
sAMAccountType: 805306368
userPrincipalName: illya@cerius2.local
objectCategory: CN=Person,CN=Schema,CN=Configuration,DC=cerius2,DC=local
dSCorePropagationData: 16010101000000.0Z
[root@s ~]#
となる。posixAccount関係なuidnumber、unixhomedirectoryらは見当たらない。
なので、ADSIエディッタや、LdapAdminを使ってLinuxの認証、ユーザ情報に必要なスキーマとプロパティー値を埋めてみる。