Configura Apache amb certificat TLS/SSL autofirmat a Ubuntu 16.04

SSL i el seu successor TLS (Secure Sockets Layer / Transport Layer Security) afegeixen una capa de xifratge entre el client i el servidor. Sense aquesta tecnologia, les dades s'envien al servidor en text sense format, la qual cosa permet a tercers llegir tota la informació enviada i rebuda pel vostre servidor.

Aquest tutorial us ensenyarà com crear un certificat SSL/TLS i activar-lo a Apache 2.4 a Ubuntu 16.04. Suposo que Apache ja està configurat i funcionant. Si voleu aprendre a instal·lar una pila LAMP, consulteu aquest document Vultr .

Atenció

SSL/TLS certificates are normally generated by a trusted CA (certificate authority). By generating it yourself, you will be the signer, meaning the browser won't be able to verify whether the identity of the certificate should be trusted, and it will warn the user. Although it is possible to bypass this alert, public-facing sites should be using a certificate signed by a trusted CA. Let's encrypt is a CA that offers certificates for free. You can learn how to install their certificate in Apache and Ubuntu 16.04 here.

For internal applications, using a self-signed certificate might be valid, especially if you don't have a domain name.


Pas 1: generació del certificat

  1. Primer, creem un lloc per emmagatzemar el fitxer.

    mkdir ~/certificates
    cd ~/certificates
    
  2. Generar CSR i clau privada.

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

    Es demanarà informació per a la sol·licitud de certificat. Completa amb la informació adequada.

    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) []:
    

    El nom comú hauria de ser el vostre nom de domini o l'adreça IP del servidor. A més, ompliu el vostre correu electrònic.

    Common Name (e.g. server FQDN or YOUR name) []: 203.0.113.122
    Email Address []:webmaster@example.com
    
  3. Ara, moveu el certificat a la carpeta de configuració d'Apache.

    mkdir /etc/apache2/ssl
    mv ~/certificates/* /etc/apache2/ssl/.
    
  4. El certificat està llest! A continuació, prepararem Apache per treballar amb el certificat.

Pas 2: configuració del tallafoc

  1. Hem d'assegurar-nos que el port TCP 443 estigui obert. Aquest port s'utilitza a les connexions SSL en lloc del port 80. En aquest tutorial, utilitzarem UFW.

  2. Assegureu-vos que UFW estigui habilitat.

    sudo ufw enable
    
  3. Ara permeteu la configuració predefinida d'Apache per al tallafoc.

    sudo ufw allow 'Apache Full'
    
  4. Si escriviu " sudo ufw status", podeu veure una llista de les regles actuals. La vostra configuració hauria de semblar-se a això:

    To                         Action      From
    --                         ------      ----
    Apache Full                ALLOW       Anywhere
    OpenSSH                    ALLOW       Anywhere
    Apache Full (v6)           ALLOW       Anywhere (v6)
    OpenSSH (v6)               ALLOW       Anywhere (v6)
    
  5. També hauríeu de permetre OpenSSH aquí per a futures connexions.

    sudo ufw allow 'OpenSSH'
    

Pas 3: configuració de l'amfitrió virtual d'Apache

  1. Navegueu al directori predeterminat de configuració del lloc Apache.

    sudo nano /etc/apache2/sites-available/default-ssl.conf
    
  2. Aquest fitxer indica al servidor on ha de buscar el certificat SSL. Amb els comentaris eliminats, hauria de semblar a la configuració següent.

    <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. Edita aquesta línia:

    ServerAdmin email@example.net
    
  4. Afegeix això just a sota de la ServerAdminlínia:

    ServerName ADD_YOUR_IP_OR_DOMAIN_NAME_HERE
    
  5. Ara, editeu aquestes línies amb la ubicació del nostre certificat:

    SSLCertificateFile    /etc/apache2/ssl/apache.crt
    SSLCertificateKeyFile /etc/apache2/ssl/apache.key
    
  6. El nostre fitxer final hauria de semblar-se a això:

    <IfModule mod_ssl.c>
     <VirtualHost _default_:443>
      ServerAdmin email@example.net
      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. Desa i tanca el fitxer.

Pas 4: Habilitació del mòdul Apache SSL

  1. Habiliteu el mòdul SSL escrivint:

    sudo a2enmod ssl
    
  2. Ara activeu el lloc que acabem d'editar:

    sudo a2ensite default-ssl.conf
    
  3. Reinicieu Apache:

    sudo service apache2 restart
    
  4. Entrem al nou lloc web segur! Obriu-lo al vostre navegador (assegureu-vos d'escriure https:// ).

    https://YOUR_SERVER_IP
    

El vostre navegador us avisarà que el certificat no és vàlid, com esperàvem. Això passa perquè el certificat no està signat. Seguiu els passos que us ofereix el vostre navegador per accedir al vostre lloc.

Pas 5: redirigeix ​​tot el trànsit HTTP a HTTPS (opcional)

  1. Obriu el fitxer d'amfitrió virtual predeterminat d'Apache:

    nano /etc/apache2/sites-available/000-default.conf
    
  2. Afegeix aquesta línia dins de l' <VirtualHost *:80>etiqueta:

    Redirect / https://YOUR_SERVER_IP_OR_DOMAIN/
    
  3. Torneu a carregar la configuració d'Apache:

    sudo service apache2 reload
    

Tot el trànsit del lloc web ara es redirigirà automàticament a HTTPS.

Deixa un comentari

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

La Intel·ligència Artificial no està en el futur, és aquí mateix en el present. En aquest bloc Llegiu com les aplicacions d'Intel·ligència Artificial han afectat diversos sectors.

Atacs DDOS: una breu visió general

Atacs DDOS: una breu visió general

També ets víctima d'atacs DDOS i estàs confós sobre els mètodes de prevenció? Llegiu aquest article per resoldre les vostres consultes.

Us heu preguntat mai com guanyen diners els pirates informàtics?

Us heu preguntat mai com guanyen diners els pirates informàtics?

Potser haureu sentit que els pirates informàtics guanyen molts diners, però us heu preguntat mai com guanyen aquest tipus de diners? anem a discutir.

Invents revolucionaris de Google que us facilitaran la vida.

Invents revolucionaris de Google que us facilitaran la vida.

Vols veure els invents revolucionaris de Google i com aquests invents van canviar la vida de tots els éssers humans actuals? A continuació, llegiu al bloc per veure els invents de Google.

Divendres essencial: què va passar amb els cotxes impulsats per IA?

Divendres essencial: què va passar amb els cotxes impulsats per IA?

El concepte de cotxes autònoms per sortir a les carreteres amb l'ajuda de la intel·ligència artificial és un somni que tenim des de fa temps. Però malgrat les diverses promeses, no es veuen enlloc. Llegeix aquest blog per saber-ne més...

Singularitat tecnològica: un futur llunyà de la civilització humana?

Singularitat tecnològica: un futur llunyà de la civilització humana?

A mesura que la ciència evoluciona a un ritme ràpid, fent-se càrrec de molts dels nostres esforços, també augmenten els riscos de sotmetre'ns a una singularitat inexplicable. Llegeix, què pot significar per a nosaltres la singularitat.

Funcionalitats de les capes darquitectura de referència de Big Data

Funcionalitats de les capes darquitectura de referència de Big Data

Llegeix el blog per conèixer de la manera més senzilla les diferents capes de l'Arquitectura Big Data i les seves funcionalitats.

Evolució de lemmagatzematge de dades – Infografia

Evolució de lemmagatzematge de dades – Infografia

Els mètodes d'emmagatzematge de les dades que han anat evolucionant poden ser des del naixement de les dades. Aquest bloc tracta l'evolució de l'emmagatzematge de dades a partir d'una infografia.

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

En aquest món digital, els dispositius domèstics intel·ligents s'han convertit en una part crucial de les vides. A continuació, es mostren alguns avantatges sorprenents dels dispositius domèstics intel·ligents sobre com fan que la nostra vida valgui la pena i sigui més senzilla.

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Recentment, Apple va llançar macOS Catalina 10.15.4, una actualització de suplements per solucionar problemes, però sembla que l'actualització està causant més problemes que provoquen el bloqueig de les màquines Mac. Llegiu aquest article per obtenir més informació