realmd/sssd를 사용하여 Microsoft AD 도메인에 가입된 CentOS 7.7 시스템이 있습니다. Sudo는 로컬 시스템 사용자에게는 매우 잘 작동하지만 Active Directory 사용자(ocftest)로 sudo를 사용하려고 하면 다음 오류가 발생합니다.
sudo: PAM account management error: Permission denied
우리는 다음 버전의 sudo를 사용합니다: sudo-1.8.23-9.el7.x86_64.rpm
사용자는 자신의 비밀번호를 사용하여 시스템에 완벽하게 "ssh"할 수 있습니다. 인터넷 검색 후에 이 질문이 몇 번 나타났습니다. 일반적으로 "/etc/security/access.conf" 파일에 다음을 추가하는 것과 관련이 있습니다.
+ : ocftest : ALL
- : ALL : ALL
"/etc/sudoers.d/salt" 파일에 동일한 이름을 가진 사용자 그룹(이 사용자를 시도했지만)이 있습니다.
%[email protected] ALL=(ALL) ALL
완전성을 위해 :
cat /etc/pam.d/sudo
#%PAM-1.0
auth include system-auth
account include system-auth
password include system-auth
session optional pam_keyinit.so revoke
session include system-auth
cat /etc/pam.d/sudo-i
#%PAM-1.0
auth include sudo
account include sudo
password include sudo
session optional pam_keyinit.so force revoke
session include sudo
cat /etc/pam.d/password-auth-ac
#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth required pam_env.so
auth required pam_faildelay.so delay=2000000
auth [default=1 ignore=ignore success=ok] pam_succeed_if.so uid >= 1000 quiet
auth [default=1 ignore=ignore success=ok] pam_localuser.so
auth sufficient pam_unix.so nullok try_first_pass
auth requisite pam_succeed_if.so uid >= 1000 quiet_success
auth sufficient pam_sss.so forward_pass
auth sufficient pam_krb5.so use_first_pass
auth required pam_deny.so
account required pam_access.so
account required pam_unix.so broken_shadow
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 1000 quiet
account [default=bad success=ok user_unknown=ignore] pam_sss.so
account [default=bad success=ok user_unknown=ignore] pam_krb5.so
account required pam_permit.so
password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok
password sufficient pam_sss.so use_authtok
password sufficient pam_krb5.so use_authtok
password required pam_deny.so
session optional pam_keyinit.so revoke
session required pam_limits.so
-session optional pam_systemd.so
session optional pam_oddjob_mkhomedir.so umask=0077
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session required pam_unix.so
session optional pam_sss.so
session optional pam_krb5.so
cat /etc/sssd/sssd.conf
[sssd]
domains = ad.domain.org
config_file_version = 2
services = nss, pam
[domain/ad.domain.org]
ad_domain = ad.domain.org
krb5_realm = AD.DOMAIN.ORG
realmd_tags = manages-system joined-with-samba
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
ignore_group_members = False
use_fully_qualified_names = False
fallback_homedir = /home/%u
access_provider = ad
enumerate = True
dyndns_update = False
auto_private_groups = true
ad_access_filter = (&(memberOf=OU=Users,OU=REDACTED,DC=redacted,DC=org))
[pam]
답변1
첫 번째 항목 다음에 no_access_check
to를 추가해 보세요 /etc/pam.d/system-auth
(링크여야 함)./etc/pam.d/system-auth-ac
account sufficient pam_vas3.so
# cat system-auth-ac
...
account sufficient pam_vas3.so no_access_check
...