diff --git a/README.md b/README.md index 00d2e59..ac98e9e 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,174 @@ Secure-Wordpress-with-Cloudflare =============== -Repositori untuk melakukan instalasi dan konfigurasi wordpress dengan menggunakan keamanan SSL dari CloudFlare \ No newline at end of file +Repositori untuk melakukan instalasi dan konfigurasi wordpress dengan menggunakan keamanan SSL dari CloudFlare + +## Task +Instalasi dan Konfigurasi: +* Web Server NGINX +* Database Server MariaDB 10.1.44 +* PHP 7.2 + +Ketentuan pengerjaan: +* Menggunakan VPS dengan OS centos7 +* Menggunakan subdomain dari domain utama (wp.domain.tld) +* Menggunakan mangement DNS di CloudFlare +* SSL yang digunakan ialah SSL dari CloudFlare + +## Langkah 1 Instalasi dan Konfigurasi LEMP +### Step 1: Instalasi Web Server Nginx + +Untuk melakukan instalasi Nginx yang pertama adalah melakukan remote ke IP VPS dengan menggunakan SSH + + +> ```$ ssh root@ipaddress``` + +Setelah berhasil login ke VPS, lakukan pembaharuan paket/repository dari system operasi Centos7 dengan perintah sebagai berikut: + + +> ```#yum -y update``` + +Lakukan instalasi paket epel-release sebelum melakukan instalasi paket pada OS centos7 dengan memasukan perintah berikut: + +> ```# yum install epel-release -y``` + +Setelah paket epel-release selesai diinstall selanjutnya ialah instalasi webserver Nginx dan biasanya instalasi ini memakan waktu 10 sd 20 second, untuk melakukan instalasi Nginx masukan perintah berikut: + +> ```# yum install nginx -y``` + +Selanjutnya lakukan enable direktori dan file webserver Nginx, berikut perintahnya: + +> ```# systemctl enable nginx``` + +Setelah direktori dan file webserver Nginx dienable, jalankan service Nginx dengan perintah berikut: + +> ```# systemctl start nginx``` + +Apabila paket webserver Nginx telah selesai diinstal pastikan service Nginx berjalan dengan status Running. + +> ``` +# systemctl status nginx +● nginx.service - The nginx HTTP and reverse proxy server + Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled) + Active: active (running) since Sun 2020-03-08 16:33:22 WIB; 1h 29min ago + Process: 10899 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) + Process: 10896 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) + Process: 10895 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) + Main PID: 10901 (nginx) + CGroup: /system.slice/nginx.service + ├─10901 nginx: master process /usr/sbin/nginx + └─10902 nginx: worker process``` + + +### Step 2: Instalasi Database Server MariaDB 10.1.44 + +Setelah webserver Nginx telah diinstall selanjutnya lakukan instalasi database server mariaDB 10.1.44 dan langkah pertama ialah menambahkan repository untuk mariaDB. + +> ```# vi /etc/yum.repos.d/mariadb.repo``` + +Masukan perintah berikut: + +> ``` +[mariadb] +name = MariaDB +baseurl = http://yum.mariadb.org/10.1/centos7-amd64 +gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB +gpgcheck=1``` + +Setelah menambahkan repo mariaDB, lakukan instalasi mariaDB dengan perintah berikut: + +> ```# yum install mariadb-server``` + +Selanjutnya lakukan enable direktori dan file database mariaDB, berikut perintahnya: + +> ```# systemctl enable mariadb``` + +Setelah direktori dan file database mariaDB dienable, jalankan service mariaDB dengan perintah berikut: + +> ```# systemctl start mariadb``` + +Apabila paket database server telah selesai diinstall pastikan service mariaDB berjalan dengan status Running. + +> ``` +# systemctl status mariadb +● mariadb.service - MariaDB 10.1.44 database server + Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled) + Drop-In: /etc/systemd/system/mariadb.service.d + └─migrated-from-my.cnf-settings.conf + Active: active (running) since Sat 2020-03-07 20:09:38 WIB; 22h ago + Docs: man:mysqld(8) + https://mariadb.com/kb/en/library/systemd/ + Process: 29925 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) + Process: 29885 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS) + Process: 29883 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) + Main PID: 29897 (mysqld) + Status: "Taking your SQL requests now..." + CGroup: /system.slice/mariadb.service + └─29897 /usr/sbin/mysqld +``` + +### Step 3: Instalasi PHP 7.2 + +Setelah melakukan instalasi database server selanjutnya ialah install PHP versi 7.2 dan langkah pertama adalah mengambil dan menginstall repository untuk PHP versi 7 keatas. + +> ```# yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm``` + +Setelah repository untuk PHP versi 7 diinstall, langkah selanjutnya adalah enable remi/repository untuk PHP 7.2 + +> ```# yum-config-manager --enable remi-php72``` + +Selanjutnya lakukan instalasi PHP 7.2 beserta paket php yang akan digunakan + +> ```# yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd``` + + +Lihat versi dan pastikan service PHP berjalan + +> ``` +# php -v +PHP 7.2.28 (cli) (built: Feb 18 2020 11:07:04) ( NTS ) +Copyright (c) 1997-2018 The PHP Group +Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies + with Zend OPcache v7.2.28, Copyright (c) 1999-2018, by Zend Technologies +``` + +## Langkah 2 Konfigurasi CMS wordpress +### Step 1: Membuat folder untuk meletakan root folder CMS wordpress + +> ``` +# cd /home +home# mkdir A +home# cd A/ +home/A# +``` + +Folder untuk mendownload dan menyimpan folder dan file CMS Wordperss + +### Step 2: Download dan Extract File CMS Wordpress + +Setelah folder untuk CMS wordpress selesai dibuat, selanjutnya adalah melakukan instalasi wget dan unzip . + +> ```# yum install wget unzip -y``` + +Unduh File CMS wordpress + +> ```# wget http://wordpress.org/latest.tar.gz``` + +Extract File CMS wordpress + +> ```# tar xf latest.tar.gz``` + +Beri hak akses dan hak kepemilikan untuk folder A + +> ``` +# chown -R nginx:nginx /home/A/ +# chmod -R 755 /home/A/ +``` + +### Step 3: Konfigurasi File PHP dan menetukan PHP socket + +> ```# vi /etc/php-fpm.d/www.conf``` + +Rubah user dan grub menjadi nginx dan buat php socket + +![GitHub Logo](http://url-Anda.com)