Apache'de SSLv3 nasıl devre dışı bırakılır?


76

Herkes bugün POODLE güvenlik açığı hakkında konuşuyor gibi görünüyor . Ve herkes aşağıdaki yapılandırma direktifini kullanarak Apache'de SSLv3'ün devre dışı bırakılmasını tavsiye eder:

SSLProtocol All -SSLv2 -SSLv3

varsayılan yerine

SSLProtocol All -SSLv2

Bunu yaptım ve neşe yok - çeşitli araçlarla tekrar tekrar test ettikten sonra ( burada hızlı bir tane var ), SSLv3'ün sunucum tarafından mutlu bir şekilde kabul edildiğini buldum.

Evet, Apache'yi yeniden başlattım. Evet, greptüm yapılandırma dosyalarında özyinelemeyi yaptım ve hiçbir yerde geçersiz kılma hakkım yok. Ve hayır, Apache'nin eski bir versiyonunu kullanmıyorum:

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

Peki ne verir? Biri Apache'deki SSLv3'ü gerçekten nasıl devre dışı bırakıyor?



5
Soruda açıklandığı gibi, o bölümde belirtilen tüm adımları yerine getirdim ve SSL3 hala mevcut. Size, bu bölümün hangi kısmının SSL3'ü devre dışı bırakmadığını söyleyemedim, ama mesele, tamamıyla değil. Bunu söyledikten sonra, şu anda moderatör şapkanızın olduğunu anlıyorum, bu yüzden lütfen soruyu yanıtlayın - bu bir moron olduğumu ve temel bir hata yaptığımı kanıtlayabilir, ancak moderatörün POV'sundan bu meşru bir sorudur.

Yanıtlar:


80

Ben de aynı problemi yaşadım ... SSLProtocol all -SSLv2 -SSLv3httpd.conf içindeki her VirtualHost stanza'ya dahil etmek zorundasınız

VirtualHost stanzaları genellikle httpd.conf dosyasının sonuna doğrudır. Yani örneğin:

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

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

Ayrıca, ssl.conf veya httpd-ssl.conf veya benzerini de kontrol edin, çünkü bunlar kesinlikle httpd.conf’da ayarlanmamış olabilir.


3
Kayıt için, sysadmin / web yöneticinize bağlı olarak, VirtualHosts conf.d'deki kendi adanmış dosyalarında da yaşayabilir (bu şekilde evi saklamaktan hoşlanıyorum ve öğrendiğim bir şey, icat ettiğim bir şey değil, bu yüzden beklerim) Ben tek değilim.
Bogdan Stăncescu 17:14

3
SSLProtocolVirtualHost stanzalarının dışında yapılandırılmış en az Apache 2.4+ sürümünün tüm sanal ana bilgisayarlara uygulanacağını unutmayın.
nurikabe,

2
Sunucunuzda SSLv3'ün
amphetamachine

1
TLSv1'i devre dışı bırakırken bu cevap benim için çok yardımcı oldu. Belirli bir protokol tamamen devre dışı olup olmadığını kontrol etmek için, aşağıdaki yararlı buldum: nmap -sV --script ssl-enum-ciphers -p 443 <hostname>.
Luca Citi

SSLProtocolHer VirtualHost'ı düzenlemek zorunda kalmadan , sistem genelinde kurulum yapmanın bir yolu var mı ?
Dunatotatos

10

Ubuntu 14.04'te de aynı problem vardı. Bunu okuduktan sonra, "SSLProtocol" bölümünü düzenledim /etc/apache2/mods-available/ssl.conf.

  • dan: SSLProtocol all
  • için: SSLProtocol all -SSLv2 -SSLv3 -TLSV1

Ama işe yaramadı. Bu yüzden aşağıdaki bölümü de "SSLCipherSuite" içinde düzenledim /etc/apache2/mods-available/ssl.conf.

  • dan: SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
  • için: SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5:!SSLv3:!SSLv2:!TLSv1

Ve şimdi şimdi benim için çalışıyor.

Bu arada, Cipher Suites POODLE'den etkilenmez, yalnızca protokol - ancak çoğu tarayıcı devre dışı bırakılmış bir SSLv3 Cipher Suite ile tamamdır.

