Instal WordPress di OpenBSD 6.2
Pendahuluan WordPress adalah sistem manajemen konten yang dominan di internet. Ini memberdayakan semuanya, mulai dari blog hingga situs web kompleks dengan konten dinamis
Penggunaan umum server virtual Vultr adalah untuk meng-host situs web Wordpress. Panduan ini menunjukkan kepada Anda bagaimana mengotomatiskan konfigurasi server virtual dari awal (menggunakan Ansible) dan menggunakan beberapa situs web Wordpress independen (menggunakan Webmin / Virtualmin). Virtualmin / Webmin adalah antarmuka pengguna grafis yang memungkinkan Anda untuk mengelola penyebaran beberapa akun server virtual pada mesin yang sama (lengkap dengan tumpukan LAMP / LEMP). Virtualmin sangat mirip dengan cPanel dan Plesk, dan dalam tutorial ini kita akan menggunakan edisi GPL gratis. Setelah pengaturan awal server Vultr dan pemasangan Virtualmin, Anda dapat dengan cepat mengatur beberapa server virtual dari dalam antarmuka Virtualmin dan langsung menginstal Wordpress di server virtual tersebut lengkap dengan nama domainnya sendiri.
Dalam tutorial ini, alih-alih memasukkan daftar perintah yang panjang secara manual, kami akan menggunakan Ansible. Ansible adalah alat otomatisasi berbasis python yang memungkinkan Anda untuk secara otomatis dan berulang kali mengotomatiskan tugas-tugas server. Ini berarti setelah Anda mengikuti tutorial ini, Anda akan dapat menggunakan server lain dengan cara yang sama hanya dengan beberapa perintah.
Instal Ansible di mesin lokal Anda atau server lain.
mkdir ansible
cd ansible
virtualenv env
source env/bin/activate
pip install ansible
Kemungkinan bekerja dengan masuk ke server Anda melalui SSH. Akses SSH paling aman jika kita menggunakan kunci daripada kata sandi. Pertama-tama mari kita buat pasangan kunci publik dan pribadi.
mkdir ssh_keys
ssh-keygen -t rsa -b 2048 -f ./ssh_keys
Dalam ssh_keys
direktori sekarang akan ada dua file, ssh_keys
dan ssh_keys.pub
. ssh_keys
adalah file kunci pribadi Anda dan harus disimpan dengan aman. Anda sekarang dapat membuka ssh_keys.pub
, yang berisi kunci publik.
Masuk ke dasbor web Vultr dan klik Deploy New Server
.
Pilih wilayah, jenis Server (Ubuntu 16.04), Ukuran server, dan kemudian di bagian 6 ( SSH keys
), klik Add New
. Pada halaman berikutnya rekatkan kunci publik Anda dan beri nama, lalu klik Add SSH key
. Akhirnya pastikan bahwa kunci dipilih dan klik Deploy now
.
Setelah server selesai digunakan Anda akan ditunjukkan alamat ip-nya. Anda harus masuk ke server DNS nama domain Anda dan arahkan ke alamat ini.
File otomatisasi Ansible dipanggil roles
. Pertama-tama kita akan mengatur struktur direktori (di dalam ansible
direktori yang baru saja Anda buat pada langkah 1), dan file-file dasar.
mkdir -p group_vars roles/common/tasks/ roles/common/handlers
touch hosts group_vars/all deploy.yml roles/common/handlers/main.yml
Edit hosts
file berisi yang berikut ini, menggantikan ip address
server yang baru saja Anda buat. Anonim menggunakan python 2, yang tidak diinstal secara default oleh Ubuntu 16.04. Dalam hosts
file tersebut kami memberi tahu Ansible untuk menggunakan python 3.
[common]
192.0.2.1 ansible_python_interpreter=/usr/bin/python3
Edit deploy.yml
file untuk memuat yang berikut ini. Kami akan menggunakan root
pengguna.
- name: apply common configuration to server
hosts: all
user: root
roles:
- common
Edit /group_vars/all
file untuk memuat yang berikut ini. Variabel-variabel ini memberi tahu lokasi kunci SSH Anda, parameter file swap, Nama Domain Sepenuhnya Anda, dan kata sandi root. Harap diingat untuk tidak memasukkan file dalam kontrol sumber karena berisi kata sandi Anda dalam teks yang jelas.
ssh_dir: ./ssh_keys
swap_file_path: /swapfile
swap_file_size: 1G
swappiness: 1
hostname: example.com
new_password: YOUR_PASSWORD_HERE
Edit common/handlers/main.yml
file untuk memuat yang berikut ini.
- name: restart sshd
service: name=ssh state=restarted
Otomatisasi yang dimungkinkan lebih mudah dipahami jika kita memecahnya menjadi tugas. Mari kita buat file untuk masing-masing tugas kita dalam proses.
cd roles/common/tasks
touch hosts main.yml setup.yml users.yml ufw.yml swap.yml virtualmin.yml
main.yml
harus menunjuk ke setiap file yang berisi perintah Ansible, jadi edit untuk berisi yang berikut ini.
- include: setup.yml
- include: users.yml
- include: ufw.yml
- include: swap.yml
- include: virtualmin.yml
Langkah pertama dalam menyiapkan server baru adalah memperbarui cache repo dan mengatur zona waktu. Edit common/handlers/setup.yml
file untuk memuat yang berikut ini.
- apt: update_cache=yes
sudo: yes
- name: set timezone to Europe/London
timezone:
name: Europe/London
Sekarang, kami akan memberikan kata sandi kepada pengguna root (yang kami perlukan untuk mengakses antarmuka web virtualmin), tetapi nonaktifkan login kata sandi melalui SSH (karena kami menggunakan metode otentikasi kunci yang lebih aman). Edit users.yml
mengandung yang berikut ini.
- name: Change passwd
user: name=root password={{ new_password | password_hash('sha512') }} update_password=always
- name: Disable SSH password login
lineinfile: dest=/etc/ssh/sshd_config regexp="^#?PasswordAuthentication" line="PasswordAuthentication no"
notify: restart sshd
Untuk keamanan, kita membutuhkan firewall. Kami akan menggunakan Firewall Tidak Rumit untuk memungkinkan akses SSH di port 22
, akses web di port, 80
dan mengamankan akses web di port 443
. Edit ufw.yml
file untuk memuat yang berikut ini.
- name: Set default firewall policy to deny all
become: True
ufw: state=enabled direction=incoming policy=deny
tags: firewall
- name: enable SSH in firewall
ufw: rule=allow port=22
sudo: yes
- name: enable HTTP connections for web server
ufw: rule=allow port=80
sudo: yes
- name: enable HTTPS connections for web server
ufw: rule=allow port=443
sudo: yes
- name: enable firewall
ufw: state=enabled
sudo: yes
Secara opsional, Anda dapat memasukkan file swap. Ini penting jika server Anda memiliki RAM kurang dari 2GB untuk menghindari kehabisan memori. Edit swap.yml
mengandung yang berikut ini.
- name: Set swap_file variable
set_fact:
swap_file: "{{swap_file_path}}"
tags:
- swap.set.file.path
- name: Check if swap file exists
stat:
path: "{{swap_file}}"
register: swap_file_check
tags:
- swap.file.check
- name: Create swap file
command: fallocate -l {{swap_file_size}} {{swap_file}}
when: not swap_file_check.stat.exists
tags:
- swap.file.create
- name: Change swap file permissions
file: path="{{swap_file}}"
owner=root
group=root
mode=0600
tags:
- swap.file.permissions
- name: Format swap file
sudo: yes
command: "mkswap {{swap_file}}"
when: not swap_file_check.stat.exists
tags:
- swap.file.mkswap
- name: Write swap entry in fstab
mount: name=none
src={{swap_file}}
fstype=swap
opts=sw
passno=0
dump=0
state=present
tags:
- swap.fstab
- name: Turn on swap
sudo: yes
command: swapon -a
when: not swap_file_check.stat.exists
tags:
- swap.turn.on
- name: Set swappiness
sudo: yes
sysctl:
name: vm.swappiness
value: "{{swappiness}}"
tags:
- swap.set.swappiness
Virtualmin memiliki file penginstal sendiri yang dapat diunduh dan dijalankan oleh Ansible. Di sini kita menggunakan minimal install ( LINK
). Item tambahan adalah untuk mengkonfigurasi kata sandi server MySQL yang tidak diatur ketika diinstal oleh Virtualmin. Kita perlu menghentikan MySQL sementara dan menambahkan direktori otentikasi sebelum mengubah kata sandi. Edit virtualmin.yml
mengandung yang berikut ini.
- name: download virtualmin install script
get_url: >
url=http://software.virtualmin.com/gpl/scripts/install.sh
dest=/root/install.sh
mode=0755
- name: virtualmin install (takes around 10 mins) you can see progress using $ sudo tail -f /root/virtualmin-install.log
tags: non-idem
shell: ~/install.sh --force --hostname {{ hostname }} --minimal --yes
args:
chdir: /root
- name: temp stop mysql
service:
name: mysql
state: stopped
- name: change owner (and group) of mysqld dir
file:
path: "/var/run/mysqld"
state: directory
owner: mysql
group: mysql
- name: virtualmin set mysql password
shell: virtualmin set-mysql-pass --user root --pass {{ new_password }}
- name: restart mysql
service:
name: mysql
state: started
Peran Ansible sekarang selesai dan kami siap digunakan.
Dari folder ansible, kita sekarang dapat menjalankan perintah berikut, dan Ansible akan melakukan semua tugas yang telah kita buat secara otomatis. Pertama kali Anda terhubung, Anda akan mendapatkan peringatan kunci SSH, cukup ketik " yes
" di prompt.
ansible-playbook deploy.yml --private-key=ssh_keys/ssh_keys -i hosts
Jika kita ingin menggunakan server lain, kita cukup mengubah alamat ip di file hosts dan menjalankan perintah itu lagi untuk menyelesaikan pengaturan yang persis sama.
Instalasi selesai dan sekarang kita dapat pergi ke https://192.0.2.1:10000
(gunakan alamat ip server Anda). Browser Anda akan mengeluarkan peringatan keamanan karena sertifikat ditandatangani sendiri, jadi klik advanced
dan tambahkan pengecualian. Anda akan disajikan halaman login. Nama pengguna adalah root
, dan kata sandi adalah yang Anda masukkan ke group_vars/all
file di langkah 3. Pertama kali Anda memasuki Virtualmin Anda akan disajikan dengan wizard pasca-instalasi. Anda bisa melalui pengaturan ini secara manual atau klik cancel
untuk menerima default.
Untuk menjalankan dan menjalankan server Wordpress pertama Anda, dari dasbor Virtualmin klik Create Virtual Server
. Anda harus memasukkan nama domain, deskripsi, dan kata sandi administrator. Nama domain harus berbeda dari nama domain Virtualmin yang sepenuhnya memenuhi syarat, dan Anda harus mengarahkan data DNS ke alamat ip server Anda.
Klik Create Server
. Setelah Virtualmin selesai membuat server Anda, klik Install Scripts
menu sebelah kiri. Pilih Wordpress
, klik Show install options
, dan pada halaman berikut pilih lokasi instalasi Wordpress. Cukup pilih At top level
dan klik Install Now
.
Itu semua yang perlu Anda lakukan - Anda dapat menyelesaikan instalasi Wordpress dengan mengunjungi Anda http://example.net/wp-admin/install.php
(di mana example.net
nama domain server virtual ini). Jika catatan DNS Anda belum disebarkan, Anda dapat membuka Services > Preview Website
dari menu Virtualmin.
Anda dapat mengulangi langkah ini beberapa kali untuk membuat beberapa situs Wordpress di server Vultr yang sama.
Pendahuluan WordPress adalah sistem manajemen konten yang dominan di internet. Ini memberdayakan semuanya, mulai dari blog hingga situs web kompleks dengan konten dinamis
Ghost adalah platform penerbitan sumber terbuka modern yang dibangun di atas Node.js dengan klien admin Ember.js, API JSON, dan API tema yang ditenagai oleh Handlebars.js. Ghos
Menggunakan Sistem yang Berbeda? Ghost adalah platform blogging sumber terbuka yang telah mendapatkan popularitas di kalangan pengembang dan pengguna biasa sejak 201 nya
Menggunakan Sistem yang Berbeda? Ghost adalah platform blogging sumber terbuka yang mulai populer di kalangan pengembang dan pengguna biasa sejak dirilis pada 2013. saya
Menggunakan Sistem yang Berbeda? Dotclear adalah mesin blog yang sangat sederhana. Ini adalah open-source dan mudah digunakan. Tutorial ini akan melalui instalasi pada
Ghost adalah pemula baru dan terbaik untuk menyaingi WordPress. Pengembangan tema cepat dan mudah dipelajari karena pengembang Ghost memutuskan untuk menggunakan keduanya
Pendahuluan Semakin dekat Anda memasang OpenBSD ke default dan tanpa banyak paket tambahan, semakin aman. Sementara yang lebih umum
Menggunakan Sistem yang Berbeda? MODX Revolution adalah Sistem Manajemen Konten (CMS) yang cepat, fleksibel, dapat diskalakan, gratis, dan sumber terbuka.
Menggunakan Sistem yang Berbeda? Fork adalah CMS open source yang ditulis dalam PHP. Kode sumber Forks di-host di GitHub. Panduan ini akan menunjukkan cara menginstal Fork CM
Typesetter adalah CMS open source yang ditulis dalam PHP yang berfokus pada kemudahan penggunaan dengan pengeditan True WYSIWYG dan penyimpanan file-datar. Pada artikel ini, kita akan menginstalin
Menggunakan Sistem yang Berbeda? MODX Revolution adalah Sistem Manajemen Konten (CMS) yang cepat, fleksibel, dapat diskalakan, gratis, dan sumber terbuka.
Menggunakan Sistem yang Berbeda? Dotclear adalah mesin blog yang sangat sederhana yang telah dibangun di atas PHP. Dalam tutorial ini, kita akan menginstal Dotclear di Ubunt
Neos adalah sistem manajemen konten sumber terbuka inovatif yang bagus untuk membuat dan mengedit konten online. Dengan mengingat penulis dan editor, Neo
Menggunakan Sistem yang Berbeda? Jekyll adalah alternatif yang bagus untuk WordPress. Itu tidak memerlukan basis data apa pun dan berfungsi dengan bahasa yang banyak dikenalnya
Menggunakan Sistem yang Berbeda? Fork adalah CMS open source yang ditulis dalam PHP. Kode sumber Forks di-host di GitHub. Panduan ini akan menunjukkan cara menginstal Fork CM
Menggunakan Sistem yang Berbeda? Jekyll adalah alternatif yang bagus untuk WordPress untuk blogging atau berbagi konten. Itu tidak memerlukan database apa pun dan sangat mudah saya
Contoh Vultr adalah cara yang bagus untuk menjalankan blog WordPress Anda, tetapi ekstensi yang lebih penting untuk WordPress adalah WooCommerce, sebuah plugin eCommerce yang memperluas
Menggunakan Sistem yang Berbeda? Fork adalah CMS open source yang ditulis dalam PHP. Kode sumber Forks di-host di GitHub. Panduan ini akan menunjukkan cara menginstal Fork CM
Menggunakan Sistem yang Berbeda? Ghost adalah platform blogging sumber terbuka yang mulai populer di kalangan pengembang dan pengguna biasa sejak dirilis pada 2013. saya
Menggunakan Sistem yang Berbeda? Fork adalah CMS open source yang ditulis dalam PHP. Kode sumber Forks di-host di GitHub. Panduan ini akan menunjukkan cara menginstal Fork CM
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