Apache에서 SSLv3을 비활성화하는 방법은 무엇입니까?

Apache에서 SSLv3을 비활성화하는 방법은 무엇입니까?

다들 그 얘기를 하는 것 같더라고요.푸들 취약점오늘. 그리고 모든 사람들은 다음 구성 지시어를 사용하여 Apache에서 SSLv3를 비활성화할 것을 권장합니다.

SSLProtocol All -SSLv2 -SSLv3

기본값 대신

SSLProtocol All -SSLv2

그렇게 했는데 별 기쁨이 없었습니다. 다양한 도구를 사용하여 반복적으로 테스트한 결과(여기 빠른 거 있어), SSLv3가 내 서버에서 허용된다는 것을 알았습니다.

예, Apache를 다시 시작했습니다. 예, 모든 구성 파일에 대해 재귀를 수행했으며 grep어디에도 재정의된 내용이 없습니다. 그리고 아니요, 저는 일부 고대 버전의 Apache를 사용하지 않습니다.

[root@server ~]# apachectl -v
Server version: Apache/2.2.15 (Unix)
Server built:   Jul 23 2014 14:17:29

그렇다면 무엇을 제공합니까? 어떻게 하나?정말Apache에서 SSLv3을 비활성화하시겠습니까?

답변1

SSLProtocol all -SSLv2 -SSLv3저도 같은 문제가 있었습니다... httpd.conf의 모든 VirtualHost 스탠자에 포함해야 합니다.

VirtualHost 스탠자는 일반적으로 httpd.conf 파일의 끝부분에 있습니다. 예를 들면 다음과 같습니다.

...
...
<VirtualHost your.website.example.com:443>
    DocumentRoot /var/www/directory
    ServerName your.website.example.com

    ...
    SSLEngine on
    ...
    SSLProtocol all -SSLv2 -SSLv3
    ...
</VirtualHost>

또한 ssl.conf 또는 httpd-ssl.conf 또는 유사 항목이 반드시 httpd.conf에 설정되어 있는 것은 아니지만 거기에 설정되어 있을 수 있으므로 확인하십시오.

답변2

Ubuntu 14.04에서도 동일한 문제가 발생했습니다. 이 내용을 읽은 후 .NET에서 "SSLProtocol" 섹션을 편집했습니다 /etc/apache2/mods-available/ssl.conf.

  • 에서:SSLProtocol all
  • 에게: SSLProtocol all -SSLv2 -SSLv3 -TLSV1

그러나 그것은 작동하지 않았습니다. 그래서 .NET에서 "SSLCipherSuite" 섹션도 편집했습니다 /etc/apache2/mods-available/ssl.conf.

  • 에서:SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
  • 에게:SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5:!SSLv3:!SSLv2:!TLSv1

그리고 이제 그것은 나에게 효과적입니다.

그런데 Cipher Suites는 POODLE의 영향을 받지 않고 프로토콜만 영향을 받습니다. 하지만 대부분의 브라우저는 SSLv3 Cipher Suite를 비활성화해도 괜찮습니다.

메일서버에는 사용하지 마세요! 아니면 일부 장치에서 메일을 가져올 수 없는 문제에 직면하게 될 수도 있습니다.

답변3

우분투 10.04의 경우

모든 활성 가상 호스트에서 SSLv3을 비활성화하려면 다음 옵션이 필요합니다.

/etc/apache2/mods-available/ssl.conf :

SSLProtocol all -SSLv2 -SSLv3

답변4

SSLCipherSuite를 확인하세요.하지 않습니다!SSLv3을 포함합니다. 해당 맥락에서는 TLS1.0 및 TLS1.1을 의미하기도 합니다.

예를 들어, 구성이 다음과 같은 경우SSL프로토콜 모두, SSLCipherSuite가 !SSLv3으로 구성된 방식으로 인해 TLS1.2만 사용할 수 있습니다.

관련 정보