클라이언트 통신에 TLS v1.2를 적용하시겠습니까?

클라이언트 통신에 TLS v1.2를 적용하시겠습니까?

저는 제가 조사하라는 요청을 받은 내용이 실제로 달성 가능한지 확인하기 위해 건전성 검사를 하고 있습니다.

저는 현재 AWS CLI 또는 Boto3 API 호출을 통해 AWS S3에 파일을 전송하는 데 사용되는 Centos7 서버를 구축 중입니다. 외부에서 볼 때 이는 이 서버가 수행해야 하는 유일한 작업입니다.

AWS와 통신할 때 "TLS V1.2 이상만 사용하세요"라는 요청을 받았습니다.

내 Linux 서버 측에서 이 제한을 설정할 수 있습니까?

감사해요

답변1

바라보다aws-cli GitHub에서 문제 #3688.

2018년 10월의 원래 질문 timwins:

PCI DSS는 콘솔이 아닌 관리 액세스에 대해 "강력한 암호화"를 요구합니다. 이는 PCI SSC 지침에 따른 TLS 1.1 이상을 의미합니다. Python 문서에 따르면 (https://docs.python.org/2/library/ssl.html) 서버 설정 최소 SSL/TLS 요구 사항 - ssl.wrap_socket 매개변수와 서버 인증서를 사용한다고 가정합니다. 프로토콜 매개변수가 SSLv23으로 설정된 것으로 보입니다. 정말? 이를 통해 SSLv3 및 TLS v1을 협상할 수 있습니다.

클라이언트 구성에서 TLSv1.1 또는 TLSv1.2를 강제 적용할 수 있나요?

회신하다 JordonPhillips:

클라이언트와 서버는 항상 최신 버전의 TLS를 협상합니다. 모든 AWS 서비스는 TLS 1.2를 지원하므로 최신 버전의 openssl에 대해 컴파일된 Python 버전을 사용하는 한 문제가 없습니다. 즉, 현재는 이전 TLS 버전을 블랙리스트에 올릴 수 있는 방법이 없으므로 구성할 수 있는 비 AWS 엔드포인트가 최신 버전을 지원하는지 확인해야 합니다.

JordonPhillips이 문제는 2018년 11월에 기능 요청으로도 표시되었으므로 향후 어느 시점에 추가 개발이 있을 수 있기를 바랍니다.

결론적으로 timwins:

감사해요. 그런 다음 PCI DSS 규정 준수를 충족해야 하는 고객에게 최신 CLI 또는 최소 버전 3.6.0(?) Python을 사용할 책임이 있음을 알려줄 수 있습니다.

Python 3.7 이상과 OpenSSL 1.1.0g 이상의 조합이 다음을 제공할 것으로 보입니다.SSLContext.minimum_version이를 통해 마침내 "TLS 1.2 이상"과 같은 제한 사항을 Python에서 프로그래밍 방식으로 깔끔하고 향후 호환 가능한 방식으로 지정할 수 있습니다.

이전에는 사용 가능한 옵션에서 "TLS 1.2"만 지정할 수 있는 것 같았습니다.오직"TLS 1.2"와 같은 공개 제한을 원하는 경우에는 적합하지 않습니다.또는 더 나은”, TLS 버전에 대한 기본 지원을 허용할 수도 있지만 aws-cli아직 명확하지 않습니다.

아마도 이것이 요청된 기능을 개발하는 데 도움이 될 것입니까 aws-cli?

관련 정보