Salta el contingut

0614 - Bloc 1: A5: Directiva Require, autenticació i instal·lació MariaDB client i servidor

Exercici 1: Bloc 1 – php.ini: configuracions bàsiques i ubicació a Apache

  1. Localització del fitxer
    • Executa un script phpinfo(); i respon:
    • On es troba el fitxer php.ini carregat pel teu servidor Apache?
    • Quin altre fitxer addicional de configuració s’està carregant (si n’hi ha)?
  2. Canvis de configuració
    • Edita el teu php.ini per fer els canvis següents:
    • Augmenta upload_max_filesize a 10M
    • Activa display_errors
    • Defineix el timezone a Europe/Madrid
    • Comprova els canvis amb phpinfo().
  3. Activació d’extensions
    • Activa l’extensió PDO i comprova que funciona amb un script PHP que faci una connexió simple a MariaDB.
    • Que ha de tenir el fitxer php.ini per activar l'extensió PDO? ja la tenim activada per defecte o l'hem d'activar nosaltres? Com ho fem?
  4. Preguntes conceptuals
    • Quina quines formes tenim de controlar la configuració de php per al mod-php d'Apache? i si ho fem servir PHP-FPM?
    • Què passa si canviem un valor al php.ini però Apache no es reinicia?

Bloc 2 – PHP-FPM (FastCGI Process Manager) Exercici 2:

  1. Conceptes bàsics
    • Explica breument la diferència entre:
    • PHP com a mòdul d’Apache (mod_php) i PHP-FPM (via FastCGI)
    • Avantatges de PHP-FPM en entorns de producció.
  2. Instal·lació i configuració
    • Instal·la php-fpm al teu sistema (ex. sudo apt install php-fpm)
    • Localitza el fitxer de configuració principal (/etc/php/*/fpm/php-fpm.conf) i identifica:
    • listen
    • pm
    • pm.max_children
  3. Integració amb Apache
    • Activa el mòdul proxy_fcgi i modifica el VirtualHost per incloure:
      <FilesMatch \.php$>
          SetHandler "proxy:unix:/run/php/php8.2-fpm.sock|fcgi://localhost/"
      </FilesMatch>
      
    • Comprova amb phpinfo() que s’està utilitzant PHP-FPM.
  4. Pràctica avançada
    • Crea dos pools de FPM (ex. web1 i web2) amb diferents usuaris i carpetes de treball.
    • Mostra com els diferencies amb phpinfo().
  5. Pràctica opcional
    • Configura PHP-FPM per utilitzar diferents versions de PHP (ex. PHP 7.4 i PHP 8.3) en diferents VirtualHosts.

Bloc 3 – Activació d’HTTPS amb CA i clau autosignada Exercici 3:

  1. Creació del certificat
    • Creació d'una CA pròpia (Montilivi)
    • Crea una clau privada per a la CA
    • crea un certificat per a la CA
    • Genera una clau privada i un certificat que signarà la CA (Montilivi) per a la web1creanda anteriorment
    • Crea una clau privada per al servidor
    • Crea una sol·licitud de signatura de certificat (CSR)
    • Signa el certificat amb la CA creada anteriorment
    • Verifica el certificat
    • Mou els fitxers generats a les seues ubicacions corresponents:
    • /etc/ssl/certs/web1.crt
    • /etc/ssl/private/web1.key
  2. Configuració a Apache
    • Crea i activa el mòdul SSL (web1-ssl.conf)
    • Activa el VirtualHost HTTPS i comprova al navegador que funciona.
  3. Prova d’accés segur
    • Afegeix un fitxer php a la web que mostri phpinfo().
    • Afegeix el certificat de la CA al magatzem de certificats de confiança del teu navegador.
    • Accedeix a la pàgina web mitjançant HTTPS i comprova que el navegador reconeix el certificat com a vàlid.