Repositori untuk melakukan instalasi dan konfigurasi wordpress dengan menggunakan keamanan SSL dari CloudFlare
README.md | 5 years ago |
Repositori untuk melakukan instalasi dan konfigurasi wordpress dengan menggunakan keamanan SSL dari CloudFlare
Instalasi dan Konfigurasi:
Ketentuan pengerjaan:
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
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
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
Buat dan pilih folder untuk mendownload dan menyimpan folder dan file CMS Wordperss
# cd /home home# mkdir A home# cd A/ home/A#
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/
# vi /etc/php-fpm.d/www.conf
Rubah user dan grub menjadi nginx dan buat php socket
Buat file baru dengan nama wp.conf
# vi /etc/nginx/conf.d/wp.conf
Di dalam file wp.conf masukan kode berikut
server { listen 80; listen [::]:80; server_name wp.padiakse.my.id www.wp.padiakse.my.id; return 302 https://$server_name$request_uri; } server { # SSL configuration listen 443 ssl http2; listen [::]:443 ssl http2; ssl on; ssl_certificate /etc/ssl/certs/cert.pem; ssl_certificate_key /etc/ssl/private/key.pem; server_name wp.padiakse.my.id www.wp.padiakse.my.id; root /home/A/wordpress/; index index.html index.php ; error_log /var/log/nginx/wppadiakse-error.log; access_log /var/log/nginx/wppadiakse-access.log; location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini # With php5-cgi alone: fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_script_name; include fastcgi_params; } }
Seve dan close
Pertama buat database baru pada mariaDB
# mysql -u root -p
Setelah masuk tambahkan database baru dengan nama wp / isikan bebas sesuai kebutuhan
MariaDB [(none)]> create database nama_database;
Masukan user dan password untuk database wp
MariaDB [(none)]> GRANT ALL ON nama_database.* TO 'isikan_user'@'localhost' IDENTIFIED BY 'isikan_password';
Beri hak akses untuk database yang dipilih
MariaDB [(none)]> FLUSH PRIVILEGES;
Exit untuk keluar dari MariaDB
MariaDB [(none)]> exit;
Kemudian masuk ke folder wordpress
# cd /home/A/wordpress
Salin wp-config-sample.php dangan nama baru wp-config.php
# cp wp-config-sample.php wp-config.php
Edit wp-config.php
# vi wp-config.php
Rubah isi file wp-config.php berikut
// ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define( 'DB_NAME', 'isikan_nama_database' ); /** MySQL database username */ define( 'DB_USER', 'isikan_user_database' ); /** MySQL database password */ define( 'DB_PASSWORD', 'isikan_password_database' );
Simpan dan keluar.
Login akun Cloudflare
https://dash.cloudflare.com/login
Masukan email dan password
Setelah login silakan klik new site dan masukan root domain (domain.tld) nantinya setelah memasukan domain untuk site, kita diminta untuk merubah nameserver untuk domain yang dimasukan dan untuk merubah nameserver silakan menghubungi pihak penyedia domain dan apabila site telah aktif maka akan ada tampilan berikut:
Setelah itu klik site yang aktif kemudian pilih submenu DNS > add record
Masukan type: A Name:domain.tld/sub.domain.tld, IPv4 address: (IP VPS), TTL: (isi bebas) Terakhir klik save.
Apabila domain telah resolve selanjutnya konfigurasi SSL dengan memilih sub menu SSL/TLS dan kemudian Klik menu Origin Server > pilih Create Sertificate.
Pilih tipe sertifikat kemudian masukan hostname dan pilih durasi SSL yang terakhir klik next
Setelah klik next akan disajikan isi file Origin Certificate dan isi file Private key salin terlebih dahulu isi file tersebut kemudian klik Ok
Apabila isi file Origin Certificate dan isi file Private key telah disalin, selanjutnya buat file berikut.
# vi /etc/ssl/certs/cert.pem (Isikan isi file _Origin Certificate_) # vi /etc/ssl/private/key.pem (Isikan isi file _Private key_)
Apabila sudah keluar dan simpan kedua file tersebut dan selanjutnya pastikan SSL sudah ditambahkan untuk mengeceknya silakan masuk pada menu SSL > Origin Server.
Kunjungi Website yang telah terbuat dan pastikan telah menggunakan SSL dari CloudFlare.
Sekian dan Terima Kasih