8장. sVirt
sVirt는 SELinux와 가상화를 통합하는 Red Hat Enterprise Linux에 포함된 기술입니다. sVirt는 가상 시스템을 사용할 때 보안을 개선하기 위해 MAC(강제적 액세스 제어)를 적용합니다. 이러한 기술을 통합하는 주된 이유는 호스트 또는 다른 가상 시스템을 대상으로 하는 공격 벡터로 사용될 수 있는 하이퍼바이저의 버그에 대비하여 보안을 개선하고 시스템을 강화하는 것입니다.
이 장에서는 sVirt가 Red Hat Enterprise Linux의 가상화 기술과 통합하는 방법에 대해 설명합니다.
비가상화 환경
비가상화 환경에서 호스트는 물리적으로 서로 분리되며 각 호스트에는 웹 서버 또는 DNS 서버와 같은 서비스로 구성된 자체 포함 환경이 있습니다. 이러한 서비스는 자체 사용자 공간, 커널 및 물리적 호스트와 직접 통신하여 해당 서비스를 네트워크에 직접 제공합니다. 다음 이미지는 가상화되지 않은 환경을 나타냅니다.
![](https://access.redhat.com/webassets/avalon/d/Red_Hat_Enterprise_Linux-7-SELinux_Users_and_Administrators_Guide-ko-KR/images/0545b8d3c1e518b12706d1686b73e0a3/before_virtualization.png)
가상화 환경
가상화 환경에서는 여러 운영 체제를 단일 호스트 커널과 물리적 호스트 내에 수용(게스트)할 수 있습니다. 다음 이미지는 가상화된 환경을 나타냅니다.
![](https://access.redhat.com/webassets/avalon/d/Red_Hat_Enterprise_Linux-7-SELinux_Users_and_Administrators_Guide-ko-KR/images/067ff3eaedb1b14e1c1d4ea64c698ad0/after_virtualization.png)
8.1. 보안 및 가상화
서비스가 가상화되지 않은 경우 시스템은 물리적으로 분리됩니다. 모든 위협은 네트워크 공격을 제외하고 일반적으로 영향을 받는 시스템에 포함됩니다. 서비스를 가상화 환경에 그룹화하면 시스템에서 추가 취약점이 발생합니다. 게스트 인스턴스에서 악용할 수 있는 하이퍼바이저에 보안 취약점이 있는 경우 이 게스트는 호스트를 공격할 뿐만 아니라 해당 호스트에서 실행 중인 다른 게스트도 수행할 수 있습니다. 이는 이론적이지 않습니다. 이미 하이퍼바이저에 공격이 있습니다. 이러한 공격은 게스트 인스턴스를 초과하여 다른 게스트를 공격에 노출할 수 있습니다.
sVirt는 게스트를 격리하고 악용되는 경우 추가 공격을 제한하기 위한 노력입니다. 이 내용은 가상 머신을 중단하고 다른 호스트 인스턴스로 확장할 수 없는 다음 이미지에서 보여줍니다.
![](https://access.redhat.com/webassets/avalon/d/Red_Hat_Enterprise_Linux-7-SELinux_Users_and_Administrators_Guide-ko-KR/images/87c5e12d2c0548b1ea36107b8fcd2727/selinux_uuid_block.png)
SELinux는 MAC(Mandatory Access Control) 구현에 가상화 인스턴스를 위한 플러그형 보안 프레임워크를 도입합니다. sVirt 프레임워크를 사용하면 게스트와 해당 리소스의 레이블을 고유하게 지정할 수 있습니다. 레이블을 지정하면 서로 다른 게스트 간의 액세스를 거부할 수 있는 규칙을 적용할 수 있습니다.