กลุ่มแตกต่างจากคนในพื้นที่เมื่อเข้าสู่ระบบจากระยะไกล


14

เราจัดเก็บผู้ใช้ของเราใน LDAP พร้อมกับกลุ่มที่มีความหมายในระบบที่แตกต่างกัน (บทบาทขององค์กรรวมถึงwheel) นอกจากนี้ยังมีกลุ่มท้องถิ่นไปยังเวิร์กสเตชันเช่นaudioหรือvideoที่ไม่พึงประสงค์ที่จะใส่ลงใน LDAP ตอนนี้ถ้าฉันเข้าสู่ระบบในท้องถิ่นฉันจะได้รับกลุ่มท้องถิ่นเหล่านั้น แต่ถ้าฉันเข้าสู่ระบบผ่าน SSH ในเครื่องเดียวกันฉันขาดพวกเขา แน่นอนว่าพวกเขาจะกลับมาถ้าฉันใช้suตรงหลังจากนั้น ฉันอาจผิดทาง แต่สงสัยว่า PAM

รายการที่เกี่ยวข้องจาก nsswitch.conf

passwd:      compat ldap
shadow:      compat ldap
group:       compat ldap

สำหรับ pam ให้ตรวจสอบความถูกต้องเสมอ แต่บรรทัดอื่น ๆ จะเหมือนกัน

/etc/pam.d/sshd

auth            include         system-remote-login

/etc/pam.d/system-remote-login(เหมือนsystem-local-loginฉันอาจเพิ่ม)

auth            include         system-login

/etc/pam.d/system-login

auth            required        pam_tally2.so onerr=succeed
auth            required        pam_shells.so 
auth            required        pam_nologin.so 
auth            include         system-auth
auth            optional        pam_gnome_keyring.so

account         required        pam_access.so 
account         required        pam_nologin.so 
account         include         system-auth
account         required        pam_tally2.so onerr=succeed 

password        include         system-auth
password        optional        pam_gnome_keyring.so

session         optional        pam_loginuid.so
session         required        pam_env.so 
session         optional        pam_lastlog.so 
session         include         system-auth
session         optional        pam_gnome_keyring.so auto_start
session         optional        pam_motd.so motd=/etc/motd
session         optional        pam_mail.so

/etc/pam.d/su

auth       sufficient   pam_rootok.so
auth       required     pam_wheel.so use_uid
auth       include              system-auth

account    include              system-auth

password   include              system-auth

session    include              system-auth
session    required     pam_env.so
session    optional             pam_xauth.so

/etc/pam.d/common-auth:

auth    required     pam_group.so use_first_pass

มีปัญหาอะไรและฉันจะแก้ไขได้อย่างไร ฉันยินดีที่จะให้ข้อมูลอื่น ๆ ที่จำเป็น


คุณ/etc/nsswitch.confมีลักษณะgroupอย่างไร อะไรคือผลลัพธ์ของgetent YOURUSERNAME? /etc/pam.d/sshd@include ของคุณใช้ร่วมกันได้ {เซสชัน, รับรองความถูกต้อง, รหัสผ่าน, บัญชี} หรือไม่?
eppesuig

กระบวนการ / ขั้นตอนใดที่คุณตั้งค่าที่ส่วนท้ายของไคลเอ็นต์
ราหุลปาติล

1
@Aurelien เมื่อคุณมี "shadow ldap" ดังนั้น pam_unix จะทำการตรวจสอบความถูกต้องเพื่อดึงข้อมูลรหัสผ่านจาก nss
Stéphane Chazelas

1
ฉันคิดว่าคุณกำลังสงสัย PAM น่าจะเป็นปัญหา NIS PAM ไม่มีความคิดของกลุ่มเลย มันทำผ่าน libc เมื่อ sshd เรียกกลุ่มเริ่มต้น
นิโคลัสวิลสัน

1
จริงๆแล้วฉันปรับเปลี่ยนเล็กน้อยว่า: เห็นได้ชัดว่าบางโมดูลเชื่อมโยงการเรียก pam_setcred เพื่อสร้างกลุ่มผู้ใช้ซึ่งเป็นสาเหตุที่การเรียก sshd เริ่มต้นกลุ่มก่อน pam_setcred อืมม
นิโคลัสวิลสัน

คำตอบ:


3

วันนี้ฉันเอาหัวใจและแก้ไขมันในที่สุด ห่วงโซ่แพมทำงานเช่นนี้

  • /etc/pam.d/sshd รวมถึง:
    • /etc/pam.d/system-remote-login ที่รวมถึง:
      • /etc/pam.d/system-login ที่รวมถึง:
        • /etc/pam.d/system-auth ซึ่งมีข้อกำหนดเพิ่มเติม

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

auth    optional  pam_group.so

เข้าสู่การ/etc/pam.d/system-loginทำงานแล้ว


1

โปรแกรมเข้าสู่ระบบ (ซึ่งตั้งค่าสภาพแวดล้อมของคุณรวมถึง UID, GID และกลุ่มเพิ่มเติม) รับข้อมูลเกี่ยวกับชื่อผู้ใช้ <--> UID, GID และกลุ่มเสริมที่ชื่อผู้ใช้เป็นเจ้าของจากฐานข้อมูลบางประเภท ตามเนื้อผ้าจากไฟล์ / etc / passwd และ / etc / groups วันนี้ก็มาจาก LDAP เช่นกัน กลุ่มที่คุณได้รับมอบหมายอาจแตกต่างกันไปขึ้นอยู่กับแหล่งข้อมูล

ระวังถ้าแหล่งที่มาที่แตกต่างกันปะปนกันคุณสามารถจบลงด้วยบัญชีที่มีชื่อเดียวกัน แต่ UID ที่แตกต่างกัน (ระบบใช้ UID ภายในจริง ๆ ) หรือกลุ่มของกลุ่มที่แตกต่างกัน ผลที่ตามมาเป็นปกติมากความบันเทิงสำหรับผู้ชมสบาย ๆ ในขณะที่นำไปสู่ศีรษะล้านก่อนวัยอันควรเนื่องจากกว้างขวางผมดึงสำหรับบุคคลในค่าใช้จ่าย (เคยไปที่นั่น.)


0

เป็นnsswitch.conf:

    กลุ่ม: compat ldap

afaik สิ่งนี้เรียก getgrent ซึ่งได้รับกลุ่ม (รายการกลุ่ม)

แก้ไข: สิ่งอื่นคือการเพิ่มต่อไปนี้ไปที่/etc/pam.d/common-auth:

รับรองความถูกต้อง pam_group.so use_first_pass

สำหรับข้อมูลเพิ่มเติมดูได้ที่นี่: กำหนดกลุ่มโลคัลให้กับผู้ใช้และอาจจะเป็นกลุ่มใหม่และกลุ่มที่ได้รับมอบหมายผ่านทางแพมกลุ่ม


บรรทัดนั้นมีอยู่แล้วเช่นนั้น
สูงสุด

อาจเพิ่มลงใน "รายการที่เกี่ยวข้องจาก nsswitch.conf" ในคำถามของคุณ
xx4h

เสร็จสิ้นและการแก้ไขไม่ได้ช่วย
สูงสุด

คุณทำpam-auth-updateและเริ่ม nscd?
xx4h

0

ฉันมีปัญหาที่คล้ายกันเกือบ: เมื่อเข้าสู่ระบบโดยใช้ ssh บางกลุ่มก็หายไป ได้รับการแก้ไขโดยการเปลี่ยน /etc/nsswitch.conf:

group:      compat  -> group:      files nis
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.