Ubuntu Linux 가상 머신을 Microsoft Entra Domain Services 관리형 도메인에 조인

사용자가 단일 자격 증명 세트를 사용하여 Azure의 VM(가상 머신)에 로그인할 수 있도록 하려면 VM을 Microsoft Entra 도메인 서비스 관리형 도메인에 조인하면 됩니다. 도메인 서비스 관리되는 도메인에 VM을 조인하면 도메인의 사용자 계정과 자격 증명을 사용하여 서버에 로그인하고 관리할 수 있습니다. VM의 파일 또는 서비스에 대한 액세스를 제어할 수 있도록 관리되는 도메인의 그룹 멤버 자격도 적용됩니다.

이 문서에서는 Ubuntu Linux VM을 관리되는 do기본 조인하는 방법을 보여줍니다.

필수 조건

이 자습서를 완료하는 데 필요한 리소스와 권한은 다음과 같습니다.

Ubuntu Linux VM 만들기 및 연결

Azure에 기존 Ubuntu Linux VM이 있는 경우 SSH를 사용하여 연결하고 다음 단계를 계속 진행하여 VM 구성을 시작합니다.

Ubuntu Linux VM을 만들거나 이 문서에서 사용할 테스트 VM을 만들려는 경우 다음 방법 중 하나를 사용할 수 있습니다.

VM을 만들 때 가상 네트워크 설정에 주의하여 VM이 관리되는 도메인과 통신할 수 있는지 확인합니다.

  • Microsoft Entra Domain Services를 사용하도록 설정한 것과 동일하거나 피어링된 가상 네트워크에 VM을 배포합니다.
  • Microsoft Entra Domain Services 관리형 도메인과 다른 서브넷에 VM을 배포합니다.

VM이 배포되면 단계에 따라 SSH를 사용하여 VM에 연결합니다.

hosts 파일 구성

관리되는 do기본 VM 호스트 이름이 올바르게 구성되었는지 확인하려면 /etc/hosts 파일을 편집하고 호스트 이름을 설정합니다.

sudo vi /etc/hosts

호스트 파일에서 localhost 주소를 업데이트합니다. 다음 예제에서

  • aaddscontoso.com은 관리되는 도메인의 DNS 도메인 이름입니다.
  • ubuntu는 관리되는 도메인에 조인하려는 Ubuntu VM의 호스트 이름입니다.

해당 이름을 고유한 값으로 업데이트합니다.

127.0.0.1 ubuntu.aaddscontoso.com ubuntu

완료되면 편집기의 :wq 명령을 사용하여 hosts 파일을 저장한 후 종료합니다.

필요한 패키지를 설치합니다.

VM을 관리되는 do기본 조인하려면 VM에 몇 가지 추가 패키지가 필요합니다. 이러한 패키지를 설치하고 구성하려면 다음을 사용하여 do기본 조인 도구를 업데이트하고 설치합니다.apt-get

Kerberos를 설치하는 동안 krb5 사용자 패키지는 모든 대문자로 영역 이름을 묻는 메시지를 표시합니다. 예를 들어 관리되는 do기본 이름이 aaddscontoso.com 경우 영역으로 AADDSCONTOSO.COM 입력합니다. 설치는 /etc/krb5.conf[realm][domain_realm] 섹션을 구성 파일에 기록합니다. 영역을 모두 대문자로 지정해야 합니다.

sudo apt-get update
sudo apt-get install krb5-user samba sssd sssd-tools libnss-sss libpam-sss ntp ntpdate realmd adcli

NTP(Network Time Protocol) 구성

do기본 통신이 올바르게 작동하려면 Ubuntu VM의 날짜와 시간이 관리되는 작업과 동기화되어야 합니다기본. 관리되는 도메인의 NTP 호스트 이름을 /etc/ntp.conf 파일에 추가합니다.

  1. 편집기를 사용하여 ntp.conf 파일을 엽니다.

    sudo vi /etc/ntp.conf
    
  2. ntp.conf 파일에서 관리되는 do기본 DNS 이름을 추가할 줄을 만듭니다. 다음 예제에서는 aaddscontoso.com 항목이 추가됩니다. 사용자 고유의 DNS 이름을 사용합니다.

    server aaddscontoso.com
    

    완료되면 편집기의 :wq 명령을 사용하여 ntp.conf 파일을 저장하고 종료합니다.

  3. VM이 관리되는 do기본와 동기화되도록 하려면 다음 단계가 필요합니다.

    • NTP 서버 중지
    • 관리되는 do에서 날짜 및 시간을 업데이트합니다기본
    • NTP 서비스 시작

    다음 명령을 실행하여 단계를 완료합니다. ntpdate 명령을 사용하여 고유의 DNS 이름을 사용합니다.

    sudo systemctl stop ntp
    sudo ntpdate aaddscontoso.com
    sudo systemctl start ntp
    

