Esecuzione di WordPress su OpenBSD 6.5 con HTTPD OpenBSD

introduzione

Più vicino manterrai l'installazione di OpenBSD al valore predefinito e senza altrettanti pacchetti aggiunti, più sicura sarà. Mentre la configurazione più comune per WordPress è usare Apache e PHP, è sicuramente possibile (e preferibile) usare l'httpd incorporato di OpenBSD. Questo tutorial ti farà iniziare con una configurazione completa di un certificato Let's Encrypt, un web server e WordPress. Avrai bisogno dell'accesso root per poter fare questo.

Configurazione iniziale

Se non lo hai già fatto, dovrai creare un /etc/doas.conffile. Il doascomando è la sostituzione facile di OpenBSD per sudo.

su -
echo "permit nopass keepenv :wheel" > /etc/doas.conf

Dobbiamo dire a OpenBSD dove si trovano i pacchetti. Questo succede nel /etc/installurlfile.

doas su
echo "https://cdn.openbsd.org/pub/OpenBSD" > /etc/installurl
exit

Ora dobbiamo aggiungere PHP e alcuni moduli extra di cui WordPress avrà bisogno per gestire cose come immagini e crittografia. Quando richiesto, scegliere di installare il pacchetto più recente di PHP. Una cosa che devi fare è copiare i inifile del modulo dalla directory di esempio a quella principale. Questo deve essere fatto per abilitare i moduli PHP aggiuntivi.

