Docs Menu
Docs Home
/
MongoDB Ops Manager
/ /

Kerberos용 MongoDB Agent 구성

이 페이지의 내용

  • 전제 조건
  • 절차

MongoDB Enterprise 는 Kerberos를 지원합니다. Kerberos 네트워크 인증 프로토콜입니다. MongoDB Agent는 Kerberos를 실행하는 MongoDB 인스턴스에 인증할 수 있습니다.

Kerberos 티켓은 제한된 시간 동안 사용자를 인증할 수 있습니다. Kerberos 키 배포 센터(KDC)를 구성 해야 합니다. 4시간 이상 유효한 티켓을 발행합니다. MongoDB Agent는 주기적으로 티켓을 갱신합니다. KDC 서비스는 사용자와 호스트에게 세션 티켓과 임시 세션 키를 제공합니다.

MongoDB Agent는 MongoDB 사용자처럼 배포서버의 MongoDB 데이터베이스와 상호 작용합니다. 따라서 인증을 지원하도록 MongoDB deployment 및 MongoDB Agent를 구성해야 합니다.

가 배포서버 를추가 할 때 배포의 인증 메커니즘을 지정하거나 기존 배포서버 의 설정을 편집 할 수 있습니다. 최소한 배포서버 에서는 MongoDB Agent 가 사용하려는 인증 메커니즘 을 활성화 해야 합니다. MongoDB Agent 는 지원되는 모든 인증 메커니즘 을 사용할 수 있습니다.

이 튜토리얼을 진행하려면 다음 사항을 확인해야 합니다.

  • 배포에서 Kerberos 인증을 지원하며

  • MongoDB Agent는 Kerberos 인증을 사용합니다.

Kerberos 인증을 활성화하는 방법을 알아보려면 Ops Manager 프로젝트에 Kerberos 인증 활성화를 참조하세요.

모니터링 또는 백업을 실행하는 모든 호스트에 두 개의 Kerberos 관련 파일을 설치해야 합니다.

  • krb5.conf 를 만들거나 구성합니다. Kerberos 구성 파일.

    플랫폼
    기본 경로
    참고 사항
    Linux
    /etc/krb5.conf
    Windows
    %WINDIR%\krb5.ini
    이 경로는 Active Directory 기반이 아닌 Kerberos 구현을 위한 기본 경로입니다. Kerberos 구성 파일이 저장되는 위치를 확인하려면 사용 중인 Windows 버전에 대한 Kerberos 구현에 대한 설명서를 참조하세요.
  • Linux 시스템:kinit 확인 바이너리는 에 /usr/bin/kinit 있습니다. kinit 는 Kerberos를 사용하여 에이전트를 인증하는 Kerberos 티켓 부여 티켓을 얻거나 갱신합니다.

1

UPN 은 두 부분으로 형식이 지정되므로 Kerberos 영역에서 서비스를 고유하게 식별할 수 있습니다.

