보안은 AWS의 중요한 요소이며, HPC 데이터는 미션 크리티컬 자산인 경우가 많습니다. 방금 생성한 이 실습 환경은 사용자 본인의 계정으로 작동합니다. 즉, 사용자가 데이터와 애플리케이션을 완전히 제어하고 소유합니다. 이 모듈에서는 보안에 대한 AWS의 접근 방식을 살펴보고, HPC 애플리케이션과 데이터를 안전하게 보호하는 데 활용 가능한 몇 가지 주요 기술을 소개합니다.

다루는 주제:

  • AWS 공동 책임 모델
  • AWS Identity and Access Management(IAM) 사용
  • 네트워크 보안
  • 인증

클라우드에서 HPC 인프라의 보안을 평가할 때에는 다음을 이해하고 그 차이를 구분하는 것이 중요합니다.

  • 클라우드 서비스 제공업체(AWS)가 구현하고 운영하는 보안 조치 – "클라우드 보안"
  • AWS 서비스를 사용하는 고객 콘텐츠 및 애플리케이션의 보안과 관련되어 고객이 구현하고 운영하는 보안 조치 – "클라우드에서의 보안"

AWS가 클라우드 보안을 관리하는 데 반하여, 클라우드에서의 보안은 사용자의 책임입니다. 온사이트 데이터 센터의 애플리케이션을 보호할 때와 마찬가지로 콘텐츠, 플랫폼, 애플리케이션, 시스템 및 네트워크를 보호하기 위해 어떤 보안을 구현할지는 고객이 제어합니다.

실습 환경은 사용자 AWS 계정 내에 배포되는 솔루션이므로 실습 환경의 보안은 사용자의 책임이라는 점을 알아야 합니다. 자세한 내용을 알아보려면 무료 4시간 온라인 교육에 참여하거나 AWS 보안 백서를 참조하십시오.


사용자 지정 권한으로 생성한 자격 증명, 즉 보안 및 조직을 강화하기 위해 특정 사용자에게 AWS 계정에 대한 액세스 권한을 부여할 수 있습니다. 이전 모듈에서 시작한 HPC 환경의 경우 계정의 모든 AWS 서비스와 리소스에 대해 완전한 액세스 권한이 있는 Single Sign-On ID인 AWS 루트 사용자를 사용했습니다. 운영 워크로드의 경우, CloudFormation 템플릿을 배포하는 데 필요한 권한이 충분히 부여된 IAM 사용자라는 대체 사용자를 생성하여 사용하는 것이 모범 사례입니다.


전체 실습 환경은 새로 생성된 Virtual Private Cloud(VPC)에 포함되어 있습니다. 이 VPC는 같은 계정에서 실행 중인 다른 환경과 애플리케이션으로부터 격리해 줍니다. 이 VPC 내에서는 VM, 로드 밸런서 등의 EC2 서비스를 호스팅하는 데 여러 개의 서브넷이 사용됩니다.

실습 환경의 템플릿에서 사용자가 파라미터로 설정하는 CIDR 범위가 Application Load Balancer에 대한 HTTPS 액세스와 클러스터의 헤드 노드에 대한 SSH 액세스를 제한하는 데 보안 그룹 및 기타 VPC 구성 요소와 함께 사용됩니다. HTTPS 인증서와 SSH 인증서는 서로 다르며, HTTPS 인증서는 자체 서명되므로 운영 환경에서 사용하기에 적합하지 않습니다.

보안 그룹은 소스 CIDR, 프로토콜 및 포트를 기준으로 인스턴스에 대한 트래픽을 허용하고 차단하는 가상 방화벽 역할을 합니다. 인스턴스에는 하나 이상의 보안 그룹이 연결됩니다. 보안 그룹에는 연결된 인스턴스 안팎으로의 트래픽을 허용하는 규칙이 추가됩니다. 언제든지 보안 그룹에 대한 규칙을 수정할 수 있습니다. 새 규칙은 보안 그룹과 연결된 모든 인스턴스에 자동으로 적용됩니다.

인스턴스에 연결된 보안 그룹은 아래의 스크린샷에서 보듯이 EC2 콘솔에 인스턴스 설명과 함께 표시됩니다. 자세한 내용은 Amazon EC2 보안 그룹 사용 설명서를 참조하십시오.

위의 스크린샷에는 Amazon EC2 콘솔이 표시되어 있고 보안 그룹이 선택되어 있습니다. 상자 1은 선택한 Amazon EC2 인스턴스의 보안 그룹이고 상자 2는 EC2 콘솔을 통해 보안 그룹에 액세스하는 다른 방법을 보여 줍니다.


AWS Identity and Access Management 내에서 관리되는 사용자는 네이티브 AWS 서비스에만 사용될 수 있으므로, 실습 환경에서는 Simple AD를 통해 사용자 인증을 구현합니다. Simple AD는 AWS Directory Service의 간단한 제품으로, Microsoft Active Directory 호환성을 지원합니다.

이 인증 솔루션은 클러스터의 헤드 노드에서 실행되는 EnginFrame 웹 액세스에서 사용자 자격 증명을 확인하고, 동적으로 생성 및 제거되는 클러스터 노드의 사용자를 전파하며, EFS에서 일관된 파일 액세스를 보장하는 일정한 네임스페이스를 제공하는 데 사용됩니다.

HPC 인프라를 설계하고 구축할 때, Windows 호환성을 강화하고 AWS에서 호스팅되는 디렉토리와 온프레미스 디렉토리 간의 트러스트 관계를 설정하기 위해 Microsoft AD Directory Service 제품으로 전환하는 것을 고려해 볼 수 있습니다.

Amazon EC2는 EC2 인스턴스에 대한 권한 있는 액세스에 퍼블릭 키 인증을 사용합니다. 퍼블릭 키 인증은 퍼블릭 키를 사용하여 전송된 데이터를 암호화하는 동시에 터미널 수신자가 프라이빗 키를 사용하여 데이터를 해독하므로 암호 인증보다 안전합니다. 퍼블릭 키와 프라이빗 키를 키 페어라고 합니다.

마스터 및 컴퓨팅 인스턴스에 연결된 키 페어는 실습 환경 시작 시에 파라미터로 입력됩니다. 마스터 및 컴퓨팅 인스턴스 모두에 ec2-user 계정으로 로그온해야 합니다. 이 계정에는 sudo 사용 권한이 있으며 암호가 설정되어 있지 않습니다.

인스턴스에 로그온하기 위한 퍼블릭 IP 주소와 ssh 키는 다음과 같습니다.

ssh –i $YOUR_KEY_PAIR_FILE ec2-user@$MASTER_ELASTIC_IP