Bunu bir Posta sunucusu için kullanmayın! Ya da (belki) e-postalarınızı bazı cihazlara alamama sorunuyla karşı karşıya kalacaksınız.


Teşekkür ederim. Bu cevap WHM / cPanel kurulumunda çalıştı. İnternette önerilen diğer yöntemleri denedim ve çalışan tek şey senindi.
Voitek Zylinski

1
Bu işe yarar, ancak varsayılan olarak SSLv3 ve TLS1.0 kullandığından IE 10 ile erişimi devre dışı bırakır.
Erebus

4

Ubuntu 10.04 için

Tüm aktif vhost'larda SSLv3'ü devre dışı bırakmak için

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

SSLProtocol all -SSLv2 -SSLv3

2

Bu sabah da benzer bir sorun yaşadım ve SSLv3'ü etkinleştiren başka bir sanal sunucu buldum, böylece sunucunun tamamı SSLv3 bağlantılarına yanıt veriyor.

Bu nedenle, hiçbir ana makinenizin SSLv3 etkin olmadığından emin olun.


1

SSLCipherSuite emin olun gelmez ! SSLv3 içerirler. Bu bağlamda, aynı zamanda TLS1.0 ve TLS1.1 anlamına gelir.

Örneğin, eğer yapılandırmanız SSLProtocol All ise , SSLCipherSuite'ın! SSLv3 ile nasıl yapılandırıldığına bağlı olarak sadece TLS1.2 mevcut olacaktır.


0

CentOs kullanıcıları SSL konfigürasyon dosyanızı SSH ile düzenlemekte sorun yaşıyorsa, SSLv3'ü WHM ile devre dışı bırakmayı deneyin :

Adım 1: Dahil Editöre Git

- WHM'ye giriş yapın - "Apache Konfigürasyonu" ekranını açın ve "Editör Ekle" yi tıklayın

Adım 2: Eklentileri Düzenleyin

-Bir "Ana Dahil Et" altından "Tüm Sürümler" i seçin. Bu şekilde, Apache sürümünüzü değiştirirseniz sunucunuz korunacaktır. Seçildiğinde, aşağıdakileri metin kutusuna girin:

CentOS / RHEL 6.x'te:

SSLHonorCipherOrder
SSLProtocol'da -Tüm + TLSv1 + TLSv1.1 + TLSv1.2

CentOS / RHEL 5.x'te:

SSLHonorCipherOrder
SSLProtocol'da -Tüm + TLSv1

… Ve ardından Güncelle öğesini tıklayın .

Güncellemeyi tıkladığınızda, Apache'yi yeniden başlatmanız istenir; şu anda bunu yapın.

orijinal kaynak: https://www.liquidweb.com/kb/how-to-disable-sslv3-and-protect-your-whmcpanel-server-from-poodle/


1
Bu cevap, CentOS kullanan sunucular için değil, WHM / cPanel üzerinden kontrol edilen sunucularla ilgilidir.
Bogdan Stăncescu

0

Kullanmakta olduğunuz yöntem Apache ve Openssl'nin yeni versiyonları içindir. Bunların yeni sürümünün sisteminize yüklenmemiş olması mevcut kurulu sürümü doğrulamak olabilir.

Yana SSLv2ve SSLv3her ikisi de bazı saldırıların savunmasız, yüzden sadece TLS kullanmak daha iyi olacaktır. Böylece, apache conf dosyanızı aşağıdaki gibi değiştirin,

SSLProtocol TLSv1 TLSv1.1 TLSv1.2

veya

SSLProtocol TLSv1

Evet, bunu da denedim - neşe yok. :-(

"apachectl configtest" komutunun çıktısını yapıştırabilir misiniz?
P4cK3tHuNt3R

0

Benzer bir sorun yaşadım ve uygun tüm apache ayarlarının doğru olduğunu kontrol ettim.

Ancak kaçırdığım şey apache önünde ters vekil olarak nginx olduğumdu. Ayrıca Plesk'i kullanıyorum ve bu onların POODLE düzeltmeleri kılavuzundan :

Nginx kullanıyorsanız, yapılandırmanıza aşağıdaki SSL direktiflerinin arasına aşağıdaki satırı ekleyin /etc/nginx/nginx.conf:

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.