Saat menggunakan situs web atau aplikasi web, solusi layanan web yang paling umum untuk itu adalah mengatur setumpuk LAMP yang terdiri dari Linux, Apache, MySQL, dan PHP.
Pada artikel ini, kita akan belajar cara mengatur stack LAMP terbaru dengan menginstal rilis stabil terbaru dari Apache 2.4.x, MariaDB 10.x, dan PHP 7.x di Ubuntu 16.04.
Prasyarat
Langkah 1: Instal Apache 2.4.x
Instal rilis stabil terbaru dari Apache 2.4.x menggunakan perintah berikut:
sudo apt-get install apache2 -y
Gunakan perintah di bawah ini untuk mengonfirmasi pemasangan:
apache2 -v
Outputnya harus menyerupai:
Server version: Apache/2.4.18 (Ubuntu)
Server built: 2016-07-14T12:32:26
Dalam lingkungan produksi, Anda ingin menghapus halaman selamat datang standar Apache Ubuntu:
sudo mv /var/www/html/index.html /var/www/html/index.html.bak
Untuk tujuan keamanan, Anda harus mencegah Apache mengekspos file dan direktori dalam direktori root web /var/www/htmlkepada pengunjung:
sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/apache2/apache2.conf
Catatan: Sesuai dengan persyaratan spesifik Anda, Anda dapat menyesuaikan pengaturan lainnya di file itu nanti.
Mulai layanan Apache dan mulai dari boot sistem:
sudo systemctl start apache2.service
sudo systemctl enable apache2.service
Langkah 2: Instal MariaDB 10.x
Pada saat menulis artikel ini, rilis stabil MariaDB saat ini adalah 10.1. Anda dapat menggunakan perintah berikut untuk menginstal MariaDB 10.1 pada sistem Ubuntu 16.04 x64 Anda.
Atur sistem apt repo:
sudo apt-get install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mirror.jmu.edu/pub/mariadb/repo/10.1/ubuntu xenial main'
Instal MariaDB:
sudo apt update -y
sudo apt install -y mariadb-server
Selama proses instalasi, wizard konfigurasi paket MariaDB akan secara otomatis muncul dan meminta Anda untuk mengatur kata sandi baru untuk rootpengguna MariaDB . Untuk saat ini, cukup tekan Entersetiap kali wizard muncul untuk melewati langkah ini karena kami akan mengatur kata sandi untuk rootpengguna MariaDB dalam prosedur pengamanan MariaDB berikut.
Setelah MariaDB diinstal, Anda dapat mengkonfirmasi instalasi dengan:
mysql -V
Outputnya harus sama dengan:
mysql Ver 15.1 Distrib 10.1.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Mulai layanan MariaDB:
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Amankan instalasi MariaDB:
sudo /usr/bin/mysql_secure_installation
Selama proses interaktif, jawab pertanyaan satu per satu sebagai berikut:
Enter current password for root (enter for none): <Enter>
Set root password? [Y/n]: Y
New password: <your-MariaDB-root-password>
Re-enter new password: <your-MariaDB-root-password>
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y
Catatan: Pastikan untuk mengganti <your-MariaDB-root-password>dengan kata sandi root MariaDB Anda sendiri.
Dengan cara ini, MariaDB 10.1 telah terpasang dengan aman ke sistem Anda. Di masa mendatang, Anda dapat mengatur pengguna dan basis data yang ditunjuk untuk aplikasi web Anda sebagai berikut:
Masuk ke shell MySQL sebagai root:
mysql -u root -p
Ketikkan kata sandi root MariaDB yang Anda atur sebelumnya saat diminta.
Buat basis data MariaDB webapp, pengguna basis data webappuser, dan kata sandi pengguna basis data yourpassword:
CREATE DATABASE webapp;
CREATE USER 'webappuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON webapp.* TO 'webappuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
Jika perlu, Anda dapat menyesuaikan MariaDB dengan meninjau dan mengedit file konfigurasi MariaDB utama yaitu /etc/mysql/my.cnf:
sudo cp /etc/mysql/my.cnf /etc/mysql/my.cnf.bak
sudo vi /etc/mysql/my.cnf
Ingatlah untuk memulai kembali layanan MariaDB jika Anda membuat modifikasi pada file itu:
sudo systemctl restart mariadb.service
Langkah 3: Instal PHP 7.0 atau 7.1
Saat berurusan dengan PHP 7.x, silakan merujuk ke artikel Vultr lain yang menjelaskan proses secara rinci.
Langkah 4: Atur firewall UFW
Secara default, firewall UFW pada Ubuntu 16.04 tidak aktif. Anda harus mengaktifkan firewall UFW untuk meningkatkan keamanan:
sudo ufw app list
sudo ufw allow OpenSSH
sudo ufw allow in "Apache Full"
sudo ufw enable
Itu saja. Setelah melalui prosedur di atas, tumpukan LAMP akan aktif dan berjalan di sistem Ubuntu 16.04 Anda. Anda kemudian dapat menggunakan aplikasi web Anda sendiri berdasarkan tumpukan LAMP. Bersenang senang lah!