검색

7.4. ID 및 인증 공급자에 대한 추가 구성

download PDF

7.4.1. 사용자 이름 형식 조정

7.4.1.1. 전체 사용자 이름 구문 분석에 대한 정규 표현식 정의

SSSD는 전체 사용자 이름 문자열을 사용자 이름 및 도메인 구성 요소로 구문 분석합니다. 기본적으로 SSSD는 Python 구문의 다음 정규식을 기반으로 user_name@domain_name 형식의 전체 사용자 이름을 해석합니다.
(?P<name>[^@]+)@?(?P<domain>[^@]*$)
참고
Identity Management 및 Active Directory 공급자의 경우 기본 사용자 이름 형식은 user_name@domain_name 또는 NetBIOS_name\user_name 입니다.
SSSD에서 전체 사용자 이름을 해석하는 방법을 조정하려면 다음을 수행합니다.
  1. /etc/sssd/sssd.conf 파일을 엽니다.
  2. re_expression 옵션을 사용하여 사용자 지정 정규식을 정의합니다.
    1. 모든 도메인에 대해 정규 표현식을 전역적으로 정의하려면 sssd.conf[sssd] 섹션에 re_expression 을 추가합니다.
    2. 특정 도메인에 대해 정규식을 개별적으로 정의하려면 sssd.conf 의 해당 도메인 섹션에 re_expression 을 추가합니다.
예를 들어 LDAP 도메인의 정규 표현식을 구성하려면 다음을 수행합니다.
[domain/LDAP]
[... file truncated ...]
re_expression = (?P<domain>[^\\]*?)\\?(?P<name>[^\\]+$)
자세한 내용은 sssd.conf(5) 도움말 페이지의 SPECIALTIONS 및 DOMAINDOMAINTIONS 부분에서 re_expression 에 대한 설명을 참조하십시오.

7.4.1.2. SSSD가 전체 사용자 이름을 출력하는 방법 정의

/etc/sssd/sssd.conf 파일에서 use_fully_qualified_names 옵션이 활성화된 경우 SSSD는 기본적으로 다음 확장을 기반으로 이름@domain 형식으로 전체 사용자 이름을 출력합니다.
%1$s@%2$s
참고
use_fully_qualified_names 가 설정되지 않았거나 신뢰할 수 있는 도메인에 대해 명시적으로 false 로 설정된 경우 도메인 구성 요소 없이 사용자 이름만 출력됩니다.
SSSD에서 전체 사용자 이름을 출력하는 형식을 조정하려면 다음을 수행합니다.
  1. /etc/sssd/sssd.conf 파일을 엽니다.
  2. full_name_format 옵션을 사용하여 전체 사용자 이름 형식의 확장을 정의합니다.
    1. 모든 도메인에 대해 전역적으로 확장을 정의하려면 sssd.conf[sssd] 섹션에 full_name_format 을 추가합니다.
    2. 특정 도메인에 대해 개별적으로 확장을 정의하려면 sssd.conf 의 해당 domain 섹션에 full_name_format 을 추가합니다.
자세한 내용은 sssd.conf(5) 도움말 페이지의 SPECIALTIONS 및 DOMAIN AlertsTIONS 부분에서 full_name_format 에 대한 설명을 참조하십시오.
일부 이름 구성에서는 SSSD에서 이름의 도메인 구성 요소를 제거하여 인증 오류가 발생할 수 있습니다. 이로 인해 full_name_format 을 비표준 값으로 설정하면 경고에 더 표준 형식으로 변경하라는 메시지가 표시됩니다.

7.4.2. 오프라인 인증 활성화

SSSD는 기본적으로 사용자 자격 증명을 캐시하지 않습니다. 인증 요청을 처리할 때 SSSD는 항상 ID 공급자에 연결합니다. 공급자를 사용할 수 없는 경우 사용자 인증에 실패합니다.
중요
SSSD는 일반 텍스트로 암호를 캐시하지 않습니다. 암호의 해시만 저장합니다.
사용자가 ID 공급자를 사용할 수 없는 경우에도 인증할 수 있도록 인증하려면 인증 정보 캐싱을 활성화합니다.
  1. /etc/sssd/sssd.conf 파일을 엽니다.
  2. domain 섹션에서 cache_credentials = true 설정을 추가합니다.
    [domain/domain_name]
    cache_credentials = true
  3. 선택 사항이지만 권장되는 옵션입니다. ID 공급자를 사용할 수 없는 경우 SSSD에서 오프라인 인증을 허용하는 기간을 설정합니다.
    1. SSSD에서 작동하도록 PAM 서비스를 구성합니다. 7.5.2절. “서비스 구성: PAM” 참조하십시오.
    2. offline_credentials_expiration 옵션을 사용하여 시간 제한을 지정합니다. 예를 들어 마지막으로 로그인한 후 사용자가 3일 동안 오프라인 인증을 받을 수 있도록 지정하려면 다음을 수행합니다.
      [pam]
      offline_credentials_expiration = 3
