Udostępnij przez


Ograniczanie dostępu SSH do maszyn wirtualnych w usłudze AKS w systemie Windows Server

Dotyczy: usługa AKS w systemie Windows Server

W tym artykule opisano nową funkcję zabezpieczeń w usłudze AKS Arc, która ogranicza dostęp protokołu Secure Shell Protocol (SSH) do bazowych maszyn wirtualnych. Funkcja ogranicza dostęp tylko do określonych adresów IP i ogranicza zestaw poleceń, które można uruchamiać za pośrednictwem protokołu SSH.

Przegląd

Obecnie każda osoba mająca dostęp administratora do usługi AKS w systemie Windows Server ma dostęp do maszyn wirtualnych za pośrednictwem protokołu SSH na dowolnej maszynie. W niektórych scenariuszach możesz chcieć ograniczyć ten dostęp, ponieważ nieograniczony dostęp utrudnia spełnienie wymogów zgodności.

Notatka

Obecnie ta funkcja jest dostępna tylko dla nowej instalacji usługi AKS Arc, a nie w przypadku uaktualnień. Tylko nowa instalacja usługi AKS Arc może przekazywać ograniczone adresy IP i ograniczać polecenia uruchamiane za pośrednictwem protokołu SSH.

Włączanie ograniczeń protokołu SSH

Aby włączyć ograniczenia protokołu SSH, wykonaj następujące kroki:

  1. Utwórz konfigurację SSH przy użyciu polecenia cmdlet New-AksHciSSHConfiguration z dozwolonymi źródłowymi adresami IP lub CIDR, które chcesz dopuścić do dostępu do maszyn wirtualnych:

    $ssh = New-AksHciSSHConfiguration -name sshConfig -cidr 172.16.0.0/24
    

    lub

    $ssh = New-AksHciSSHConfiguration -name sshConfig -ipAddresses 4.4.4.4,8.8.8.8
    

    lub, aby ograniczyć dostęp SSH:

    $ssh = New-AksHciSSHConfiguration -name sshConfig –restrictSSHCommands 
    

    Notatka

    Jeśli klucze SSH nie są przekazywane, klucze SSH klastra zarządzania są ponownie używane.

  2. Dodaj konfigurację SSH, uruchamiając polecenie cmdlet Set-AksHciConfig, przekazując konfigurację SSH utworzoną w poprzednim kroku:

    Set-AksHciConfig -ssh $ssh
    

Walidacja: klaster docelowy

Po utworzeniu klastra można ręcznie sprawdzić, czy ograniczenie SSH zostało dodane, próbując przejąć protokół SSH do jednej z maszyn wirtualnych. Na przykład:

ssh -i (get-MocConfig).sshPrivateKey clouduser@<vm-ipaddress>

Ten krok można wykonać na liście określonych adresów IP/adresów CIDR lub poza listą adresów IP. Protokół SSH z zakresu adresów IP/CIDR ma uprawnienia dostępu. Próby SSH spoza listy nie mają dostępu.

Możesz również uruchamiać polecenia bezpośrednio z poziomu protokołu SSH. To polecenie zwraca datę. Sudo komendy nie działają:

ssh -i (get-mocconfig).sshPrivateKey clouduser@<ip> date 

Walidacja: zbieranie dzienników

To polecenie zwraca dzienniki maszyny wirtualnej, takie jak cloudinit, dzienniki lb itp.

Get-AksHciLogs –virtualMachineLogs

Zagadnienia dotyczące

  • Konfiguracja pojedynczego protokołu SSH dla klastrów obciążeń jest teraz dostępna. Konfiguracja klastrów obciążeń używa polecenia cmdlet New-AksHciSSHConfiguration PowerShell.
  • Ograniczenie dotyczy tylko systemu Linux. Węzły systemu Windows nie mają tego ograniczenia; Powinno być możliwe pomyślne połączenie SSH.
  • Konfigurację można ustawić tylko podczas fazy instalacji usługi AKS Arc.
  • Jeśli niepoprawnie skonfigurujesz ustawienia protokołu SSH, musisz wykonać ponowną instalację.
  • Nie ma obsługi uaktualnień.
  • Można dodawać ciDR lub adresy IP, do których można ograniczyć dostęp SSH.
  • Podane ustawienie SSH jest ponownie używane dla wszystkich klastrów docelowych. Pojedyncza konfiguracja protokołu SSH dla klastrów obciążeń nie jest dostępna.

Następne kroki