구성 요소
설명
서비스 이름
호스트가 Kerberos 영역에 제공하는 한 서비스의 이름(예: pop 또는 ftp 입니다.
Kerberos 영역

동일한 Kerberos 데이터베이스를 공유하는 managed 호스트 및 서비스의 집합입니다.

Kerberos 명명 규칙에 따라 <KERBEROS_REALM> 는 모든 UPPERCASE 에 있어야 합니다.

예시

EXAMPLE.COM 으로 설정된 Kerberos 영역에서 MongoDB 에이전트는 UPN 을 다음과 같이 설정합니다: mongodb-agent@EXAMPLE.COM

2

키탭 *.keytab생성 MongoDB Agent UPN 에 대한 파일( )을 만들어 MongoDB Agent를 실행하는 호스트에 복사합니다. MongoDB Agent를 실행하는 운영 체제 사용자가 keytab 파일을 소유한 운영 체제 사용자와 동일한지 확인합니다.

자동화가 활성화되면 Ops Manager가 MongoDB Agent 인증을 managed합니다.

MongoDB Agent 인증을 위한 Kerberos를 구성하려면 Ops Manager 프로젝트에 Kerberos 인증 활성화를 참조하세요.

MongoDB Agent 에 대한 Kerberos UPN 을 생성한 후, 배포서버 서버에서 MongoDB Agent의 UPN 에 해당하는 MongoDB 사용자를 생성하고 권한을 부여합니다.

MongoDB 사용자를 생성하는 위치는 LDAP 권한 부여 사용 여부에 따라 달라집니다.

참고

MongoDB 8.0부터 LDAP 인증 및 권한 부여는 더 이상 지원되지 않습니다. 이 기능은 사용할 수 있으며 MongoDB 8의 수명 기간 동안 변경 없이 계속 작동합니다. LDAP는 향후 주요 릴리스에서 제거될 예정입니다.

자세한 내용은 LDAP 사용 중단을 참조하세요.

MongoDB deployment 서버에서 LDAP 권한 부여 를 사용하는 경우, LDAP 서버 에서 MongoDB Agent 에 대한 LDAP 사용자 및 LDAP 그룹 을 생성해야 합니다. LDAP 사용자 및 그룹 을 만든 후 배포서버의 admin 데이터베이스 에 있는 MongoDB 역할 에 LDAP 그룹 을 매핑합니다.

경고

LDAP 권한 부여를 사용하는 경우 $external 데이터베이스 에 MongoDB 사용자를 생성 하지 마세요. $external 데이터베이스 에 MongoDB 사용자가 있고 LDAP 권한 부여 가 활성화된 경우 MongoDB 3.4 이상이 시작되지 않습니다.

MongoDB Agent 를 나타내는 MongoDB 사용자의 경우:

  1. MongoDB Agent의 UPN 으로 명명된 LDAP 서버 에 새 LDAP 사용자를 생성합니다.

  2. 이름이 MongoDB Agent의 역할 과 일치하는 LDAP 그룹 을 생성합니다.

  3. 적절한 권한을 사용하여 admin 데이터베이스 에 MongoDB Agent의 역할 을 생성합니다.

    참고

    자동화가 활성화되면 자동화는 LDAP 인증 을 위해 MongoDB Agent 사용자에 대한 역할 을 자동으로 생성합니다.

  4. LDAP 사용자를 LDAP 그룹 에 할당합니다.

다음도 참조하세요.

방법을 학습 보세요:
~를 참조하세요.
LDAP 사용자 만들기
LDAP 구현 에 대한 문서입니다.
LDAP 그룹 만들기
LDAP 구현 에 대한 문서입니다.
MongoDB Agent 에 적절한 역할 할당
LDAP 그룹 및 MongoDB 역할 매핑
MongoDB 매뉴얼의 LDAP 권한 부여 페이지에 있는LDAP 역할 섹션 .
LDAP 자동화 없이 권한 부여 MongoDB Ops Manager 구성
MongoDB 매뉴얼의 LDAP 권한 부여 페이지.

LDAP 권한 부여 를 사용하지 않는 경우, MongoDB deployment 의 $external 데이터베이스 에 MongoDB Agent의 UPN 을 사용자로 추가해야 합니다. LDAP 권한 부여 가 없으면 MongoDB 는 $external 데이터베이스 를 사용하여 Kerberos 에 대해 사용자를 인증합니다.

참고

MongoDB Agent에 적합한 역할을 찾으려면 MongoDB Agent 에 MongoDB Agent 액세스 권한을 참조하세요.

mongosh 에서 다음 명령을 실행하여 MongoDB 사용자를 생성합니다.

db.getSiblingDB("$external").createUser(
{
user : "<Kerberos Principal>",
roles : [
{ role : "clusterAdmin", db : "admin" },
{ role : "readWriteAnyDatabase", db : "admin" },
{ role : "userAdminAnyDatabase", db : "admin" },
{ role : "dbAdminAnyDatabase", db : "admin" },
{ role : "backup", db : "admin" },
{ role : "restore", db : "admin" }
]
}
)

돌아가기

LDAP

이 페이지의 내용