系统管理指南:名称和目录服务(DNS、NIS 和 LDAP)

LDAP 数据交换格式 (LDAP Data Interchange Format, LDIF)

LDIF 是一种基于文本的格式,用于描述目录服务实体及其属性。使用 LDIF 格式,可以借助 ldapaddldapmodify 等命令将信息从一个目录移到另一个目录。下面是每个服务的 LDIF 格式示例。使用带有 -l 选项的 ldaplist(1) 可以显示以下信息:

% ldaplist -l hosts myhost


hosts



dn: cn=myhost+ipHostNumber=7.7.7.115,ou=Hosts,dc=mydc,dc=mycom,dc=com

cn: myhost

iphostnumber: 7.7.7.115

objectclass: top

objectclass: device

objectclass: ipHost

description: host 1 - floor 1 - Lab a - building b

% ldaplist -l passwd user1


passwd



dn: uid=user1,ou=People,dc=mydc,dc=mycom,dc=com

uid: user1

cn: user1

userpassword: {crypt}duTx91g7PoNzE

uidnumber: 199995

gidnumber: 20

gecos: Joe Smith [New York]

homedirectory: /home/user1

loginshell: /bin/csh

objectclass: top

objectclass: shadowAccount

objectclass: account

objectclass: posixAccount

% ldaplist -l services name


services



dn: cn=name+ipServiceProtocol=udp,ou=Services,dc=mydc,dc=mycom,dc=com

cn: name

cn: nameserver

ipserviceprotocol: udp

ipserviceport: 42

objectclass: top

objectclass: ipService

% ldaplist -l group mygroup


group



dn: cn=mygroup,ou=Group,dc=mydc,dc=mycom,dc=com

cn: mygroup

gidnumber: 4441

memberuid: user1

memberuid: user2

memberuid: user3

userpassword: {crypt}duTx91g7PoNzE

objectclass: top

objectclass: posixGroup

% ldaplist -lnetgroup mynetgroup


netgroup



cn=mynetgroup,ou=netgroup,dc=central,dc=sun,dc=com

objectclass=nisNetgroup

objectclass=top

cn=mynetgroup

nisnetgrouptriple=(user1..mydc.mycom.com,-,)

nisnetgrouptriple=(user1.,-,)

membernisnetgroup=mylab

% ldaplist -l networks 200.20.20.0


networks



dn: ipNetworkNumber=200.20.20.0,ou=Networks,dc=mydc,dc=mycom,dc=com

cn: mynet-200-20-20

ipnetworknumber: 200.20.20.0

objectclass: top

objectclass: ipNetwork

description: my Lab Network

ipnetmasknumber: 255.255.255.0

% ldaplist -l netmasks 201.20.20.0


netmasks



dn: ipNetworkNumber=201.20.20.0,ou=Networks,dc=mydc,dc=mycom,dc=com

cn: net-201

ipnetworknumber: 201.20.20.0

objectclass: top

objectclass: ipNetwork

description: my net 201

ipnetmasknumber: 255.255.255.0

% ldaplist -l rpc ypserv


rpc



dn: cn=ypserv,ou=Rpc,dc=mydc,dc=mycom,dc=com

cn: ypserv

cn: ypprog

oncrpcnumber: 100004

objectclass: top

objectclass: oncRpc

% ldaplist -l protocols tcp


protocols



dn: cn=tcp,ou=Protocols,dc=mydc,dc=mycom,dc=com

cn: tcp

ipprotocolnumber: 6

description: transmission control protocol

objectclass: top

objectclass: ipProtocol

% ldaplist -l bootparams myhost


bootparams



dn: cn=myhost,ou=Ethers,dc=mydc,dc=mycom,dc=com

bootparameter: root=boothost:/export/a/b/c/d/e

objectclass: top

objectclass: device

objectclass: bootableDevice

cn: myhost

% ldaplist -l ethers myhost


ethers



dn: cn=myhost,ou=Ethers,dc=mydc,dc=mycom,dc=com

macaddress: 8:1:21:71:31:c1

objectclass: top

objectclass: device

objectclass: ieee802Device

cn: myhost

% ldaplist -l publickey myhost


publickey



dn: cn=myhost+ipHostNumber=200.20.20.99,ou=Hosts,dc=mydc,dc=mycom,dc=com

cn: myhost

iphostnumber: 200.20.20.99

description: Joe Smith

nispublickey: 9cc01614d929848849add28d090acdaa1c78270aeec969c9

nissecretkey: 9999999998769c999c39e7a6ed4e7afd687d4b99908b4de99

objectclass: top

objectclass: NisKeyObject

objectclass: device

objectclass: ipHost

% ldaplist -l aliases myname


aliases



dn: mail=myname,ou=aliases,dc=mydc,dc=mycom,dc=com

cn: myname

mail: myname

objectclass: top

objectclass: mailgroup

mgrprfc822mailmember: my.name