การรับรองความถูกต้องของไดเรกทอรีที่ใช้งาน Linux + + อนุญาตให้เฉพาะบางกลุ่มเข้าสู่ระบบ


14

ฉันมีกล่องลินุกซ์บางตัวที่ใช้การรับรองความถูกต้องของ Windows Active Directory ซึ่งใช้งานได้ดี (Samba + Winbind)

สิ่งที่ฉันต้องการจะทำในขณะนี้คืออนุญาตเฉพาะบางคนหรือบางกลุ่มที่จะเข้าสู่ระบบโดยใช้ข้อมูลประจำตัวของ Active Directory ขณะนี้ทุกคนที่มีบัญชีโฆษณาที่ถูกต้องสามารถเข้าสู่ระบบได้ ฉันต้องการ จำกัด สิ่งนี้เพียงไม่กี่กลุ่ม เป็นไปได้หรือไม่

คำตอบ:


6

สมมติว่ากลุ่มนั้นพร้อมใช้งานกับระบบ Linux ฉันขอแนะนำให้แก้ไข/etc/security/access.confสำหรับ Ubuntu, RedHat distributions (และ forks) และอาจเป็นกลุ่มอื่น ๆ สิ่งนี้ไม่ต้องการการแก้ไขไฟล์ PAM และเป็นสถานที่มาตรฐานที่ควรทำ โดยปกติจะมีตัวอย่างในไฟล์แสดงความคิดเห็น


ขอบคุณนี่คือสิ่งที่ฉันใช้ในการทำสิ่งที่ฉันต้องการจะทำคำตอบทั้งหมดข้างต้นที่ดี แต่นี่คือสิ่งที่ดีที่สุดสำหรับฉัน ฉันใช้ไฟล์ Samba เพื่อล็อค Samba และตอนนี้ฉันกำลังใช้ไฟล์ access.conf นี้เพื่อล็อคการเข้าสู่ระบบ SSH
Luma

4

(ฉันกำลังพูดถึง samba 3 ที่นี่ไม่มีประสบการณ์เกี่ยวกับ samba 4 ในขณะนี้)

ไม่จำเป็นต้องแก้ไขไฟล์ /etc/pam.d/xxx เหล่านั้น pam_winbind.confเป็นไฟล์ที่คุณต้องการก็มักจะตั้งอยู่ที่/etc/security/pam_winbind.conf

มันเป็นไฟล์การกำหนดค่าของโมดูล pam_winbind และใช้ได้กับทั้ง CentOS / Redhat และ Debian / Ubuntu คุณสามารถอ่านman page ของ pam_winbind.confเพื่อใช้อ้างอิงได้

นี่คือไฟล์ตัวอย่าง

#
# pam_winbind configuration file
#
# /etc/security/pam_winbind.conf
#

[global]

# turn on debugging
;debug = no

# turn on extended PAM state debugging
;debug_state = no

# request a cached login if possible
# (needs "winbind offline logon = yes" in smb.conf)
cached_login = yes

# authenticate using kerberos
;krb5_auth = no

# when using kerberos, request a "FILE" krb5 credential cache type
# (leave empty to just do krb5 authentication but not have a ticket
# afterwards)
;krb5_ccache_type =

# make successful authentication dependend on membership of one SID
# (can also take a name)
# require_membership_of = SID,SID,SID
require_membership_of = S-1-5-21-4255311587-2195296704-2687208041-1794

# password expiry warning period in days
;warn_pwd_expire = 14

# omit pam conversations
;silent = no

# create homedirectory on the fly
mkhomedir = yes

3

ขณะนี้ฉันใช้AllowGroupsคำสั่ง/etc/ssh/sshd_configเพื่อ จำกัด ผู้ที่สามารถเข้าสู่ระบบระบุกลุ่มโฆษณาหนึ่งกลุ่มขึ้นไปในบรรทัดนั้นและคนเหล่านั้นจะเป็นกลุ่มเดียวที่สามารถเข้าสู่ระบบได้

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


3

ใช่มีสองสามวิธีในการทำสิ่งนี้ขึ้นอยู่กับสิ่งที่คุณพยายามจะทำให้สำเร็จ

วิธีแรกสามารถทำได้ผ่านการกำหนดค่า samba วิธีนี้จะอนุญาตให้ผู้ใช้เหล่านี้เชื่อมต่อกับ Samba ผู้ใช้รายอื่นยังสามารถเข้าสู่ระบบผ่านบริการอื่น ๆ (ssh, คำศัพท์ท้องถิ่นและอื่น ๆ ) ด้วยสิ่งนี้คุณจะต้องเพิ่มบรรทัดในส่วน [global] ใน smb.conf:

valid users = @groupA @groupB

วิธีอื่นคือแก้ไขกฎ PAM การกระจายที่แตกต่างกันมีความแตกต่างกันเล็กน้อยที่นี่ แต่โดยทั่วไปแล้วการพูดว่ามีกฎ PAM ต่อบริการเช่นเดียวกับกฎทั่วไปคุณสามารถตัดสินใจได้ว่าอะไรดีที่สุด คุณจะต้องการเพิ่มข้อ จำกัด บัญชีโดยใช้โมดูล pam_require ตัวอย่างบนแล็ปท็อปของฉัน (Fedora 13) จะเป็นการแก้ไขส่วนบัญชีใน /etc/pam.d/system-auth เป็น:

account     required      pam_unix.so
account     required      pam_require.so @groupA @groupB
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 500 quiet
account     required      pam_permit.so

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


1

ฉันพยายามดิ้นรนเพื่อให้ได้งานกับฉันใน RHEL 7 ด้านล่างนี้คือสิ่งที่ฉันสามารถทำงานได้

/etc/sssd/sssd.conf

เปลี่ยน access_provider = ad เป็นaccess_provider = simple +simple_allow_groups = @group1-admins@xxx.xxx.com, @group2@xxx.xxx.com

visudo

  • %group1-admins@xxx.xxx.com ALL=(ALL) ALL

เริ่มบริการ sssd


-3

ฉันได้รับอนุญาตเพียงหนึ่ง AD_USER หรือ AD_GROUP เพื่อ ssh เข้าสู่ระบบกล่องลินุกซ์ผ่านการตรวจสอบโฆษณา

รายละเอียดมีการระบุไว้ที่นี่: (ใส่ใจกับขั้นตอนที่ 7 และ 8)

https://gist.githubusercontent.com/xianlin/8c09d916994dac7630b9/raw/ee07817a03bc5904a5404a7e7c94e08ea0c7560a/CentOS_AD_Integration


ข้อมูลหายไป
Geoffrey

ลิงก์เสียโพสต์ที่ไร้ประโยชน์
FreeSoftwareServers

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