문제
TLS 1.0을 비활성화한 후 New Relic에 데이터가 표시되지 않습니다. 다음 레지스트리 키를 검사하여 TLS 1.0이 비활성화되었는지 확인했습니다.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client
"Enabled"
이 0
로 설정되고 "DisabledByDefault"
가 1
으로 설정되면 TLS 1.0이 비활성화됩니다.
또한 이 문제로 인해 New Relic 에이전트 로그에서 오류 메시지를 발견했을 수도 있습니다. 예를 들어:
- NewRelic ERROR: Unable to connect to the New Relic service at collector.newrelic.com:443 : System.Net.WebException:The request was aborted: Could not create SSL/TLS secure channel.
- NewRelic ERROR: Unable to connect to the New Relic service at collector.newrelic.com:443 : System.Net.WebException:The underlying connection was closed: An unexpected error occurred on a send. ---> System.IO.IOException:Received an unexpected EOF or 0 bytes from the transport stream.
- NewRelic ERROR: Unable to connect to the New Relic service at collector.newrelic.com:443 : System.Net.WebException:The underlying connection was closed: An unexpected error occurred on a receive. ---> System.ComponentModel.Win32Exception:The client and server cannot communicate, because they do not possess a common algorithm.
해결책
New Relic .NET 에이전트에는 TLS 1.2 이상의 최소 버전이 필요합니다. TLS 1.2의 경우 이를 사용하려면 .NET도 구성해야 합니다.
.NET 에이전트 버전 10.6.0부터 시작할 때 에이전트는 INFO 수준에서 구성된 TLS 버전을 기록합니다.
중요
TLS 버전을 기본값으로 설정하면 애플리케이션과 New Relic 에이전트 모두에서 사용됩니다. 각각에 대해 다른 TLS 버전을 사용할 수 없습니다.
특정 TLS 버전 프로토콜을 활성화하려면:
원인
외부 HTTP 요청에 대해 특정 버전의 TLS가 필요한 경우 애플리케이션과 서버가 올바르게 구성되었는지 확인해야 합니다. 적절한 구성이 없으면 New Relic .NET 에이전트가 New Relic에 연결할 수 없게 될 수 있습니다.
New Relic의 .NET 에이전트는 외부 HTTP 요청을 만들기 위해 .NET에서 사용할 수 있는 표준 클래스를 사용하여 New Relic 서버와 통신합니다. .NET 에이전트 코드는 애플리케이션 코드와 함께 실행되기 때문에 New Relic 서버와 통신하는 데 사용되는 보안 프로토콜은 애플리케이션의 환경 및 구성에 따라 다릅니다.
.NET Framework 버전에 따라 시스템 또는 애플리케이션의 TLS 설정을 올바르게 구성하는 방법에 대한 자세한 내용 은 (TLS) 모범 사례에 대한 Microsoft 설명서를 검토하십시오.