Pogon WordPress na OpenBSD 6.5 z OpenBSDs HTTPD

Uvod

Bolj ko obdržite svojo namestitev OpenBSD privzeti in brez toliko dodanih paketov, bolj varna bo. Medtem ko je pogostejša nastavitev za WordPress uporaba Apache in PHP, je vsekakor mogoče (in bolje) uporabiti vgrajeni httpd OpenBSD. S to vadnico boste začeli s popolno nastavitvijo certifikata Let's Encrypt, spletnega strežnika in WordPress-a. Če želite to narediti, boste potrebovali root dostop.

Začetna konfiguracija

Če tega še niste storili, boste morali ustvariti /etc/doas.confdatoteko. doasUkaz je OpenBSD je preprosta zamenjava za sudo.

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

OpenBSD-ju moramo povedati, kje se nahajajo paketi. To se zgodi v /etc/installurldatoteki.

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

Zdaj moramo dodati PHP in nekaj dodatnih modulov, ki jih bo WordPress potreboval za obdelavo stvari, kot so slike in šifriranje. Ko ste pozvani, izberite namestitev najnovejšega paketa PHP. Ena stvar, ki jo morate storiti, je kopirati inidatoteke modula iz vzorčnega imenika v glavni. To je treba storiti, da omogočite dodatne module PHP.

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/.

Pridobite certifikate Let's Encrypt

OpenBSD ima odlično aplikacijo, imenovano acme-client. Ta majhna inovacija bo ustvarila vaš ključ računa, zasebni ključ in pridobila potrdilo za vas. Odjemalec acme je odvisen od tega, da ima nameščen spletni strežnik, zato definiramo hitro privzeto definicijo strežnika.

S svojim najljubšim urejevalnikom ustvarite /etc/httpd.conf. Druge definicije strežnika bomo v datoteko dodali pozneje. Zdaj moramo pripraviti httpd za izvedbo izziva-odgovora za pridobitev brezplačnega, veljavnega potrdila SSL.

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"
    }
}

S svojim najljubšim urejevalnikom ustvarite tudi /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
}

Omogočite in zaženite httpd, nato pridobite izdano potrdilo. Videli boste, da je bilo potrdilo izdano.

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

Dodajanje definicij strežnika

Dodajte naslednje konfiguracijske vrstice v /etc/httpd.conf, takoj za definicijami Let's Encrypt. Nastavite httpd za izvedbo preusmeritve s http na https, ker imate brezplačno potrdilo SSL in nikoli ne želite tvegati, da pošljete prijavo in geslo prek nezaščitene povezave. Upoštevajte vrstico, location "/posts/*"to je del, zaradi katerega so stalne povezave WordPress videti lepe. Ta konfiguracija vsebuje tudi način za preprečevanje poskusov brutalne sile za prijavo na skrbniško mesto 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"
    }
}

Ustvarite datoteko z uporabniškim imenom in geslom za dodatno raven varnosti za skrbniško stran WordPress. Izberite dobro geslo. To vas bo pozvalo, da vnesete uporabniško ime in geslo za zagon wp-login.phpskripta.

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

Pripravite in konfigurirajte MariaDB

MariaDB je nadomestna vilica MySQL. Opraviti moramo nekaj začetne konfiguracije in priprave baze podatkov za WordPress.

Preden lahko učinkovito uporabljamo MariaDB, moramo demonu mysql dovoliti, da uporablja več virov kot je privzeto. Če želite to narediti, naredite naslednje spremembe tako, da /etc/login.confdodate ta vnos na dnu.

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

Omogočite in zaženite MariaDB. Ta postopek bo nastavil korensko geslo in po želji izpustil testno bazo podatkov. Dobro je, da sledite predlogom v fazi varne namestitve.

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

Ustvarite zbirko podatkov WordPress in uporabnika baze podatkov.

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

Namestite in konfigurirajte WordPress

WordPress že kar nekaj časa nima uradnih vrat OpenBSD, ker precej deluje takoj iz škatle. Prenesite, ekstrahirajte in premaknite namestitveno mapo 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

Imamo kopirati /etc/resolve.confin /etc/hostsda /var/www/etc. To je zato, da lahko WordPress uspešno doseže trg. To boste potrebovali za prenos vtičnikov in tem prek skrbniškega mesta WordPress.

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

Zaženite httpd in php73_fpm.

doas rcctl start httpd php73_fpm

Prebrskajte do URL-ja, ki ste ga uporabili v definiciji strežnika. Videli boste čarovnika za namestitev WordPress-a. Za možnost Strežnik baze podatkov zamenjajte localhost z 127.0.0.1.

Ko je WordPress nameščen, je čas, da nastavite stalne povezave, da bodo videti bolj prijazne do SEO. Na skrbniškem zaslonu WordPress pojdite na Settings -> Permalinks. Kliknite Custom Structurein vnesite /posts/%postname%. Ko naredite to spremembo, kliknite Save Changesgumb. Zdaj imate veliko lepše povezave. Na primer, stalna povezava bo videti tako:https://example.com/posts/example-blog-post

Pusti komentar

Vzpon strojev: aplikacije AI v resničnem svetu

Vzpon strojev: aplikacije AI v resničnem svetu

Umetna inteligenca ni v prihodnosti, tukaj je prav v sedanjosti. V tem blogu preberite, kako so aplikacije umetne inteligence vplivale na različne sektorje.

DDOS napadi: kratek pregled

DDOS napadi: kratek pregled

Ste tudi vi žrtev DDOS napadov in ste zmedeni glede načinov preprečevanja? Preberite ta članek, če želite rešiti svoja vprašanja.

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Morda ste že slišali, da hekerji zaslužijo veliko denarja, a ste se kdaj vprašali, kako zaslužijo takšen denar? razpravljajmo.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Ali želite videti revolucionarne izume Googla in kako so ti izumi danes spremenili življenje vsakega človeka? Nato preberite v blogu in si oglejte Googlove izume.

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Koncept samovozečih avtomobilov, ki zapeljejo na ceste s pomočjo umetne inteligence, so sanje, ki jih imamo že nekaj časa. A kljub številnim obljubam jih ni nikjer. Preberite ta blog, če želite izvedeti več…

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Ker se znanost hitro razvija in prevzame veliko naših prizadevanj, se povečuje tudi tveganje, da se podvržemo nerazložljivi singularnosti. Preberite, kaj bi za nas lahko pomenila singularnost.

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Preberite blog, če želite na najpreprostejši način spoznati različne plasti v arhitekturi velikih podatkov in njihove funkcionalnosti.

Razvoj shranjevanja podatkov – Infografika

Razvoj shranjevanja podatkov – Infografika

Metode shranjevanja podatkov so se lahko razvijale od rojstva podatkov. Ta blog pokriva razvoj shranjevanja podatkov na podlagi infografike.

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

V tem digitalno vodenem svetu so pametne naprave za dom postale ključni del življenja. Tukaj je nekaj neverjetnih prednosti pametnih naprav za dom o tem, kako naredijo naše življenje vredno življenja in poenostavijo.

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Pred kratkim je Apple izdal macOS Catalina 10.15.4 dopolnilno posodobitev za odpravo težav, vendar se zdi, da posodobitev povzroča več težav, ki vodijo do opečenja računalnikov Mac. Preberite ta članek, če želite izvedeti več