Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1
Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1
Mengingat kegemaran OpenBSD untuk keamanan, masuk akal untuk memberi daya pada situs WordPress Anda dengannya, terutama karena WordPress dan PHP cenderung menjadi target yang bergerak untuk skrip kiddies. Karena httpd OpenBSD terutama dirancang untuk menyajikan halaman statis, operasi POST dicadangkan untuk proses fastcgi dan slowcgi. Hal ini mempersulit aktor jahat untuk berpotensi memecah proses server web dan mendapatkan akses ke server Anda. Operasi POST disalurkan ke proses fastcgi dan menggunakan penerjemah eksternal. Artikel ini tidak hanya akan membahas pengaturan situs WordPress Anda tetapi juga beberapa teknik pemeliharaan dasar dan cara membuat cadangan dan memulihkan situs dan basis datanya. Di mana pun Anda melihat example.com
sebagai domain, harap ganti dengan domain Anda.
Jika Anda belum melakukannya, Anda harus membuat /etc/doas.conf
file. Perintah doas adalah pengganti mudah OpenBSD untuk sudo. Untuk kenyamanan, saya telah menambahkan opsi nopass sehingga Anda tidak perlu mengetik ulang kata sandi saat menggunakan doas. Jika Anda memilih untuk tidak memiliki ini, cukup hapus nopass.
su -
echo "permit nopass keepenv :wheel" > /etc/doas.conf
Bergantung pada bagaimana OpenBSD dikemas untuk penyebaran, kadang-kadang manajer paket mungkin tidak memiliki repositori yang dikonfigurasi. Untuk mengkonfigurasi repositori resmi OpenBSD, kita harus membuat /etc/installurl
file.
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 file modul ini 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 php-zip pecl73-mcrypt pecl73-imagick wget
doas cp /etc/php-7.3.sample/* /etc/php-7.3/.
Di dunia sekarang ini, situs web harus dilayani melalui SSL atau wajah ditolak oleh mesin pencari. Untungnya, OpenBSD memiliki aplikasi hebat bernama acme-client. Klien acme akan secara otomatis menghasilkan kunci pribadi baru dan meminta sertifikat baru yang sepenuhnya valid. Klien acme tergantung pada memiliki server web di tempat sehingga kita perlu membuat definisi server default cepat.
Dengan editor favorit Anda, buat /etc/httpd.conf
. Kami akan menambahkan definisi server lain ke file nanti. Untuk saat ini ini sudah cukup sehingga acme-client berfungsi dengan baik.
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-v02.api.letsencrypt.org/directory"
account key "/etc/acme/letsencrypt-privkey.pem"
}
authority letsencrypt-staging {
api url "https://acme-staging-v02.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.crt"
sign with letsencrypt
}
Sekarang kita harus mengaktifkan dan memulai httpd. Setelah kami melakukan ini, maka kami dapat menjalankan acme-client dan menunggu untuk mendapatkan sertifikat baru kami. Setelah kami melakukan ini, kami akan menambahkan pekerjaan cron untuk secara otomatis meminta yang baru setiap 7 hari sehingga kami tidak perlu khawatir tentang kedaluwarsa.
doas rcctl enable httpd
doas rcctl start httpd
doas acme-client -v example.com
Sekarang kita menciptakan pekerjaan cron. Tambahkan baris ini di bawah entri terakhir. Dalam hal ini, kami memberi tahu klien acme untuk meminta sertifikat baru pada pukul 01:00 setiap hari Sabtu.
doas crontab -e
0 1 * * 6 acme-client -F example.com && rcctl reload httpd
Sekarang saatnya untuk mengatur httpd untuk WordPress. Daripada menempatkan definisi situs web kami secara langsung /etc/httpd.conf
, kami akan menempatkannya dalam file terpisah yang disebut /etc/httpd.conf.example.com
dan memasukkannya ke dalam file konfigurasi utama. Biasanya merupakan praktik yang baik untuk memisahkan keduanya, menjaga definisi di seluruh situs dalam file konfigurasi utama Anda dan pengaturan khusus domain dalam yang berbeda.
Tambahkan baris berikut ke bagian bawah /etc/httpd.conf
file Anda :
include "/etc/httpd.conf.example.com"
Sekarang menggunakan editor favorit Anda, buat /etc/httpd.conf.example.com
. Untuk kenyamanan, kami akan membuat file log terpisah untuk domain Anda. Ini membuatnya lebih mudah ketika mencoba untuk mengejar potensi masalah dengan situs Anda.
server "example.com" {
listen on egress port 80
alias "www.example.com"
# Automatically redirect to SSL
block return 302 "https://$SERVER_NAME$REQUEST_URI"
log {
access "access-example.com"
error "error-example.com"
}
}
server "example.com" {
listen on egress tls port 443
alias "www.example.com"
root "/htdocs/wordpress"
directory index "index.php"
log {
access "access-example.com"
error "error-example.com"
}
tcp { nodelay, backlog 10 }
tls {
certificate "/etc/ssl/example.com.crt"
key "/etc/ssl/private/example.com.key"
}
hsts {
# max-age value is the number of seconds in 1 year
max-age 31556952
preload
subdomains
}
location "/.well-known/acme-challenge/*" {
root "/acme"
request strip 2
}
location "/posts/*" {
fastcgi {
param SCRIPT_FILENAME \
"/htdocs/wordpress/index.php"
socket "/run/php-fpm.sock"
}
}
location "/page/*" {
fastcgi {
param SCRIPT_FILENAME \
"/htdocs/wordpress/index.php"
socket "/run/php-fpm.sock"
}
}
location "/feed/*" {
fastcgi {
param SCRIPT_FILENAME \
"/htdocs/wordpress/index.php"
socket "/run/php-fpm.sock"
}
}
location "/comments/feed/*" {
fastcgi {
param SCRIPT_FILENAME \
"htdocs/wordpress/index.php"
socket "/run/php-fpm.sock"
}
}
location "/wp-json/*" {
fastcgi {
param SCRIPT_FILENAME \
"htdocs/wordpress/index.php"
socket "/run/php-fpm.sock"
}
}
location "/wp-login.php*" {
authenticate "WordPress" with "/htdocs/htpasswd"
fastcgi socket "/run/php-fpm.sock"
}
location "*.php*" {
fastcgi socket "/run/php-fpm.sock"
}
}
Untuk keamanan yang lebih besar, kami akan mengimplementasikan permintaan tambahan untuk nama pengguna dan kata sandi saat masuk ke situs administrasi WordPress. Karena skrip kiddies ingin berulang kali mencoba dan bruteforce login WordPress, kami membuat login tambahan di tingkat server web. Biasanya, mereka mendapatkan sekitar 5 tebakan sebelum WordPress melakukan kesalahan 401 Tidak Resmi.
doas su
cd /var/www/htdocs
doas htpasswd htpasswd <user>
doas chown www:www htpasswd
doas chmod 0640 htpasswd
doas rcctl reload httpd
Kami harus membuat perubahan dalam php sehingga instalasi WordPress Anda dapat mengirim email. WordPress dan beberapa plugin mengandalkan kemampuan untuk mengirim email yang memberi tahu Anda tentang peningkatan, peringatan, dan perubahan. Ketidakmampuan untuk mengirim email dapat merusak fitur WordPress tertentu. Karena httpd berjalan dalam lingkungan chroot, kami harus memberi tahu php cara mengirim email. Selanjutnya, kita harus melakukan beberapa tweak kinerja untuk php-fpm.
Cari sendmail_path
baris /etc/php-7.3.ini
dan buat perubahan berikut:
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; sendmail_path =
sendmail_path = /bin/femail -t -i
Cari baris berikut /etc/php-fpm.conf
dan ubah sebagai berikut:
pm.start_servers = 5
pm.min_spare_servers = 1
pm.max_spare_servers = 6
Langkah selanjutnya adalah mengaktifkan dan memulai php-fpm.
doas rcctl enable php73_fpm
doas rcctl start php73_fpm
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.conf
dengan menambahkan entri ini di bagian bawah.
mysqld:\
:openfiles-cur=1024:\
:openfiles-max=2048:\
:tc=daemon:
Kami harus membuat beberapa perubahan pada file konfigurasi MariaDB /etc/my.cnf
,. Dengan meminta klien dan server mysql berkomunikasi melalui soket domain UNIX alih-alih TCP, penggunaan memori server Anda dapat lebih rendah. Anda tidak harus melakukan semua perubahan yang disarankan di bawah ini. Dua yang penting untuk diubah adalah socket
garis dan untuk mengomentari bind-address
garis. Ini memindahkan soket di dalam /var/www
lingkungan chroot sehingga WordPress dapat terhubung ke database. Dengan mengomentari bind-address
saluran, kami mencegah MariaDB dari mendengarkan pada port TCP.
[client-server]
socket=/var/www/var/run/mysql/mysql.sock
#port=3306
# This will be passed to all MariaDB clients
[client]
#password=my_password
# The MariaDB server
[mysqld]
# To listen to all IPv4 network addresses, use "bind-address = 0.0.0.0"
#bind-address=127.0.0.1
# Directory where you want to put your data
#data=/var/mysql
# This is the prefix name to be used for all log, error and replication files
#log-basename=mysqld
# Logging
#log-bin=/var/mysql/mariadb-bin
#max_binlog_size=100M
#binlog_format=row
#expire_logs_days = 7
#general-log
#slow_query_log
query_cache_type = 1
query_cache_limit = 1M
query_cache_size = 16M
Sekarang kita perlu menjalankan MariaDB menginstal biner dan mengaktifkan dan memulai MariaDB. Prosedur ini akan menetapkan kata sandi root dan secara opsional menjatuhkan basis data pengujian. Sebaiknya ikuti semua saran di tahap instalasi 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. Ingatlah untuk mengganti <wp_user>
dengan nama pengguna basis data pilihan Anda dan <password>
dengan kata sandi yang rumit yang Anda pilih.
mysql -u root -p
CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO '<wp_user>'@'localhost' IDENTIFIED BY '<password>';
FLUSH PRIVILEGES;
EXIT
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/.
doas chown -R www:www /var/www/htdocs/wordpress
doas chmod 0755 /var/www/htdocs/wordpress
cd /var/www/htdocs/wordpress/
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
Kita harus menyalin /etc/resolv.conf
dan /etc/hosts
ke direktori yang akan kita buat dipanggil /var/www/etc
. Ini agar WordPress dapat berhasil menjangkau pasar. Anda memerlukan ini untuk mengunduh plugin dan tema melalui situs admin WordPress. Penting juga bagi plugin Jet Pack untuk bekerja dengan baik.
doas mkdir /var/www/etc
doas cp /etc/hosts /var/www/etc/.
doas cp /etc/resolv.conf /var/www/etc/.
Dari sini, browse ke situs web WordPress Anda menggunakan https melalui URL yang Anda tentukan dalam definisi server web. Jika semuanya berfungsi dengan benar, Anda akan melihat panduan pemasangan WordPress. Ketika Anda masuk ke opsi untuk menentukan server database, Anda harus menggunakanlocalhost:/var/run/mysql/mysql.sock
Setelah WordPress terinstal, sekarang saatnya untuk mengatur permalink sehingga mereka terlihat lebih ramah SEO. Dari layar admin WordPress, buka Settings -> Permalinks
. Klik pada Struktur dan jenis Kustom /posts/%postname%
. Setelah melakukan perubahan ini, klik tombol Simpan Perubahan. Anda sekarang memiliki tautan yang tampak lebih bagus. Misalnya, permalink akan terlihat seperti ini:https://example.com/posts/example-blog-post
Dari sini, Anda harus memiliki situs web dasar yang siap digunakan. Pastikan Anda menginstal plugin seperti Jet Pack dan WP-Super Cache. Plugin WP-Super Cache membantu mempercepat situs web Anda dengan caching halaman web dan menghilangkan pencarian database konstan dan JetPack memberi Anda beberapa statistik pemirsa yang sangat baik.
Seharusnya tidak perlu dikatakan bahwa membuat cadangan situs web dan basis data Anda sangat penting. Untungnya, ini adalah hal yang relatif mudah dilakukan. Cadangkan keduanya ke direktori home Anda dan kemudian Anda dapat menyalinnya melalui scp ke lokasi lain. Anda juga dapat membuat snapshot melalui Panel Kontrol Vultr. Adalah ide yang baik untuk melakukan keduanya.
cd /var/www/htdocs
tar cvfz wordpress.tgz wordpress/
cp wordpress.tgz /home/user
mysqldump -u root -p wordpress > wordpress.sql && gzip wordpress.sql
Jika basis data Anda rusak dan pemulihan diperlukan, lakukan yang berikut ini:
gunzip wordpress.sql.gz
mysql -u root -p wordpress
DROP USER '<user>'@'localhost';
DROP DATABASE wordpress;
CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO '<wp_user>'@'localhost' IDENTIFIED BY '<password>';
FLUSH PRIVILEGES;
EXIT
mysql -u root -p wordpress < wordpress.sql
Jika Anda membuat perubahan pada file skrip WordPress yang memecahkan sesuatu, Anda selalu dapat menginstal ulang WordPress melalui panel kontrol admin. Cari Updates
bagian dan klik tautannya. Cari tombol berlabel Re-install Now
. Ini setidaknya akan memperbaiki apa yang rusak tetapi sebagian besar konfigurasi Anda harus tetap utuh.
Jika database Anda dalam kondisi yang baik, tetapi Anda secara tidak sengaja mengedit file dan memecah hal-hal ke titik di mana Anda bahkan tidak bisa sampai ke konsol admin WordPress, kemudian lakukan hal berikut:
rm /var/www/htdocs/wordpress
cp /home/user/wordpress.tgz /tmp
tar xvfz wordpress.tgz
mv wordpress /var/www/htdocs/.
chown -R www:www /var/www/htdocs/wordpress
cd /var/www/htdocs/wordpress
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1
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'.
Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.
Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.
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 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?
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.
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!
Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.
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