SSH 접근 범위가 제한되지 않은 Azure NSG

Azure NSG의 SSH 접근을 필요한 관리 주소로 제한하세요.

설명

Azure NSG에서 출발지 *에 대해 수신 TCP 22 포트를 허용하면 해당 규칙이 SSH 출발지를 제한하지 않습니다.

잠재적 영향

공개 경로로 도달할 수 있는 SSH 서비스가 있으면 불필요한 로그인 시도와 암호 대입 공격에 노출될 수 있습니다.

해결 방법

출발지를 필요한 관리 IP나 서브넷으로 제한하거나 Azure Bastion 같은 관리 경로를 사용하세요. 연결된 NSG와 규칙 우선순위를 함께 확인하세요.

예시

예시의 203.0.113.10/32는 문서용 주소이므로 실제 관리 주소로 교체하세요. 서비스에 대한 실제 접근은 라우팅과 적용된 규칙 전체에 따라 달라집니다.

변경 전

bicep
resource security_group 'Microsoft.Network/networkSecurityGroups@2020-11-01' = {
  name: 'security-group'
  location: resourceGroup().location
  properties: {
    securityRules: [
      {
        properties: {
          protocol: 'Tcp'
          sourcePortRange: '*'
          destinationPortRange: '22'
          sourceAddressPrefix: '*'
          destinationAddressPrefix: '*'
          access: 'Allow'
          priority: 301
          direction: 'Inbound'
        }
        name: 'security-rule'
      }
    ]
  }
}

변경 후

bicep
resource security_group 'Microsoft.Network/networkSecurityGroups@2020-11-01' = {
  name: 'security-group'
  location: resourceGroup().location
  properties: {
    securityRules: [
      {
        properties: {
          protocol: 'Tcp'
          sourcePortRange: '*'
          destinationPortRange: '22'
          sourceAddressPrefix: '203.0.113.10/32'
          destinationAddressPrefix: '*'
          access: 'Allow'
          priority: 301
          direction: 'Inbound'
        }
        name: 'security-rule'
      }
    ]
  }
}

참조