ในบทความนี้จะกล่าวถึงการใช้งานโปรแกรม smbldap-tools (เวอร์ชั่น 0.9.5) สำหรับเพิ่ม แก้ไข ลบข้อมูลของ user หรือ group ที่อยู่ใน LDAP เพื่อใช้งานร่วมกับ Samba
หมายเหตุ ทุกคำสั่งของ smbldap-tools สามารถที่จะดูวิธีการใช้งานโดยย่อได้ จากการรันคำสั่งที่ต้องการแล้วต่อท้ายด้วยออปชั่น ‘-h’ หรือ ‘-?’ หรือไม่ก็อ่านรายละเอียดการใช้งานได้จาก man page ของแต่ละคำสั่ง
smbldap-useradd เพิ่ม user
คำสั่ง smbldap-useradd ใช้เพิ่ม user เข้าไปใน LDAP
ตัวอย่างการเพิ่ม user01 เข้าไปใน LDAP
[root@fc9-min ~]# smbldap-useradd -a -m -P user01 Changing UNIX and samba passwords for user01 New password: Retype new password:
ออปชั่นของคำสั่ง smbldap-useradd ที่ใช้ เพื่อให้ใช้งานร่วมกับ Samba ได้มีดังนี้
- -a เพิ่มข้อมูล Samba ของ user
- -m สร้างไดเร็คทอรี่ Home ของ user ด้วย
- -P ให้เรียกคำสั่ง smbldap-passwd หลังจบคำสั่ง เพื่อตั้งรหัสให้ user
หลังจากที่เพิ่ม user เข้าในระบบแล้ว สามารถใช้คำสั่ง id หรือ getent เพื่อตรวจสอบข้อมูลของ user ได้
[root@fc9-min ~]# id user01 uid=1001(user01) gid=513(Domain Users) groups=513(Domain Users)
[root@fc9-min ~]# getent passwd user01 user01:x:1001:513:System User:/home/user01:/bin/bash
smbldap-passwd เปลี่ยนรหัสผ่านของ user
คำสั้ง smbldap-passwd ใช้เพื่อเปลี่ยนรหัสผ่านของ user ที่อยู่ใน LDAP
[root@fc9-min ~]# smbldap-passwd user01 Changing UNIX and samba passwords for user01 New password: Retype new password:
smbldap-userlist แสดงรายชื่อ user
คำสั่ง smbldap-userlist ใช้เพื่อแสดงรายชื่อ user ทั้งหมดที่อยู่ใน LDAP
[root@fc9-min ~]# smbldap-userlist uid |username
0 |root | 999 |nobody | 1001 |user01 |
smbldap-usershow แสดงรายละเอียด user
คำสั่ง smbldap-usershow ใช้เพื่อตรวจสอบข้อมูลทั้งหมดของ user ที่อยู่ใน LDAP
[root@fc9-min ~]# smbldap-usershow user01 dn: uid=user01,ou=People,dc=test-ldap,dc=com objectClass: top,person,organizationalPerson,inetOrgPerson,posixAccount,shadowAccount,sambaSamAccount uid: user01 uidNumber: 1001 gidNumber: 513 homeDirectory: /home/user01 sambaLogonTime: 0 sambaLogoffTime: 2147483647 sambaKickoffTime: 2147483647 sambaPwdCanChange: 0 displayName: user01 sambaSID: S-1-5-21-3697236364-1357617849-1956783867-3002 sambaPrimaryGroupSID: S-1-5-21-3697236364-1357617849-1956783867-513 sambaProfilePath: \\fc9-min\profiles\user01 sambaHomePath: \\fc9-min\user01 sambaHomeDrive: H: sambaLMPassword: C53C042BF139A7D9AAD3B435B51404EE sambaAcctFlags: [U] sambaNTPassword: 152E0323FE05645650DD50FD31C2FCDF sambaPwdLastSet: 1224343354 sambaPwdMustChange: 1228231354 userPassword: {SSHA}d+ZTyu7BhUarCaM2Ifu9bk/RS0lkSi80 shadowLastChange: 14170 shadowMax: 45 gecos: System User,,,, cn: System User sn: User givenName: System loginShell: /bin/bash
smbldap-userinfo แก้ไขข้อมูลเบื้องต้นของ user
คำสั่ง smbldap-userinfo ใช้เพื่อแก้ไขข้อมูลเบื้องต้นของ user เช่น User Shell, Full Name ถ้าต้องการแก้ไขข้อมูลอื่นๆ ต้องใช้คำสั่ง smbldap-usermod
[root@fc9-min ~]# smbldap-userinfo user01 Changing the user information for user01 Enter the new value, or press ENTER for the default User Shell [/bin/bash]: Full Name [System User]: User01 Full Name Room Number []: Work Phone []: Home Phone []: Other []: LDAP updated
ตรวจสอบ Full Name หลังการแก้ไขด้วยคำสั่ง getent
[root@fc9-min ~]# getent passwd user01 user01:x:1001:513:User01 Full Name,,,,:/home/user01:/bin/bash
smbldap-usermod แก้ไขข้อมูลของ user
คำสั่ง smbldap-usermod ใช้เพื่อแก้ข้อมูลของ user ที่อยู่ใน LDAP โดยต้องระบุออปชั่นที่ต้องการแก้ไข
ตัวอย่างการใช้คำสั่ง smbldap-usermod เพื่อแก้ไข Home ของ user01
[root@fc9-min ~]# smbldap-usermod -d /new-home/user01 user01
ตรวจสอบหลังการแก้ไข
[root@fc9-min ~]# getent passwd user01 user01:x:1001:513:User01 Full Name,,,,:/new-home/user01:/bin/bash
เปลี่ยนข้อมูลกลับ
[root@fc9-min ~]# smbldap-usermod -d /home/user01 user01 [root@fc9-min ~]# getent passwd user01 user01:x:1001:513:User01 Full Name,,,,:/home/user01:/bin/bash
smbldap-userdel ลบ user
คำสั่ง smbldap-userdel ใช้เพื่อลบ user ออกจาก LDAP
[root@fc9-min ~]# smbldap-userdel -r user02
smbldap-groupadd เพิ่ม group
คำสั่ง smbldap-groupadd ใช้เพื่อเพิ่ม group ใหม่เข้าไปใน LDAP
ตัวอย่างการเพิ่ม newgroup เข้าไปใน LDAP
[root@fc9-min ~]# smbldap-groupadd newgroup
smbldap-groupshow ดูข้อมูลของ group
คำสั่ง smbldap-groupshow ใช้เพื่อดูข้อมูลรายละเอียดของ group ที่อยู่ใน LDAP
[root@fc9-min ~]# smbldap-groupshow newgroup dn: cn=newgroup,ou=Group,dc=test-ldap,dc=com objectClass: top,posixGroup cn: newgroup gidNumber: 1000
smbldap-groupmod แก้ไขข้อมูลของ group
คำสั่ง smbldap-groupmod ใช้เพื่อแก้ไขข้อมูลของ group เช่น การเพิ่ม user เข้าไปอยู่ใน group
ตัวอย่างการเพิ่ม user01 เข้าไปอยู่ใน newgroup
[root@fc9-min ~]# smbldap-groupmod -m user01 newgroup adding user user01 to group newgroup
[root@fc9-min ~]# id user01 uid=1001(user01) gid=513(Domain Users) groups=513(Domain Users),1000(newgroup)
ตัวอย่างการเพิ่มหลายๆ user เข้าไปใน newgroup
[root@fc9-min ~]# smbldap-groupmod -m user02,user03,user04,user05 newgroup adding user user02 to group newgroup adding user user03 to group newgroup adding user user04 to group newgroup adding user user05 to group newgroup
ตรวจสอบข้อมูลของ newgroup
[root@fc9-min ~]# smbldap-groupshow newgroup dn: cn=newgroup,ou=Group,dc=test-ldap,dc=com objectClass: top,posixGroup cn: newgroup gidNumber: 1000 memberUid: user01,user02,user03,user04,user05
ตัวอย่างการลบ user ออกจาก group
[root@fc9-min ~]# smbldap-groupmod -x user01 newgroup deleting user user01 from group newgroup
[root@fc9-min ~]# id user01 uid=1001(user01) gid=513(Domain Users) groups=513(Domain Users)
smbldap-groupdel ลบ group
คำสั่ง smbldap-groupdel ใช้เพื่อลบ group ออกจาก LDAP
ตัวอย่างการลบ newgroup ออกจาก LDAP
[root@fc9-min ~]# smbldap-groupdel newgroup