GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal dan Mengamankan phpMyAdmin dengan Apache di Ubuntu 18.04

phpMyAdmin adalah aplikasi PHP open-source yang dirancang untuk menangani administrasi server MySQL dan MariaDB melalui antarmuka berbasis web.

phpMyAdmin memungkinkan Anda untuk mengelola database MySQL, akun pengguna dan hak istimewa, mengeksekusi pernyataan SQL, mengimpor dan mengekspor data dalam berbagai format data dan banyak lagi.

Tutorial ini mencakup langkah-langkah yang diperlukan untuk menginstal dan mengamankan phpMyAdmin dengan Apache di Ubuntu 18.04.

Prasyarat #

Pastikan Anda telah memenuhi prasyarat berikut sebelum melanjutkan tutorial ini:

  • Sudah menginstal LAMP (Linux, Apache, MySQL, dan PHP) di server Ubuntu Anda.
  • Masuk sebagai pengguna dengan hak istimewa sudo.

Meskipun tidak perlu, disarankan untuk mengakses instalasi phpMyAdmin Anda melalui HTTPS. Jika domain Anda belum dilindungi oleh SSL, Anda dapat mengikuti panduan ini dan mengamankan Apache Anda dengan Let's Encrypt di Ubuntu 18.04.

Menginstal phpMyAdmin #

Untuk menginstal phpMyAdmin di server Ubuntu 18.04 Anda, ikuti langkah-langkah berikut:

  1. Perbarui indeks paket dan tingkatkan paket sistem ke versi terbaru:

    sudo apt update && sudo apt upgrade
  2. Instal paket phpMyAdmin dari repositori default Ubuntu dengan perintah berikut:

    sudo apt install phpmyadmin

    Pemasang akan meminta Anda untuk memilih server web yang harus dikonfigurasi secara otomatis untuk menjalankan phpMyAdmin, pilih apache dengan menekan Space lalu Enter .

    Selanjutnya, Anda akan ditanya apakah akan menggunakan dbconfig-common untuk mengatur database, pilih Yes dan tekan Enter .

    Masukkan kata sandi untuk phpMyAdmin untuk mendaftar ke database, pilih OK dan tekan Enter .

    Anda akan diminta untuk mengkonfirmasi kata sandi, masukkan kata sandi yang sama, pilih OK dan tekan Enter .

  3. Setelah proses instalasi selesai, restart Apache agar perubahan diterapkan:

    sudo systemctl restart apache2

Buat Pengguna MySQL Administratif #

Dalam sistem Ubuntu yang menjalankan MySQL 5.7 (dan yang lebih baru), pengguna root diatur untuk menggunakan auth_socket metode otentikasi secara default.

auth_socket plugin mengotentikasi pengguna yang terhubung dari localhost melalui file soket Unix. Ini berarti Anda tidak dapat mengautentikasi sebagai root dengan memberikan kata sandi.

Alih-alih mengubah metode otentikasi untuk root pengguna MySQL , kami akan membuat pengguna MySQL administratif baru. Pengguna ini akan memiliki hak istimewa yang sama dengan pengguna root dan akan disetel untuk menggunakan mysql_native_password metode otentikasi.

Kami akan menggunakan pengguna ini untuk masuk ke dasbor phpMyAdmin dan melakukan tugas administratif sebelumnya di server MySQL atau MariaDB kami.

Mulailah dengan masuk ke server MySQL sebagai pengguna root:

sudo mysql

Dari dalam shell MySQL, jalankan perintah berikut yang akan membuat pengguna administratif baru dan memberikan izin yang sesuai:

CREATE USER 'padmin'@'localhost' IDENTIFIED BY 'super-strong-password';GRANT ALL PRIVILEGES ON *.* TO 'padmin'@'localhost' WITH GRANT OPTION;

Dalam contoh kami, kami menamai pengguna administratif padmin . Anda dapat menggunakan nama apa pun yang Anda suka, pastikan untuk menyetel kata sandi yang kuat.