VM을 관리되는 수행에 조인합니다기본

이제 필수 패키지를 VM에 설치하고 NTP를 구성했으므로 VM을 관리되는 도메인에 조인합니다.

  1. realm discover 명령을 사용하여 관리되는 도메인을 검색합니다. 다음 예에서는 AADDSCONTOSO.COM 영역을 검색합니다. 관리되는 도메인 이름을 모두 대문자로 지정합니다.

    sudo realm discover AADDSCONTOSO.COM
    

    명령에서 realm discover 관리되는 작업을 찾을 수 없는 경우기본 다음 문제 해결 단계를 검토합니다.

    • VM에서 do기본 연결할 수 있는지 확인합니다. 긍정적인 회신이 반환되는지 확인합니다 ping aaddscontoso.com .
    • VM이 관리되는 동일한 가상 네트워크 또는 피어된 가상 네트워크에 배포되어 있는지 확인합니다기본.
    • 가상 네트워크의 DNS 서버 설정이 관리되는 도메인의 도메인 컨트롤러를 가리키도록 업데이트되었는지 확인합니다.
  2. 이제 명령을 사용하여 Kerberos를 초기화합니다 kinit . 관리되는 할 일의 일부인 사용자를 지정합니다기본. 필요한 경우 Microsoft Entra ID의 그룹에 사용자 계정을 추가합니다.

    다시 말하지만 관리되는 do기본 이름은 모두 대문자로 입력해야 합니다. 다음 예제에서는 이름이 지정된 contosoadmin@aaddscontoso.com 계정을 사용하여 Kerberos를 초기화합니다. 관리되는 할 일의 일부인 사용자 계정을 입력합니다기본.

    sudo kinit -V contosoadmin@AADDSCONTOSO.COM
    
  3. 마지막으로, 명령을 사용하여 VM을 관리되는 do기본 조인합니다realm join. 이전 kinit 명령에서 지정한 관리되는 do기본 일부인 동일한 사용자 계정을 사용합니다( 예: contosoadmin@AADDSCONTOSO.COM).

    sudo realm join --verbose AADDSCONTOSO.COM -U 'contosoadmin@AADDSCONTOSO.COM' --install=/
    

VM을 관리되는 도메인에 조인하는 데는 몇 분 정도 걸립니다. 다음 예제 출력은 VM이 관리되는 do기본 성공적으로 조인되었음을 보여줍니다.

Successfully enrolled machine in realm

VM이 도메인 조인 프로세스를 성공적으로 완료할 수 없는 경우 VM의 네트워크 보안 그룹에서 관리되는 도메인의 가상 네트워크 서브넷에 대한 TCP + UDP 포트 464의 아웃바운드 Kerberos 트래픽을 허용하는지 확인합니다.

지정되지 않은 GSS 오류입니다. 보조 코드가 추가 정보를 제공할 수 있습니다(Kerberos 데이터베이스에서 서버를 찾을 수 없음) 오류가 표시되면 /etc/krb5.conf 파일을 연 후 다음 [libdefaults] 섹션에 코드를 추가하고 다시 시도하세요.

rdns=false

SSSD 구성 업데이트

이전 단계에서 설치된 패키지 중 하나는 SSSD(시스템 보안 서비스 디먼)용입니다. 사용자가 do기본 자격 증명을 사용하여 VM에 로그인하려고 하면 SSSD는 인증 공급자에게 요청을 릴레이합니다. 이 시나리오에서 SSSD는 Domain Services를 사용하여 요청을 인증합니다.

  1. 편집기를 사용하여 sssd.conf 파일을 엽니다.

    sudo vi /etc/sssd/sssd.conf
    
  2. 다음과 같이 use_fully_qualified_names 줄을 주석 처리합니다.

    # use_fully_qualified_names = True
    

    완료되면 편집기의 :wq 명령을 사용하여 sssd.conf 파일을 저장하고 종료합니다.

  3. 변경 내용을 적용하려면 SSSD 서비스를 다시 시작합니다.

    sudo systemctl restart sssd
    

사용자 계정 및 그룹 설정 구성

VM이 관리되는 do에 조인되고기본 인증을 위해 구성된 경우 완료할 수 있는 몇 가지 사용자 구성 옵션이 있습니다. 구성 변경에는 암호 기반 인증 허용과 도메인 사용자가 처음으로 로그인할 때 로컬 VM에 홈 디렉터리 자동 생성이 포함됩니다.

SSH에 대한 암호 인증 허용

기본적으로 사용자는 SSH 퍼블릭 키 기반 인증을 사용하여 VM에만 로그인할 수 있습니다. 암호 기반 인증이 실패합니다. VM을 관리되는 도메인에 조인할 때 해당 도메인 계정은 암호 기반 인증을 사용해야 합니다. 다음과 같이 암호 기반 인증을 허용하도록 SSH 구성을 업데이트합니다.

  1. 편집기를 사용하여 sshd_conf 파일을 엽니다.

    sudo vi /etc/ssh/sshd_config
    
  2. PasswordAuthentication 줄을 ‘예’로 업데이트합니다.

    PasswordAuthentication yes
    

    완료되면 편집기의 명령을 사용하여 :wq sshd_conf 파일을 저장하고 종료합니다.

  3. 변경 내용을 적용하고 사용자가 암호를 사용하여 로그인하도록 하려면 SSH 서비스를 다시 시작합니다.

    sudo systemctl restart ssh
    

자동 홈 디렉터리 만들기 구성

사용자가 처음 로그인할 때 홈 디렉터리를 자동으로 만들도록 설정하려면 다음 단계를 완료합니다.

  1. 편집기 /etc/pam.d/common-session 에서 파일을 엽니다.

    sudo vi /etc/pam.d/common-session
    
  2. 이 파일의 줄 아래에 다음 줄을 session optional pam_sss.so추가합니다.

    session required pam_mkhomedir.so skel=/etc/skel/ umask=0077
    

    완료되면 편집기의 명령을 사용하여 :wq 공통 세션 파일을 저장하고 종료합니다.

'AAD DC 관리istrators' 그룹 sudo 권한 부여

AAD DC 관리자 그룹 구성원에게 Ubuntu VM에 대한 관리 권한을 부여하려면 /etc/sudoers에 항목을 추가합니다. 추가되면 AAD DC 관리istrators 그룹의 멤버sudo Ubuntu VM에서 명령을 사용할 수 있습니다.

  1. 편집할 sudoers 파일을 엽니다:

    sudo visudo
    
  2. /etc/sudoers 파일의 끝에 다음 항목을 추가합니다.

    # Add 'AAD DC Administrators' group members as admins.
    %AAD\ DC\ Administrators ALL=(ALL) NOPASSWD:ALL
    

    완료되면 명령을 사용하여 편집기를 저장하고 종료합니다 Ctrl-X .

도메인 계정을 사용하여 VM에 로그인

VM이 관리되는 do기본 성공적으로 조인되었는지 확인하려면 do기본 사용자 계정을 사용하여 새 SSH 연결을 시작합니다. 홈 디렉터리가 만들어지고 도메인의 그룹 구성원이 적용되었는지 확인합니다.

  1. 콘솔에서 새 Secure Shell 연결을 만듭니다. contosoadmin@aaddscontoso.com과 같은 ssh -l 명령을 사용하는 관리되는 도메인에 속한 도메인 계정을 사용한 다음, ubuntu.aaddscontoso.com과 같은 VM 주소를 입력합니다. Azure Cloud Shell을 사용하는 경우 내부 DNS 이름 대신 VM의 공용 IP 주소를 사용합니다.

    sudo ssh -l contosoadmin@AADDSCONTOSO.com ubuntu.aaddscontoso.com
    
  2. VM에 성공적으로 연결되면 홈 디렉터리가 올바르게 초기화되었는지 확인합니다.

    sudo pwd
    

    사용자 계정과 일치하는 고유한 디렉터리가 있는 /home 디렉터리에 있어야 합니다.

  3. 이제 그룹 멤버 자격이 올바르게 확인되고 있는지 검사.

    sudo id
    

    관리되는 도메인의 그룹 멤버 자격이 표시되어야 합니다.

  4. AAD DC 관리istrators 그룹의 멤버로 VM에 로그인한 경우 명령을 올바르게 사용할 sudo 수 검사.

    sudo apt-get update
    

다음 단계

VM을 관리되는 do에 연결하거나기본 할 일기본 계정으로 로그인하는 데 문제가 있는 경우 문제 해결기본 조인 문제를 참조하세요.