원격 세션 모니터링 및 관리

완료됨

이 단원에서는 진단 로그를 사용하도록 설정하고 원격 세션을 모니터링하여 원격 세션을 관리하는 방법을 알아봅니다.

감사 로그를 생성하도록 진단 설정 구성

Azure Bastion은 원격 사용자 세션 정보를 기록할 수 있습니다. 로그를 검토하여 누가 언제 어떤 워크로드에 어디서 연결했는지 및 기타 관련 로깅 정보를 확인할 수 있습니다.

이러한 로그를 생성하려면 Azure Bastion에서 진단 설정을 구성해야 합니다. 로그가 스토리지 계정으로 스트리밍되는 데 몇 시간 정도 걸릴 수 있습니다. 다음 섹션에서는 나중에 자신의 구독에서 사용해 볼 수 있도록 Azure Bastion 진단 설정을 구성하는 방법을 보여 줍니다.

Azure Bastion 진단 사용

Azure Bastion 리소스에서 모니터링 아래에 진단 설정을 추가할 수 있습니다. 로그를 스트리밍할 스토리지 계정이 필요합니다. 스토리지 계정이 아직 없는 경우 이 단계를 시도하기 전에 자체 구독에서 스토리지 계정을 만듭니다.

  1. Azure Portal에서 Bastion을 검색하거나 선택합니다.

  2. Azure Bastion 리소스를 선택합니다.

  3. 모니터링에서 진단 설정을 선택합니다.

  4. 진단 설정 추가를 선택합니다.

    진단 설정 페이지 내의 진단 설정 추가 링크 스크린샷

  5. 진단 설정 이름에 이름을 입력합니다.

  6. 로그 아래에서, Bastion 감사 로그 확인란에 체크합니다.

  7. 대상 세부 정보에서 Log Analytics로 보내기스토리지 계정에 보관을 선택합니다.

  8. 위치, 구독, 스토리지 계정이 자동으로 채워집니다. 스토리지 계정이 Azure Bastion 리소스와 동일한 지역에 있어야 합니다.

    채워진 진단 설정 페이지 스크린샷

  9. 저장을 선택합니다.

  10. 저장이 완료되면 페이지를 닫습니다.

진단 로그 보기

진단 로그가 스토리지 계정에 표시되려면 몇 시간 정도 걸립니다. 컨테이너 아래의 스토리지 계정에서 찾을 수 있습니다.

insights-logs-bastionauditlogs라는 컨테이너가 있는 스토리지 계정의 스크린샷.

리소스 계층 구조 폴더를 드릴다운하여 Azure Bastion 호스트 파일로 갑니다.

폴더 위치 수준이 Azure Bastion 호스트 리소스에 있음을 보여 주는 Azure Bastion 인사이트 로그 스크린샷

연도(y=), 월(m=), 일(d=), 시간(h=), 분(m=) 폴더를 계속 드릴다운하여 특정 기간의 진단 로그를 찾습니다.

특정 기간의 JSON 파일을 보여 주는 Azure Bastion 인사이트 로그 스크린샷

.json 파일을 다운로드하여 세션 정보를 확인합니다. 파일을 열면 다음 예제와 같이 표시됩니다. 예제에서는 작업 유형, 사용자 이름, 클라이언트 IP 주소와 같은 정보를 볼 수 있습니다.

{ 
"time":"2020-10-22T23:26:00.697Z",
"resourceId":"/SUBSCRIPTIONS/<subscripionID>/RESOURCEGROUPS/MYBASTION/PROVIDERS/MICROSOFT.NETWORK/BASTIONHOSTS/MYBASTION-BASTION",
"operationName":"Microsoft.Network/BastionHost/connect",
"category":"BastionAuditLogs",
"level":"Informational",
"location":"westus2",
"properties":{ 
   "userName":"<username>",
   "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36",
   "clientIpAddress":"131.107.159.86",
   "clientPort":24039,
   "protocol":"ssh",
   "targetResourceId":"/SUBSCRIPTIONS/<subscripionID>/RESOURCEGROUPS/MYBASTION/PROVIDERS/MICROSOFT.COMPUTE/VIRTUALMACHINES/LINUX-KEY",
   "subscriptionId":"<subscripionID>",
   "message":"Successfully Connected.",
   "resourceType":"VM",
   "targetVMIPAddress":"172.16.1.5",
   "tunnelId":"<tunnelID>"
},
"FluentdIngestTimestamp":"2020-10-22T23:26:00.0000000Z",
"Region":"westus2",
"CustomerSubscriptionId":"<subscripionID>"
}

현재 원격 세션 관리

Azure Bastion 세션 모니터링을 사용하면 가상 머신에 연결된 사용자를 볼 수 있습니다. 사용자가 연결한 IP, 연결 지속 기간 및 연결 시점을 보여 줍니다. 진행 중인 세션을 선택하고 세션 연결을 강제로 끊어 세션에서 사용자의 연결을 끊을 수 있습니다.

두 세션 중 하나에 삭제 옵션이 선택된 Azure Bastion 세션 페이지 스크린샷

다음 단원에서는 원격 세션을 관리하는 방법을 안내합니다.