Ubuntu 16.04te Kendinden İmzalı TLS / SSL Sertifikası ile Apacheyi Yapılandırma

SSL ve halefi TLS (Güvenli Yuva Katmanı / Aktarım Katmanı Güvenliği) istemci ve sunucu arasında bir şifreleme katmanı ekler. Bu teknoloji olmadan, veriler sunucuya düz metin olarak gönderilir ve üçüncü tarafların sunucunuz tarafından gönderilen ve alınan tüm bilgileri okumasına izin verir.

Bu eğitimde nasıl SSL / TLS sertifikası oluşturulacağı ve Ubuntu 16.04'te Apache 2.4'te nasıl etkinleştirileceği öğretilecektir. Sanırım Apache zaten kurulmuş ve çalışıyor. Bir LAMP yığınının nasıl kurulacağını öğrenmek istiyorsanız, bu Vultr belgesine bakın .

Dikkat

SSL / TLS sertifikaları normalde güvenilir bir CA (sertifika yetkilisi) tarafından oluşturulur. Bunu kendiniz oluşturarak, imzalayan siz olacaksınız, yani tarayıcı sertifikanın kimliğine güvenilip güvenilmeyeceğini doğrulayamayacak ve kullanıcıyı uyaracaktır. Bu uyarıyı atlamak mümkün olsa da, herkese açık siteler güvenilir bir CA tarafından imzalanmış bir sertifika kullanıyor olmalıdır. Şifreleyelim , ücretsiz sertifikalar sunan bir CA'dır. Sen Apache ve Ubuntu 16.04 onların sertifika yüklemek öğrenebilirsiniz burada .

Dahili uygulamalar için, özellikle alan adınız yoksa, kendinden imzalı bir sertifika kullanmak geçerli olabilir.


Adım 1: Sertifika oluşturma

  1. Önce dosyayı saklamak için bir yer oluşturalım.

    mkdir ~/certificates
    cd ~/certificates
    
  2. CSR ve özel anahtar oluşturun.

    openssl req -x509 -newkey rsa:4096 -keyout apache.key -out apache.crt -days 365 -nodes
    

    Sertifika talebi için bilgi isteyecektir. Uygun bilgilerle tamamlayın.

    Country Name (2 letter code) [AU]: US
    State or Province Name (full name) [Some-State]: FL
    Locality Name (eg, city) []: Miami
    Organization Name (eg, company) [My Company]: My Company
    Organizational Unit Name (eg, section) []:
    

    Ortak ad, alan adınız veya sunucunun IP adresi olmalıdır. Ayrıca, e-postanızı doldurun.

    Common Name (e.g. server FQDN or YOUR name) []: 203.0.113.122
    Email Address []:[email protected]
    
  3. Şimdi sertifikayı Apache yapılandırma klasörüne taşıyın.

    mkdir /etc/apache2/ssl
    mv ~/certificates/* /etc/apache2/ssl/.
    
  4. Sertifika hazır! Ardından, Apache'yi sertifika ile çalışmaya hazırlayacağız.

2. Adım: Güvenlik duvarı yapılandırması

  1. 443 numaralı TCP bağlantı noktasının açık olduğundan emin olmalıyız. Bu bağlantı noktası bağlantı noktası 80 yerine SSL bağlantılarında kullanılır. Bu öğreticide UFW kullanacağız.

  2. UFW'nin etkin olduğundan emin olun.

    sudo ufw enable
    
  3. Şimdi güvenlik duvarı için önceden tanımlanmış Apache ayarlarına izin verin.

    sudo ufw allow 'Apache Full'
    
  4. " sudo ufw status" Yazarak , geçerli kuralların bir listesini görebilirsiniz. Yapılandırmanız buna benzemelidir:

    To                         Action      From
    --                         ------      ----
    Apache Full                ALLOW       Anywhere
    OpenSSH                    ALLOW       Anywhere
    Apache Full (v6)           ALLOW       Anywhere (v6)
    OpenSSH (v6)               ALLOW       Anywhere (v6)
    
  5. Ayrıca gelecekteki bağlantılar için OpenSSH'ye izin vermelisiniz.

    sudo ufw allow 'OpenSSH'
    

3. Adım: Apache sanal ana bilgisayar yapılandırması

  1. Varsayılan Apache sitesi yapılandırma dizinine gidin.

    sudo nano /etc/apache2/sites-available/default-ssl.conf
    
  2. Bu dosya sunucuya SSL sertifikasını nerede arayacağını söyler. Yorumlar kaldırıldığında, aşağıdaki yapılandırma gibi görünmelidir.

    <IfModule mod_ssl.c>
      <VirtualHost _default_:443>
       ServerAdmin webmaster@localhost
    
       DocumentRoot /var/www/html
    
       ErrorLog ${APACHE_LOG_DIR}/error.log
       CustomLog ${APACHE_LOG_DIR}/access.log combined
    
       SSLEngine on
    
       SSLCertificateFile    /etc/ssl/certs/ssl-cert-snakeoil.pem
       SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
    
       <FilesMatch "\.(cgi|shtml|phtml|php)$">
        SSLOptions +StdEnvVars
       </FilesMatch>
       <Directory /usr/lib/cgi-bin>
        SSLOptions +StdEnvVars
       </Directory>
    
     </VirtualHost>
    </IfModule>
    
  3. Bu satırı düzenle:

    ServerAdmin [email protected]
    
  4. Bunu hemen ServerAdminsatırın altına ekleyin :

    ServerName ADD_YOUR_IP_OR_DOMAIN_NAME_HERE
    
  5. Şimdi, bu satırları sertifika konumumuzla düzenleyin:

    SSLCertificateFile    /etc/apache2/ssl/apache.crt
    SSLCertificateKeyFile /etc/apache2/ssl/apache.key
    
  6. Son dosyamız buna benzemelidir:

    <IfModule mod_ssl.c>
     <VirtualHost _default_:443>
      ServerAdmin [email protected]
      ServerName 203.0.113.122
    
      DocumentRoot /var/www/html
    
      ErrorLog ${APACHE_LOG_DIR}/error.log
      CustomLog ${APACHE_LOG_DIR}/access.log combined
    
      SSLEngine on
    
      SSLCertificateFile    /etc/apache2/ssl/apache.crt
      SSLCertificateKeyFile /etc/apache2/ssl/apache.key
    
      <FilesMatch "\.(cgi|shtml|phtml|php)$">
       SSLOptions +StdEnvVars
      </FilesMatch>
      <Directory /usr/lib/cgi-bin>
       SSLOptions +StdEnvVars
      </Directory>
    
     </VirtualHost>
    </IfModule>
    
  7. Dosyayı kaydedip kapatın.

4. Adım: Apache SSL modülünü etkinleştirme

  1. SSL modülünü aşağıdakileri yazarak etkinleştirin:

    sudo a2enmod ssl
    
  2. Şimdi düzenlediğimiz siteyi etkinleştirin:

    sudo a2ensite default-ssl.conf
    
  3. Apache'yi yeniden başlat:

    sudo service apache2 restart
    
  4. Yeni güvenli web sitesine erişelim! Tarayıcınızda açın ( https: // yazdığınızdan emin olun ).

    https://YOUR_SERVER_IP
    

Tarayıcınız sizi beklediğimiz gibi sertifikanın geçersiz olduğu konusunda uyaracaktır. Bu sertifika imzalanmadığı için olur. Sitenize devam etmek için tarayıcınız tarafından sunulan adımları izleyin.

5. Adım: Tüm HTTP trafiğini HTTPS'ye yönlendirin (İsteğe bağlı)

  1. Apache varsayılan sanal ana bilgisayar dosyasını açın:

    nano /etc/apache2/sites-available/000-default.conf
    
  2. Bu satırı <VirtualHost *:80>etiketin içine ekleyin :

    Redirect / https://YOUR_SERVER_IP_OR_DOMAIN/
    
  3. Apache yapılandırmasını yeniden yükle:

    sudo service apache2 reload
    

Artık tüm web sitesi trafiği otomatik olarak HTTPS'ye yönlendirilecektir.



Leave a Comment

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun