Azure Redis 비암호화 연결 허용

비암호화 포트를 끄고 애플리케이션이 TLS 연결만 사용하도록 구성하세요.

설명

Azure Cache for Redis에서 비암호화 포트를 활성화하면 해당 포트에 도달할 수 있는 클라이언트가 TLS 없는 연결을 사용할 수 있습니다. Redis는 세션, 토큰과 캐시 데이터처럼 민감할 수 있는 정보를 담으므로 평문 연결에서 데이터와 인증 정보가 노출될 위험이 있습니다.

잠재적 영향

  • 비암호화 연결의 캐시 데이터와 인증 정보가 네트워크에서 노출될 수 있습니다.
  • 공격자가 통신 경로를 관찰하거나 변조할 수 있으면 세션이나 토큰이 탈취될 수 있습니다.

해결 방법

현재 공급자에서는 non_ssl_port_enabled = false로, AzureRM 3.117.1에서는 enable_non_ssl_port = false로 비암호화 포트를 비활성화하세요. 애플리케이션과 운영 도구가 TLS 연결과 서버 인증서 검증을 사용하도록 설정하고 최소 TLS 버전과 네트워크 접근도 확인하세요.

예시

AzureRM 3.117.1의 enable_non_ssl_port 속성을 사용하는 예제입니다. 최신 공급자에서 대응하는 속성은 non_ssl_port_enabled입니다. 참조한 리소스는 별도로 구성해야 합니다.

변경 전

hcl
resource "azurerm_redis_cache" "example" {
  name                = "example-cache"
  location            = azurerm_resource_group.example.location
  resource_group_name = azurerm_resource_group.example.name
  capacity            = 2
  family              = "C"
  sku_name            = "Standard"
  enable_non_ssl_port = true
  minimum_tls_version = "1.2"

  redis_configuration {
  }
}

변경 후

hcl
resource "azurerm_redis_cache" "example" {
  name                = "example-cache"
  location            = azurerm_resource_group.example.location
  resource_group_name = azurerm_resource_group.example.name
  capacity            = 2
  family              = "C"
  sku_name            = "Standard"
  enable_non_ssl_port = false
  minimum_tls_version = "1.2"

  redis_configuration {
  }
}

변경 후에는 비암호화 포트를 비활성화합니다. 클라이언트도 TLS 포트를 사용하도록 변경하고 인증과 접근 권한을 유지하세요.

참조