- Secure-Wordpress-with-Cloudflare
- ===============
-
- 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
-
- 