Menjalankan WordPress di OpenBSD 6.5 dengan OpenBSDs HTTPD

pengantar

Semakin dekat Anda menjaga OpenBSD Anda menginstal ke default dan tanpa banyak paket tambahan, semakin aman itu. Sementara pengaturan yang lebih umum untuk WordPress adalah menggunakan Apache dan PHP, sudah pasti dimungkinkan (dan lebih disukai) untuk menggunakan httpd bawaan OpenBSD. Tutorial ini akan membantu Anda memulai dengan pengaturan lengkap sertifikat Let's Encrypt, server web, dan WordPress. Anda akan memerlukan akses root untuk dapat melakukan ini.

Konfigurasi Awal

Jika Anda belum melakukannya, Anda harus membuat /etc/doas.conffile. The doasperintah penggantian mudah OpenBSD untuk sudo.

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

Kami harus memberi tahu OpenBSD di mana paket berada. Ini terjadi dalam /etc/installurlfile.

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

Sekarang kita harus menambahkan PHP dan beberapa modul tambahan yang dibutuhkan WordPress untuk menangani hal-hal seperti gambar dan enkripsi. Saat diminta, pilih untuk menginstal paket PHP terbaru. Satu hal yang harus Anda lakukan adalah menyalin inifile-file modul dari direktori sampel ke yang utama. Ini harus dilakukan untuk mengaktifkan modul PHP tambahan.

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

Dapatkan Mari Mengenkripsi Sertifikat

OpenBSD memiliki aplikasi hebat bernama acme-client. Inovasi kecil ini adalah yang akan menghasilkan kunci akun Anda, kunci pribadi, dan mendapatkan sertifikat untuk Anda. Klien acme tergantung pada memiliki server web di tempat sehingga kami mendefinisikan definisi server default cepat.

Dengan editor favorit Anda, buat /etc/httpd.conf. Kami akan menambahkan definisi server lain ke file nanti. Yang perlu kita lakukan sekarang adalah menyiapkan httpd untuk melakukan tantangan-respons untuk mendapatkan sertifikat SSL yang valid dan gratis.

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

Juga menggunakan editor favorit Anda, buat /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
}

Aktifkan dan mulai httpd, lalu dapatkan sertifikat. Anda akan melihat bahwa sertifikat telah dikeluarkan.

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

Menambahkan Definisi Server

Tambahkan baris konfigurasi berikut ke /etc/httpd.conf, tepat setelah definisi Mari Enkripsi. Siapkan httpd untuk melakukan pengalihan dari http ke https karena Anda memiliki sertifikat SSL gratis dan Anda tidak ingin mengambil risiko mengirimkan login dan kata sandi melalui tautan yang tidak aman. Perhatikan garis, location "/posts/*"Ini adalah bagian yang membuat permalink WordPress terlihat cantik. Konfigurasi ini juga berisi cara untuk membantu mencegah upaya brute-force untuk masuk ke situs admin 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"
    }
}

Buat file nama pengguna dan kata sandi untuk tingkat keamanan tambahan ke situs admin WordPress. Pilih kata sandi yang baik. Ini akan meminta Anda untuk nama pengguna dan kata sandi untuk menjalankan wp-login.phpskrip.

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

Mempersiapkan dan Mengkonfigurasi MariaDB

MariaDB adalah pengganti garpu MySQL. Kita perlu melakukan beberapa konfigurasi awal dan pekerjaan persiapan basis data untuk WordPress.

Sebelum kita dapat menggunakan MariaDB secara efektif, kita perlu mengizinkan daemon mysql untuk menggunakan lebih banyak sumber daya daripada default. Untuk melakukan ini, buat perubahan berikut /etc/login.confdengan menambahkan entri ini di bagian bawah.

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

Aktifkan dan mulai MariaDB. Prosedur ini akan menetapkan kata sandi root dan secara opsional menjatuhkan basis data pengujian. Sebaiknya ikuti saran di tahap pemasangan yang aman.

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

Buat basis data WordPress dan pengguna basis data.

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

Instal dan Konfigurasi WordPress

WordPress belum memiliki port resmi OpenBSD untuk beberapa waktu karena cukup banyak yang berhasil. Unduh, ekstrak, dan pindahkan folder instalasi 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

Kita harus menyalin /etc/resolve.confdan /etc/hostsuntuk /var/www/etc. Ini agar WordPress dapat berhasil menjangkau pasar. Anda memerlukan ini untuk mengunduh plugin dan tema melalui situs admin WordPress.

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

Mulai httpd dan php73_fpm.

doas rcctl start httpd php73_fpm

Jelajahi url yang Anda gunakan dalam definisi server Anda. Anda akan melihat panduan instalasi WordPress. Untuk opsi Server database, ganti localhost dengan 127.0.0.1.

Setelah WordPress terinstal, sekarang saatnya untuk mengatur permalink sehingga mereka terlihat lebih ramah SEO. Dari layar admin WordPress, buka Settings -> Permalinks. Klik Custom Structuredan ketik /posts/%postname%. Setelah melakukan perubahan ini, klik Save Changestombol. Anda sekarang memiliki tautan yang tampak lebih bagus. Misalnya, permalink akan terlihat seperti ini:https://example.com/posts/example-blog-post



Leave a Comment

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

6 Hal yang Sangat Menggila dari Nintendo Switch

6 Hal yang Sangat Menggila dari Nintendo Switch

Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.

Janji Teknologi Yang Masih Belum Ditepati

Janji Teknologi Yang Masih Belum Ditepati

Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.

Pembaruan Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Masalah Daripada Menyelesaikan

Pembaruan Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Masalah Daripada Menyelesaikan

Baru-baru ini Apple merilis macOS Catalina 10.15.4 pembaruan suplemen untuk memperbaiki masalah tetapi tampaknya pembaruan menyebabkan lebih banyak masalah yang mengarah ke bricking mesin mac. Baca artikel ini untuk mempelajari lebih lanjut