doas pkg_add -r mariadb-client mariadb-server php php-curl php-mysqli pecl73-mcrypt pecl73-imagick 
doas su -
cp /etc/php-7.3.sample/* /etc/php-7.3/.

Ottieni crittografiamo i certificati

OpenBSD ha una fantastica applicazione chiamata acme-client. Questa piccola innovazione è ciò che genererà la chiave dell'account, la chiave privata e otterrà un certificato per te. Il client acme dipende dalla presenza di un server Web, quindi definiamo una rapida definizione predefinita del server.

Con il tuo editor preferito, crea /etc/httpd.conf. In seguito aggiungeremo le altre definizioni del server al file. Ciò che dobbiamo fare ora è preparare httpd per eseguire la risposta alla sfida per ottenere un certificato SSL gratuito e valido.

prefork 5
types { include "/usr/share/misc/mime.types" }

server "default" {
    listen on egress port 80
    root "/htdocs"
    directory index "index.html"

    location "/.well-known/acme-challenge/*" {
        request strip 2
        root "/acme"
    }
}

Utilizzando anche il tuo editor preferito, crea /etc/acme-client.conf.

authority letsencrypt {
    api url "https://acme-v01.api.letsencrypt.org/directory"
    account key "/etc/acme/letsencrypt-privkey.pem"
}

authority letsencrypt-staging {
    api url "https://acme-staging.api.letsencrypt.org/directory"
    account key "/etc/acme/letsencrypt-staging-privkey.pem"
}

domain example.com {
    alternative names { www.example.com }
    domain key "/etc/ssl/private/example.com.key"
    domain full chain certificate "/etc/ssl/example.com.fullchain.pem"
    sign with letsencrypt
}

Abilitare e avviare httpd, quindi ottenere un certificato emesso. Vedrai che è stato emesso un certificato.

doas rcctl enable httpd php73_fpm
doas rcctl start httpd
doas acme-client -ADFv example.com
doas rcctl stop httpd

Aggiunta delle definizioni del server

Aggiungi le seguenti righe di configurazione a /etc/httpd.conf, subito dopo le definizioni Let's Encrypt. Installa httpd per eseguire un reindirizzamento da http a https perché hai un certificato SSL gratuito e non vuoi mai rischiare di inviare un login e una password su un link non sicuro. Prendi nota della linea, location "/posts/*"Questo è il pezzo che rende i permalink di WordPress belli. Inoltre, questa configurazione contiene un modo per prevenire tentativi di forza bruta di accedere al sito di amministrazione di WordPress.

server "example.com" {
    listen on egress port 80
    alias "www.example.com"
    block return 302 "https://$SERVER_NAME$REQUEST_URI"
}

server "example.com" {
    listen on egress tls port 443
    alias "www.example.com"
    root "/htdocs/example.com
    directory index "index.php"

     location "/posts/*" {
        fastcgi {
             param SCRIPT_FILENAME "/htdocs/example.com/index.php"
             socket "/run/php-fpm.sock"
        }
     }

     location "/wp-json/*" {
        fastcgi {
           param SCRIPT_FILENAME "/htdocs/example.com/index.php"
            socket "/run/php-fpm.sock"
        }
     }

    location "/wp-login.php*" {
        authenticate "WordPress" with "/htdocs/htpasswd"
        fastcgi socket "/run/php-fpm.sock"
     }

    #Uncomment the following lines to disable xmlrpc. You increase security 
    #at the expense of being able to use to use 
    #the Android and iPhone WordPress App.
    #location "xmlrpc.php*" {
    #    block return 404
    #}        

    location "*.php*" {
        fastcgi socket "/run/php-fpm.sock"
     }

    tls {
        certificate "/etc/ssl/example.com.fullchain.pem"
        key "/etc/ssl/private/example.com.key"
    }
}

Crea il nome utente e la password per un ulteriore livello di sicurezza nel sito di amministrazione di WordPress. Scegli una buona password. Questo ti chiederà un nome utente e una password per eseguire lo wp-login.phpscript.

doas su
cd /var/www/htdocs
htpasswd htpasswd wp_user
chown www:www htpasswd
chmod 0640 htpasswd

Preparare e configurare MariaDB

MariaDB è un fork sostitutivo drop-in di MySQL. Dobbiamo fare alcuni lavori di configurazione iniziale e preparazione del database per WordPress.

Prima di poter utilizzare MariaDB in modo efficace, dobbiamo consentire al demone mysql di utilizzare più risorse rispetto al valore predefinito. Per fare ciò, apporta le seguenti modifiche /etc/login.confaggiungendo questa voce in fondo.

mysqld:\
    :openfiles-cur=1024:\
    :openfiles-max=2048:\
    :tc=daemon:

Abilita e avvia MariaDB. Questa procedura imposterà una password di root e, facoltativamente, eliminerà il database di test. È una buona idea seguire i suggerimenti nella fase di installazione sicura.

 doas mysql_install_db
 doas rcctl enable mysqld
 doas rcctl start mysqld
 doas mysql_secure_installation

Creare il database WordPress e l'utente del database.

mysql -u root -p 
CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user'@'localhost' IDENTIFIED BY '<password>';
FLUSH PRIVILEGES;
EXIT

Installa e configura WordPress

WordPress non ha una porta ufficiale OpenBSD da un po 'di tempo perché praticamente funziona subito. Scarica, estrai e sposta la cartella di installazione di WordPress.

cd /tmp
wget https://wordpress.org/latest.tar.gz
tar xvfz latest.tar.gz
doas mv wordpress /var/www/htdocs/example.com
chown -R www:www /var/www/htdocs/example.com

Dobbiamo copiare /etc/resolve.confe /etc/hostsal /var/www/etc. Questo in modo che WordPress possa raggiungere con successo il mercato. Ne avrai bisogno per scaricare plugin e temi tramite il sito di amministrazione di WordPress.

doas mkdir /var/www/etc
doas cp /etc/hosts /var/www/etc/.
doas cp /etc/resolv.conf /var/www/etc/.

Avviare httpd e php73_fpm.

doas rcctl start httpd php73_fpm

Passare all'URL utilizzato nella definizione del server. Vedrai la procedura guidata di installazione di WordPress. Per l'opzione Server database, sostituire localhost con 127.0.0.1.

Una volta installato WordPress, è il momento di impostare i permalink in modo che appaiano più SEO friendly. Dalla schermata di amministrazione di WordPress, vai a Settings -> Permalinks. Clicca Custom Structuree digita /posts/%postname%. Dopo aver apportato questa modifica, fai clic sul Save Changespulsante. Ora hai collegamenti molto più belli. Ad esempio, un permalink sarà simile al seguente:https://example.com/posts/example-blog-post



Leave a Comment

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane

ReactOS: è questo il futuro di Windows?

ReactOS: è questo il futuro di Windows?

ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.

Rimani connesso tramite lapp desktop WhatsApp 24*7

Rimani connesso tramite lapp desktop WhatsApp 24*7

Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per l'estrazione dei dati dai Big Data

Che cosè un file system di journaling e come funziona?

Che cosè un file system di journaling e come funziona?

Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true

Singolarità tecnologica: un lontano futuro della civiltà umana?

Singolarità tecnologica: un lontano futuro della civiltà umana?

Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Limpatto dellintelligenza artificiale nella sanità 2021

Limpatto dellintelligenza artificiale nella sanità 2021

L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.