การลบผู้ใช้แซมบ้า: pbdedit กับ smbpasswd ความแตกต่างคืออะไร


12

อะไรคือความแตกต่างระหว่าง

$ pdbedit -x

และ

$ smbpasswd -x

การลบผู้ใช้แซมบ้า?


ตอนนี้ยังมีsamba-tool user deleteใครรู้ว่าอะไรคือความแตกต่างระหว่างsamba-toolและเครื่องมืออื่น ๆ ( smbpasswdและpdbedit)?
Antonio Vinicius Menezes Medei

คำตอบ:


8

ทั้งsmbpasswdและpdbeditสามารถใช้สำหรับการจัดการผู้ใช้ Samba

ตอบคำถาม: ตั้งแต่ Samba 4 ไม่มีความแตกต่างระหว่างสองคำสั่งนี้ คำสั่งทั้งสองจะทำงานในไฟล์เดียวกัน - ไม่ว่าจะเป็นในรูปแบบsmbpasswdหรือtdbsam - และทำงาน

การขยายคำตอบ:

smbpasswdคืออันที่เก่ากว่า มันถูกใช้ในการจัดการข้อมูลประจำตัวของแซมบ้าเก็บไว้ในรูปแบบไฟล์ที่มีชื่อเดียวกัน - smbpasswd เส้นทางเริ่มต้นสำหรับไฟล์ใน RedHat based distros คือ/etc/samba/smbpasswd(เพื่อแยกแยะ: โปรแกรมตัวเองรูปแบบไฟล์และไฟล์เริ่มต้นของรูปแบบที่smbpasswdโปรแกรมทำงานนั้นเรียกว่าsmbpasswd )

pdbeditขึ้นมาในช่วงวงจรการพัฒนาแซมบ้า 3 smbpasswdแทนสำหรับ จากมุมมองของผู้ใช้รูทpdbeditสามารถดำเนินการทั้งหมดที่smbpasswdสามารถทำได้เช่นเดียวกับเซ็ตของพวกเขา (จัดการความปลอดภัยของบัญชีและการตั้งค่านโยบาย) รูปแบบ 'เนทีฟ' สำหรับการจัดเก็บข้อมูลประจำตัวของ Samba pdbeditคือtdbsam - แบ็กเอนด์รหัสผ่านที่ใช้ฐานข้อมูลเล็กน้อย บน distros RedHat /var/lib/samba/private/passdb.tdbตามเส้นทางของแฟ้มเริ่มต้นคือ

ปัญหาที่เกิดขึ้นpdbeditคือมันสามารถใช้งานโดยรูทเท่านั้นในขณะที่smbpasswdผู้ใช้ทั่วไปสามารถเปลี่ยนรหัสผ่าน Samba ได้ในลักษณะเดียวกับpasswdคำสั่งที่ใช้กับบัญชีระบบ Linux ดังนั้นความเข้าใจของฉันคือว่าในฐานะของ Samba 4 งานการจัดการผู้ใช้ถูกส่งผ่านไปpdbeditและsmbpasswdถูกทิ้งไว้ที่นั่นเพื่อให้ผู้ใช้ที่ไม่ใช่รูทสามารถเปลี่ยนรหัสผ่านของพวกเขาได้ (แม้ว่ารูทยังสามารถใช้smbpasswdในการจัดการ


4

จากหน้าpbdedit :

สิ่งที่สกัดมา

เครื่องมือ pdbedit ใช้อินเตอร์เฟสแบบโมดูลาร์ passdb และไม่ขึ้นอยู่กับประเภทของฐานข้อมูลผู้ใช้ที่ใช้ (ปัจจุบันมี smbpasswd, ldap, nis + และ tdb และสามารถเพิ่มได้โดยไม่ต้องเปลี่ยนเครื่องมือ)

ในขณะที่หน้าคน smbpasswd :

สิ่งที่สกัดมา

โดยค่าเริ่มต้น (เมื่อเรียกใช้โดยไม่มีอาร์กิวเมนต์) มันจะพยายามเปลี่ยนรหัสผ่าน SMB ของผู้ใช้ปัจจุบันบนเครื่องท้องถิ่น สิ่งนี้คล้ายกับวิธีการทำงานของโปรแกรม passwd (1) smbpasswd แตกต่างจากการทำงานของโปรแกรม passwd อย่างไรก็ตามมันไม่ได้เป็น setuid root แต่ทำงานในโหมดไคลเอนต์ - เซิร์ฟเวอร์และสื่อสารกับ smbd ที่กำลังรันอยู่ภายในเครื่อง (8) ดังนั้นเพื่อให้สิ่งนี้สำเร็จ smbd daemon ต้องรันบนเครื่องโลคัล บนเครื่อง UNIX รหัสผ่าน SMB ที่เข้ารหัสมักจะถูกเก็บไว้ในไฟล์ smbpasswd (5)

ดังนั้นpbdeditสามารถจัดการแบ็กเอนด์รหัสผ่าน Samba ที่หลากหลายได้ในขณะที่smbpasswdสามารถจัดการแบ็คเอนด์ประเภทนั้นได้เท่านั้น


ด้วยเวอร์ชันปัจจุบันของ Samba ฉันได้ติดตั้ง (4.1.1) บน CentOS 7 การทดสอบของฉันแสดงให้เห็นว่าคำสั่งทั้งสองสามารถจัดการกับทั้งรูปแบบไฟล์smbpasswdและtdbsam (อาจsmbpasswdเรียกได้ว่าpdbeditใต้เมื่อจัดการกับรูปแบบไฟล์tdbsam )
golem

@golem - ใช่ฉันเขียนสิ่งเหล่านี้โดยใช้ Samba 3.x คำถามนี้คลุมเครือเกินไปในรูปแบบปัจจุบันเนื่องจากมันไม่ได้เป็นรุ่นเฉพาะของ Samba 3.x อาจไม่เป็นไปตามที่ระบุไว้ใน man pages
slm
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.