적용 대상: Windows Server의 AKS
이 문서에서는 기본 VM(가상 머신)에 대한 SSH(Secure Shell Protocol) 액세스를 제한하는 AKS Arc의 새로운 보안 기능을 설명합니다. 이 기능은 특정 IP 주소에 대한 액세스만 제한하고 SSH를 통해 실행할 수 있는 명령 집합을 제한합니다.
개요
현재 Windows Server의 AKS에 대한 관리자 액세스 권한이 있는 모든 사람은 모든 컴퓨터에서 SSH를 통해 VM에 액세스할 수 있습니다. 일부 시나리오에서는 무제한 액세스로 인해 규정 준수를 통과하기 어렵기 때문에 해당 액세스를 제한할 수 있습니다.
메모
현재 이 기능은 AKS Arc의 새 설치에만 사용할 수 있으며 업그레이드에는 사용할 수 없습니다. AKS Arc의 새 설치만 제한된 IP를 전달하고 SSH를 통해 실행되는 명령을 제한할 수 있습니다.
SSH 제한 사용
SSH 제한을 사용하도록 설정하려면 다음 단계를 수행합니다.
New-AksHciSSHConfiguration cmdlet을 사용하여 VM에 대한 SSH 구성을 만들고, 접근을 허용할 원본 IP 주소 또는 CIDR을 지정합니다.
$ssh = New-AksHciSSHConfiguration -name sshConfig -cidr 172.16.0.0/24또는
$ssh = New-AksHciSSHConfiguration -name sshConfig -ipAddresses 4.4.4.4,8.8.8.8또는 SSH 액세스를 제한하려면 다음을 수행합니다.
$ssh = New-AksHciSSHConfiguration -name sshConfig –restrictSSHCommands메모
SSH 키가 전달되지 않으면 관리 클러스터 SSH 키가 다시 사용됩니다.
이전 단계에서 만든 SSH 구성을 전달하여 Set-AksHciConfig cmdlet을 실행하여 SSH 구성을 추가합니다.
Set-AksHciConfig -ssh $ssh
유효성 검사: 대상 클러스터
클러스터를 만든 후에는 VM 중 하나에 SSH를 시도하여 SSH 제한이 추가되었는지 수동으로 확인할 수 있습니다. 예를 들어:
ssh -i (get-MocConfig).sshPrivateKey clouduser@<vm-ipaddress>
지정된 IP 주소/CIDR 목록 내에서 또는 IP 주소 목록 외부에서 이 단계를 수행할 수 있습니다. IP 주소/CIDR 범위 내에서 SSH에 액세스할 수 있습니다. 목록 외부의 SSH 시도에는 액세스 권한이 없습니다.
SSH에서 직접 명령을 실행할 수도 있습니다. 이 명령은 날짜를 반환합니다.
Sudo 명령은 작동하지 않습니다.
ssh -i (get-mocconfig).sshPrivateKey clouduser@<ip> date
유효성 검사: 로그 수집
이 명령은 cloudinit, lb 로그 등과 같은 VM 로그를 반환합니다.
Get-AksHciLogs –virtualMachineLogs
고려 사항
- 이제 워크로드 클러스터에 대한 개별 SSH 구성을 사용할 수 있습니다. 워크로드 클러스터에 대한 구성은 New-AksHciSSHConfiguration PowerShell cmdlet을 사용합니다.
- 제한은 Linux에만 해당됩니다. Windows 노드에는 이 제한이 없습니다. SSH를 성공적으로 수행할 수 있어야 합니다.
- AKS Arc의 설치 단계에서만 구성을 설정할 수 있습니다.
- SSH 설정을 잘못 구성하는 경우 다시 설치를 수행해야 합니다.
- 업그레이드는 지원되지 않습니다.
- SSH 액세스를 제한할 수 있는 CIDR 또는 IP 주소를 추가할 수 있습니다.
- 제공하는 SSH 설정은 모든 대상 클러스터에 재사용됩니다. 워크로드 클러스터에 대한 개별 SSH 구성을 사용할 수 없습니다.
다음 단계
- Azure Local의 AKS에서 SSH 액세스 제한
- Windows Server의 AKS 개요