offline_credentials_expiration 에 대한 자세한 내용은 sssd.conf(5) 도움말 페이지를 참조하십시오.

7.4.3. DNS 서비스 검색 구성

/etc/sssd/sssd.conf 파일에 ID 또는 인증 서버가 명시적으로 정의되지 않은 경우 SSSD에서 DNS 서비스 검색을사용하여 동적으로 서버를 검색할 수 있습니다. [1].
예를 들어 sssd.confid_provider = ldap 설정이 포함되어 있지만 ldap_uri 옵션이 호스트 이름 또는 IP 주소를 지정하지 않는 경우 SSSD는 DNS 서비스 검색을 사용하여 서버를 동적으로 검색합니다.
참고
SSSD는 기본 서버만 사용하여 백업 서버를 동적으로 검색할 수 없습니다.

DNS 서비스 검색을 위한 SSSD 구성

  1. /etc/sssd/sssd.conf 파일을 엽니다.
  2. 기본 서버 값을 _srv_ 로 설정합니다. LDAP 공급자의 경우 기본 서버는 ldap_uri 옵션을 사용하여 설정됩니다.
    [domain/domain_name]
    id_provider = ldap
    ldap_uri = _srv_
  3. 서비스 유형을 설정하여 암호 변경 공급자에서 서비스 검색을 활성화합니다.
    [domain/domain_name]
    id_provider = ldap
    ldap_uri = _srv_
    
    chpass_provider = ldap
    ldap_chpass_dns_service_name = ldap
  4. 선택 사항입니다. 기본적으로 서비스 검색에서는 시스템 호스트 이름의 domain 부분을 도메인 이름으로 사용합니다. 다른 DNS 도메인을 사용하려면 dns_discovery_domain 옵션에 도메인 이름을 지정합니다.
  5. 선택 사항입니다. 기본적으로 서비스 검색은 LDAP 서비스 유형에 대해 스캔합니다. 다른 서비스 유형을 사용하려면 ldap_dns_service_name 옵션에 유형을 지정합니다.
  6. 선택 사항입니다. 기본적으로 SSSD는 IPv4 주소를 조회하려고 시도합니다. 시도에 실패하면 SSSD에서 IPv6 주소를 조회하려고 시도합니다. 이 동작을 사용자 지정하려면 lookup_family_order 옵션을 사용합니다. 자세한 내용은 sssd.conf(5) 도움말 페이지를 참조하십시오.
  7. 서비스 검색을 사용할 모든 서비스에 대해 DNS 서버에 DNS 레코드를 추가합니다.
    _service._protocol._domain TTL priority weight port host_name

7.4.4. 간단한 액세스 공급자를 사용하여 액세스 제어 정의

간단한 액세스 공급자는 사용자 이름 또는 그룹 목록에 따라 액세스를 허용하거나 거부합니다. 이를 통해 특정 시스템에 대한 액세스를 제한할 수 있습니다.
예를 들어 회사 랩탑에서는 간단한 액세스 공급자를 사용하여 특정 사용자 또는 특정 그룹에만 액세스를 제한할 수 있습니다. 다른 사용자 또는 그룹은 구성된 인증 프로바이더에 대해 성공적으로 인증하더라도 로그인할 수 없습니다.

간단한 액세스 공급자 규칙 구성

  1. /etc/sssd/sssd.conf 파일을 엽니다.
  2. access_provider 옵션을 simple 로 설정합니다.
    [domain/domain_name]
    access_provider = simple
  3. 사용자에 대한 액세스 제어 규칙을 정의합니다. 다음 중 하나를 선택합니다.
    1. 사용자에 대한 액세스를 허용하려면 simple_allow_users 옵션을 사용합니다.
    2. 사용자에 대한 액세스를 거부하려면 simple_deny_users 옵션을 사용합니다.
      중요
      특정 사용자에 대한 액세스 허용은 거부하는 것보다 더 안전하다고 간주됩니다. 특정 사용자에 대한 액세스를 거부하면 다른 모든 사용자에 대한 액세스를 자동으로 허용합니다.
  4. 그룹에 대한 액세스 제어 규칙을 정의합니다. 다음 중 하나를 선택합니다.
    1. 그룹에 대한 액세스를 허용하려면 simple_allow_groups 옵션을 사용합니다.
    2. 그룹에 대한 액세스를 거부하려면 simple_deny_groups 옵션을 사용합니다.
      중요
      특정 그룹에 대한 액세스 허용은 거부하는 것보다 더 안전하다고 간주됩니다. 특정 그룹에 대한 액세스를 거부하면 다른 모든 사용자에 대한 액세스를 자동으로 허용합니다.
