Avamar: Apache Web Sunucusu SHA-1 imzalı SSL sertifikası nasıl değiştirilir
Summary: Bu makalede, Apache Web Sunucusu SHA-1 imzalı SSL sertifikasının nasıl değiştirileceği açıklanmaktadır.
Symptoms
Bir web tarayıcısı kullanarak NetWorker Virtual Edition (NVE), Avamar Server veya Avamar Extended Retention (AER) düğümüne bağlanmaya çalışırken tarayıcı bir ağ bağlantısı hatası bildiriyor ve NVE, Avamar Server veya AER düğümündeki Apache Web Server normal şekilde çalışıyor olsa bile bağlanmayı reddediyor.
Cause
SHA-1 kullanılarak imzalanan SSL sertifikaları desteği, 01 Ocak 2017 tarihinden itibaren geçerli olmak üzere büyük web tarayıcısı satıcıları tarafından sonlandırılmıştır. Bazı varsayılan NVE, Avamar ve AER sertifikaları SHA-1 kullanılarak imzalanır.
Resolution
-
Avamar Utility Node'da veya tek düğümlü sunucuda yönetici kullanıcı olarak oturum açın, ardından root'a geçmek için aşağıdaki komutu çalıştırın:
su -
Not: Takip eden - önemlidir! -
Dizinleri Apache yapılandırma dizinine değiştirin:
cd /etc/apache2
-
Geçerli sertifikanın SHA-1 kullanılarak imzalandığını doğrulayın:
openssl x509 -in ssl.crt/server.crt -text -noout | grep "Signature"
Örnek çıktı:
root@avamar:/etc/apache2/#: openssl x509 -in ssl.crt/server.crt -text -noout | grep "Signature" Signature Algorithm: sha1WithRSAEncryption Signature Algorithm: sha1WithRSAEncryption
Not: İmza algoritması SHA-1 olarak bildirilmiyorsa bu prosedüre devam etmeyin -
Mevcut sertifikayı yedekleyin:
cp ssl.crt/server.crt ssl.crt/server.crt.bak.`date -I`
-
Mevcut sertifikadan bir "sertifika imzalama isteği" oluşturun:
openssl x509 -in ssl.crt/server.crt -signkey ssl.key/server.key -x509toreq -out ssl.csr/server.csr
Örnek çıktı:
root@avamar:/etc/apache2/#: openssl x509 -in ssl.crt/server.crt -signkey ssl.key/server.key -x509toreq -out ssl.csr/server.csr Getting request Private Key Generating certificate request
-
Sertifikanın kendinden imzalı mı yoksa bir Sertifika Yetkilisi (CA imzalı) tarafından mı imzalandığını kontrol edin:
[ `openssl x509 -in ssl.crt/server.crt -text -noout | grep "Subject: \|Issuer: " | sed 's/.*:\(.*\)/\1/' | uniq | wc -l` -eq "1" ] && echo "Self-signed" || echo "CA Signed"
Not: Bu komut tek bir satıra girilmelidir. Tüm noktalama işaretleri önemlidir. Kopyalayıp yapıştırmanız önerilir.CA imzalı sertifika için örnek çıktı:
root@avamar:/etc/apache2/#: [ `openssl x509 -in ssl.crt/server.crt -text -noout | grep "Subject: \|Issuer: " | sed 's/.*:\(.*\)/\1/' | uniq | wc -l` -eq "1" ] && echo "Self-signed" || echo "CA Signed" CA Signed
Otomatik olarak imzalanan sertifika için örnek çıktı:
root@avamar:/etc/apache2/#: [ `openssl x509 -in ssl.crt/server.crt -text -noout | grep "Subject: \|Issuer: " | sed 's/.*:\(.*\)/\1/' | uniq | wc -l` -eq "1" ] && echo "Self-signed" || echo "CA Signed" Self-signed
-
Yedek sertifikayı oluşturun ve yükleyin:
- CA İmzalı sertifikalar için:
- 5. adımda oluşturulan sertifika imzalama isteğinin bir kopyasını Sertifika Yetkilisine sağlayın ve güçlü bir imza algoritması kullanarak yeni bir sertifika oluşturmasını isteyin. Sertifika imzalama isteği "/etc/apache2/ssl.csr/server.csr" konumunda bulunur
- CA tarafından sağlanan imzalı sertifikayı Avamar sunucusundaki "/etc/apache2/ssl.crt/server.crt" konumuna yerleştirin
- 7b adımını atlayın ve 8. adımdaki prosedüre devam edin
Not: CA, yeni sertifikayla birlikte bir veya daha fazla güncelleştirilmiş sertifika zincir dosyası sağladıysa bunların nasıl yükleneceğiyle ilgili yönergeler için Ek A'ya bakın. - Otomatik olarak imzalanan sertifikalar için:
- Yedek sertifika oluşturma ve yükleme
openssl x509 -sha256 -req -signkey ssl.key/server.key -in ssl.csr/server.csr -out ssl.crt/server.crt -days 1825
Örnek çıktı:root@avamar:/etc/apache2/#: openssl x509 -sha256 -req -signkey ssl.key/server.key -in ssl.csr/server.csr -out ssl.crt/server.crt -days 1825 Signature ok subject=/C=US/ST=CA/L=Irvine/O=Dell EMC/OU=Avamar/CN=avamar.asl.lab.emc.com
- Yedek sertifika oluşturma ve yükleme
- CA İmzalı sertifikalar için:
-
Yeni sertifikanın SHA-256 veya başka bir güçlü imza algoritması kullanılarak imzalandığını doğrulayın:
openssl x509 -in ssl.crt/server.crt -text -noout | grep "Signature"
Örnek çıktı:
root@avamar:/etc/apache2/#: openssl x509 -in ssl.crt/server.crt -text -noout | grep "Signature" Signature Algorithm: sha256WithRSAEncryption Signature Algorithm: sha256WithRSAEncryption
-
Apache web sunucusunu yeniden başlatın:
website restart
Örnek çıktı:
root@avamar:/etc/apache2/#: website restart ===Shutting down website Shutting down httpd2 (waiting for all children to terminate) done ===Starting website Starting httpd2 (prefork)
-
Prosedür tamamlandı
Additional Information
Ek A - Güncellenmiş bir veya daha fazla sertifika zincir dosyasını yükleme
-
Mevcut sertifika zincirinin bir kopyasını oluşturma
cp /etc/apache2/ssl.crt/ca.crt /etc/apache2/ssl.crt/ca.crt.bak.`date -I`
- Bir veya daha fazla güncelleştirilmiş sertifika zinciri dosyası yükleyin
- CA ayrı ara sertifikalar sağlamışsa bunları tek bir zincir dosyasında birleştirin:
cat cert1 cert2 cert3 cert4 > /etc/apache2/ssl.crt/ca.crt
- Aksi takdirde, CA tarafından sağlanan tek zincirlik dosyayı Avamar sunucusuna "/etc/apache2/ssl.crt/ca.crt" konumuna yerleştirin
- CA ayrı ara sertifikalar sağlamışsa bunları tek bir zincir dosyasında birleştirin: