แก้ไขรายการ LDAP ด้วยคำสั่ง ldapmodify

ลองใช้เครื่องมือของเราเพื่อกำจัดปัญหา

เมื่อเร็ว ๆ นี้ฉันได้ทำบทความจำนวนหนึ่งที่ครอบคลุม Lightweight Directory Access Protocol (LDAP) ซึ่งมีตั้งแต่การติดตั้งการเพิ่มรายการไปจนถึงเครื่องมือการจัดการ GUI ที่สมบูรณ์ (ดูเนื้อหา LDAP ใน Ghacks สำหรับข้อมูลเพิ่มเติม) หากคุณมืดมนเกี่ยวกับ LDAP คือโปรโตคอลของแอปพลิเคชันที่อนุญาตให้สืบค้นและแก้ไขข้อมูลบริการไดเรกทอรีที่ดำเนินการบนเครือข่าย IP โดยทั่วไปเป็นไดเร็กทอรีข้อมูลที่ซับซ้อนขนาดใหญ่ในรูปแบบต่างๆที่สามารถใช้สำหรับการใช้งานที่หลากหลาย (สมุดที่อยู่ของ บริษัท การตรวจสอบแอปพลิเคชัน ฯลฯ )

เมื่อติดตั้ง LDAP แล้วคุณจะมีเครื่องมือมากมายในการเพิ่มแก้ไขและลบข้อมูลบนเซิร์ฟเวอร์นั้นเพียงปลายนิ้วสัมผัส หนึ่งในเครื่องมือเหล่านั้นมีความสำคัญอย่างยิ่งต่อการรักษาข้อมูลให้เป็นปัจจุบัน เครื่องมือนั้นคือ ldapmodify ในบทความนี้ฉันจะแสดงวิธีใช้เครื่องมือนี้เพื่อแก้ไขรายการในเซิร์ฟเวอร์ LDAP

พื้นฐานคำสั่ง

คำสั่ง ldapmodify ไม่เหมือนกับคำสั่งอื่น ๆ ทั้งหมด แทนที่จะเรียกใช้คำสั่งเดียวและดำเนินการกับคำสั่งนั้นคุณออกคำสั่งทำงานแล้วหลีกหนีจากคำสั่ง การแก้ไขข้อมูลจริงจะไม่เกิดขึ้นจนกว่าคุณจะออกจากคำสั่ง ลำดับจะเป็นดังนี้:

  1. ออกคำสั่ง ldapmodify (พร้อมตัวเลือกที่เหมาะสม)
  2. แจ้ง ldapmodify สิ่งที่คุณกำลังแก้ไข
  3. แก้ไขข้อมูลของคุณ
  4. หนีด้วย CTRL-d
  5. ldapmodify จะทำการเปลี่ยนแปลง

ใช่ดูเหมือนเป็นกระบวนการที่ค่อนข้างซับซ้อน ... และใช่มันเป็นกระบวนการที่ซับซ้อน แต่เป็นกระบวนการที่จำเป็นมาก

ลองมาดูกระบวนการจริง ตัวอย่างเช่นฉันจะแก้ไขรายการ gecos ของรายการไดเร็กทอรีที่มีอยู่แล้ว รายการ gecos เป็นฟิลด์ข้อมูลทั่วไปที่สามารถใช้กับอะไรก็ได้) มาสนุกกันเถอะและเปลี่ยนรายการ gecos สำหรับ user scooper และระบุว่า Sheldon Cooper เป็นนักฟิสิกส์เชิงทฤษฎีที่ Caltech University เราจะถือว่ารายการ gecos มีเฉพาะข้อมูล 'Sheldon Cooper' และเซิร์ฟเวอร์ LDAP อยู่ที่ 192.168.1.10 และ dc แบบเต็มคือ wallen.local นี่คือกระบวนการจริงสำหรับงานนี้:

ออกคำสั่ง:

ldapmodify -h localhost -x -W -D 'cn = ผู้ดูแลระบบ, dc = wallen, dc = local'

ตอนนี้จะดูเหมือนว่าคำสั่งค้าง เป็นเพียงการรอการป้อนข้อมูล อินพุตจะมีลักษณะดังนี้ (กด Enter หลังแต่ละบรรทัด):

dn: uid = scooper, ou = People, dc = wallen, dc = local
changetype: แก้ไข
แทนที่: gecos
gecos: นักฟิสิกส์เชิงทฤษฎีมหาวิทยาลัยคาลเทค

เมื่อคุณป้อนข้อความนี้เสร็จแล้วให้กด Enter จากนั้นกด CTRL-d เพื่อออกจากคำสั่งจากนั้นคุณจะเห็นสิ่งต่างๆเช่น:

การแก้ไขรายการ 'uid = scooper, ou = People, dc = wallen, dc = local'

ตอนนี้ถ้าคุณออกคำสั่ง ldapsearch คุณจะเห็นการเปลี่ยนแปลงที่เกิดขึ้น คำสั่ง ldapsearch จะมีลักษณะดังนี้:

ldapsearch -x -b 'dc = wallen, dc = local' -s ย่อย 'objectclass = *'

คุณควรเห็นรายชื่อของ Sheldon ดังนี้:

# คนตักคน wallen.local
dn: uid = scooper, ou = People, dc = wallen, dc = local
uid: เครื่องตัก
cn: เชลดอนคูเปอร์
objectClass: บัญชี
objectClass: posixAccount
objectClass: ด้านบน
loginShell: / bin / bash
uidNumber: 500
gidNumber: 120
homeDirectory: / home / scooper
gecos: นักฟิสิกส์เชิงทฤษฎีมหาวิทยาลัยคาลเทค

ตอนนี้คุณได้แก้ไขรายการแล้ว แน่นอนว่าคุณไม่ได้ จำกัด เฉพาะรายการ gecos คุณสามารถแก้ไขรายการที่คุณต้องการได้โดยใช้เทคนิคเดียวกัน

ความคิดสุดท้าย

หวังว่า LDAP จะง่ายขึ้นและง่ายขึ้นสำหรับคุณ ตอนนี้คุณสามารถเพิ่มและแก้ไขรายการได้ เราจะทำการขุดต่อไปและในที่สุดคุณก็จะมีพื้นฐาน LDAP ที่เชี่ยวชาญ