다음 예제에서는 다른 모든 사용자에 대한 액세스를 거부하면서 user1,user2group1 의 멤버에 대한 액세스를 허용합니다.
[domain/domain_name]
access_provider = simple
simple_allow_users = user1, user2
simple_allow_groups = group1
자세한 내용은 sssd-simple(5) 도움말 페이지를 참조하십시오.

7.4.5. LDAP 액세스 필터를 사용하여 액세스 제어 정의

access_provider 옵션이 /etc/sssd/sssd.conf 에 설정된 경우 SSSD는 지정된 액세스 공급자를 사용하여 시스템에 대한 액세스 권한을 부여하는 사용자를 평가합니다. 사용 중인 액세스 프로바이더가 LDAP 공급자 유형의 확장인 경우 시스템에 대한 액세스를 허용하려면 사용자가 일치해야 하는 LDAP 액세스 제어 필터를 지정할 수도 있습니다.
예를 들어 AD(Active Directory) 서버를 액세스 프로바이더로 사용하는 경우 지정된 AD 사용자로만 Linux 시스템에 대한 액세스를 제한할 수 있습니다. 지정된 필터와 일치하지 않는 다른 모든 사용자는 액세스가 거부됩니다.
참고
액세스 필터는 LDAP 사용자 항목에만 적용됩니다. 따라서 중첩된 그룹에서 이 유형의 액세스 제어가 작동하지 않을 수 있습니다. 중첩된 그룹에 액세스 제어를 적용하려면 7.4.4절. “간단한 액세스 공급자를 사용하여 액세스 제어 정의” 을 참조하십시오.
중요
오프라인 캐싱을 사용할 때 SSSD는 사용자의 가장 최근 온라인 로그인 시도에 성공했는지 확인합니다. 최근 온라인 로그인 중에 로그인한 사용자는 액세스 필터와 일치하지 않더라도 오프라인으로 로그인할 수 있습니다.

LDAP 액세스 필터를 적용하도록 SSSD 구성

  1. /etc/sssd/sssd.conf 파일을 엽니다.
  2. [domain] 섹션에서 LDAP 액세스 제어 필터를 지정합니다.
    • LDAP 액세스 공급자의 경우 ldap_access_filter 옵션을 사용합니다. 자세한 내용은 sssd-ldap(5) 도움말 페이지를 참조하십시오.
    • AD 액세스 공급자의 경우 ad_access_filter 옵션을 사용합니다. 자세한 내용은 sssd-ad(5) 도움말 페이지를 참조하십시오.
    예를 들어 admins 사용자 그룹에 속하고 unixHomeDirectory 속성이 설정된 AD 사용자에게만 액세스를 허용하려면 다음을 수행합니다.
    [domain/AD_domain_name]
    access provider = ad
    [... file truncated ...]
    ad_access_filter = (&(memberOf=cn=admins,ou=groups,dc=example,dc=com)(unixHomeDirectory=*))
SSSD는 항목의 authorizedService 또는 host 특성을 통해 결과를 확인할 수도 있습니다. 실제로 사용자 항목 및 구성에 따라 LDAP filter, authorizedServicehost 와 같은 모든 옵션을 평가할 수 있습니다. ldap_access_order 매개 변수는 평가 방법에 따라 사용할 모든 액세스 제어 메서드를 나열합니다.
[domain/example.com]
access_provider = ldap
ldap_access_filter = memberOf=cn=allowedusers,ou=Groups,dc=example,dc=com
ldap_access_order = filter, host, authorized_service
인증된 서비스 또는 허용된 호스트를 평가하기 위해 사용할 user 항목의 속성을 사용자 지정할 수 있습니다. 추가 액세스 제어 매개변수는 sssd-ldap(5) 도움말 페이지에 나열됩니다.


[1] DNS 서비스 검색을 사용하면 애플리케이션에서 특정 유형의 특정 서비스에 대해 지정된 도메인의 SRV 레코드를 확인한 다음 필수 유형과 일치하는 서버를 반환할 수 있습니다. DNS 서비스 검색은 RFC 2782 에서 정의됩니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.