Mengakses phpMyAdmin #

Untuk mengakses antarmuka phpMyAdmin buka browser favorit Anda dan ketik nama domain server Anda atau alamat IP publik diikuti dengan /phpmyadmin :

https://your_domain_or_ip_address/phpmyadmin

Masukkan kredensial login pengguna administratif yang Anda buat sebelumnya dan klik Go .

Setelah Anda masuk, Anda akan melihat dasbor phpMyAdmin, yang akan terlihat seperti ini:

Mengamankan phpMyAdmin #

Untuk menambahkan lapisan keamanan ekstra, kami akan melindungi direktori phpMyAdmin dengan sandi dengan menyiapkan autentikasi dasar.

Pertama kita akan membuat file kata sandi dengan pengguna menggunakan htpasswd alat yang disertakan dengan paket Apache. Kami akan menyimpan .htpasswd file di /etc/phpmyadmin direktori:

sudo htpasswd -c /etc/phpmyadmin/.htpasswd padmin

Dalam contoh ini kami membuat pengguna bernama padmin . Anda dapat memilih nama pengguna apa saja, tidak harus sama dengan pengguna MySQL administratif.

Perintah di atas akan meminta Anda untuk memasukkan dan mengonfirmasi kata sandi pengguna.

New password:
Re-type new password:
Adding password for user padmin

Jika Anda ingin menambahkan pengguna tambahan, Anda dapat menggunakan perintah yang sama tanpa -c bendera:

sudo htpasswd /etc/phpmyadmin/.htpasswd padmin2

Langkah selanjutnya adalah mengkonfigurasi Apache untuk memproteksi password direktori phpMyAdmin dan menggunakan .htpasswd berkas.

Untuk melakukannya buka phpmyadmin.conf file yang secara otomatis dibuat selama instalasi phpMyAdmin:

sudo nano /etc/apache2/conf-available/phpmyadmin.conf

Dan edit / sisipkan baris berikut yang disorot dengan warna kuning:

/etc/apache2/conf-available/phpmyadmin.conf
<Directory /usr/share/phpmyadmin>
    Options  +FollowSymLinks +Multiviews +Indexes  # edit this line
    DirectoryIndex index.php

    AllowOverride None
    AuthType basic
    AuthName "Authentication Required"
    AuthUserFile /etc/phpmyadmin/.htpasswd
    Require valid-user

    <IfModule mod_php5.c>
    ...

Simpan dan tutup file dan mulai ulang Apache agar perubahan diterapkan:

sudo systemctl restart apache2

Sekarang, saat mengakses phpMyAdmin Anda, Anda akan diminta untuk memasukkan kredensial login dari pengguna yang Anda buat sebelumnya:

https://your_domain_or_ip_address/phpmyadmin

Setelah memasukkan otentikasi dasar, Anda akan dibawa ke halaman login phpMyAdmin di mana Anda harus memasukkan kredensial login pengguna administratif MySQL Anda.

Ini juga merupakan ide yang baik untuk mengubah /phpmyadmin alias untuk sesuatu yang lebih unik dan aman.
Ubuntu
  1. Cara Memasang dan Mengamankan phpMyAdmin di Ubuntu

  2. Cara Menginstal Apache Maven di Ubuntu 18.04 dan 16.04

  3. Instal phpMyAdmin dengan Apache di Ubuntu 18.04 - Proses Langkah demi Langkah?

  1. Cara Menginstal Apache ZooKeeper di Ubuntu

  2. Cara Menginstal dan Mengonfigurasi Nextcloud dengan Apache di Ubuntu 18.04

  3. Cara Menginstal phpMyAdmin dengan Nginx di Ubuntu 18.04

  1. Cara Menginstal dan Mengkonfigurasi ownCloud dengan Apache di Ubuntu 18.04

  2. Cara Menginstal dan Mengamankan phpMyAdmin dengan Apache di CentOS 7

  3. Cara Menginstal dan Mengamankan phpMyAdmin dengan Apache di Debian 9