GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux + Active Directory-Authentifizierung + Anmeldung nur für bestimmte Gruppen

Lösung 1:

Unter der Annahme, dass die Gruppen für das Linux-System verfügbar sind, empfehle ich die Bearbeitung von /etc/security/access.conf für Ubuntu, RedHat-Distributionen (und ihre Gabeln) und wahrscheinlich ein paar andere. Dies erfordert keine Bearbeitung von PAM-Dateien und ist ein angenehmer Standardort, um dies zu tun. Es gibt normalerweise Beispiele in der Datei, die auskommentiert sind.

Lösung 2:

(Ich spreche hier von Samba 3, jetzt keine Erfahrung mit Samba 4.)

Es besteht keine Notwendigkeit, diese /etc/pam.d/xxx-Dateien zu bearbeiten. pam_winbind.conf die gewünschte Datei ist, befindet sie sich normalerweise unter /etc/security/pam_winbind.conf .

Es ist die Konfigurationsdatei des pam_winbind-Moduls und funktioniert sowohl für CentOS/Redhat als auch für Debian/Ubuntu. Sie können die Manpage von pam_winbind.conf als Referenz lesen.

Hier ist eine Beispieldatei.

#
# 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

Lösung 3:

Ich verwende derzeit die AllowGroups Direktive in /etc/ssh/sshd_config um einzuschränken, wer sich anmelden kann. Geben Sie eine oder mehrere AD-Gruppen in dieser Zeile an, und nur diese Personen können sich anmelden.

Denken Sie daran, dass dies nur funktioniert, wenn Ihre Benutzer nur sind Remote-Zugriff auf den Server über ssh. Wenn sie vor Ort singen, müssen Sie eine andere Lösung finden.

Lösung 4:

Ja, es gibt ein paar Möglichkeiten, dies zu tun, je nachdem, was Sie genau erreichen möchten.

Die erste Methode kann über die Samba-Konfiguration durchgeführt werden. Dies erlaubt nur diesen Benutzern, sich mit Samba zu verbinden, andere Benutzer können sich immer noch über andere Dienste anmelden (ssh, lokaler Begriff usw.). Damit möchten Sie Ihrem Abschnitt [global] in smb.conf eine Zeile hinzufügen:

valid users = @groupA @groupB

Die andere Methode besteht darin, PAM-Regeln zu ändern. Verschiedene Distributionen haben hier leichte Unterschiede, aber im Allgemeinen gibt es PAM-Regeln pro Dienst sowie gemeinsame Regeln, Sie können entscheiden, was am besten ist. Sie sollten eine Kontobeschränkung mit dem Modul pam_require hinzufügen. Ein Beispiel auf meinem Laptop (Fedora 13) wäre die Änderung des Kontoabschnitts in /etc/pam.d/system-auth zu:

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

Um die Verwaltung zu vereinfachen, möchten Sie möglicherweise eine neue Gruppe in AD erstellen, um Benutzer zu verfolgen, die sich bei diesem Server anmelden können.


Linux
  1. So kopieren Sie Bilder in großen Mengen nur mit einer bestimmten Größe unter Linux

  2. Root-SSH-Anmeldung nur mit Public-Key-Authentifizierung zulassen

  3. Linux-Befehl zum Verschieben des Verzeichnisses

  4. Entfernen Sie nur Dateien in Verzeichnissen unter Linux, NICHT in Verzeichnissen

  5. Was ist das Äquivalent von Active Directory unter Linux

So treten Sie einem Linux-System einer Active Directory-Domäne bei

So kopieren Sie das Verzeichnis unter Linux

Was ist die Login-Shell in Linux?

So führen Sie eine Samba Active Directory-Installation unter Linux durch

So verbinden Sie sich mit Samba mit Linux Active Directory

Linux:Fügen Sie PATH ein Verzeichnis hinzu