GNU/Linux >> Belajar Linux >  >> Linux

Cara Memasang dan Mengamankan phpMyAdmin di CentOS 8

phpMyAdmin adalah alat perangkat lunak sumber terbuka yang digunakan untuk mengelola database MySQL/MariaDB. Ini menyediakan cara mudah untuk berinteraksi dengan MySQL melalui browser web. phpMyAdmin sangat berguna bagi pengguna yang tidak nyaman mengelola data mereka dari baris perintah, jadi sangat penting bagi administrator sistem untuk mengamankan phpMyAdmin dari berbagai jenis serangan.

Dalam tutorial ini, kami akan menunjukkan cara menginstal dan mengamankan phpMyAdmin di CentOS 8.

Prasyarat

  • VPS CentOS 8 baru di Platform Cloud Atlantic.net.
  • Kata sandi root yang dikonfigurasi di server Anda.

Langkah 1 – Buat Server Cloud Atlantic.Net

Pertama, masuk ke Server Cloud Atlantic.Net Anda. Buat server baru, pilih CentOS 8 sebagai sistem operasi dengan setidaknya 1GB RAM. Hubungkan ke Server Cloud Anda melalui SSH dan masuk menggunakan kredensial yang disorot di bagian atas halaman.

Setelah Anda masuk ke server CentOS 8 Anda, jalankan perintah berikut untuk memperbarui sistem dasar Anda dengan paket terbaru yang tersedia.

dnf update -y

Langkah 2 – Instal Apache, MariaDB dan PHP

Sebelum memulai, instal Apache, MariaDB, PHP dan ekstensi PHP lainnya yang diperlukan dengan perintah berikut:

dnf install httpd mariadb-server php php-cli php-json php-mbstring php-pdo php-pecl-zip php-mysqlnd -y

Setelah menginstal semua paket, Anda dapat melanjutkan ke langkah berikutnya.

Langkah 3 – Setel Kata Sandi Root MariaDB

Pertama, mulai layanan MariaDB dan aktifkan untuk memulai saat boot dengan perintah berikut:

systemctl start mariadb
systemctl enable mariadb

Selanjutnya, atur kata sandi root MySQL menggunakan skrip berikut:

mysql_secure_installation

Skrip ini akan mengatur kata sandi root MySQL, menghapus pengguna anonim, melarang login root dari jarak jauh dan menghapus database uji dan akses ke sana, seperti yang ditunjukkan di bawah ini:

Masukkan kata sandi saat ini untuk root (masukkan untuk tidak ada):

Set root password? [Y/n] Y
New 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

Langkah 4 – Instal phpMyAdmin

Pertama, unduh versi terbaru phpMyAdmin ke direktori root web Apache menggunakan perintah berikut:

cd /var/www/html
wget https://files.phpmyadmin.net/phpMyAdmin/4.9.4/phpMyAdmin-4.9.4-all-languages.zip

Setelah diunduh, unzip file yang diunduh dengan perintah berikut:

unzip phpMyAdmin-4.9.4-all-languages.zip

Selanjutnya, ganti nama direktori yang diekstrak menjadi phpmyadmin seperti gambar di bawah ini:

mv phpMyAdmin-4.9.4-all-languages phpmyadmin

Selanjutnya, ubah kepemilikan direktori phpmyadmin menjadi pengguna apache:

chown -R apache:apache /var/www/html/phpmyadmin

Selanjutnya, ganti nama file config.sample.inc.php:

cd /var/www/html/phpmyadmin
mv config.sample.inc.php config.inc.php

Selanjutnya, edit file dan tentukan kata sandi aman Anda:

nano config.inc.php

Temukan baris di bawah ini dan perbarui dengan kata sandi aman Anda, seperti yang ditunjukkan di bawah ini:

$cfg['blowfish_secret'] = 'your-secure-password';

Simpan dan tutup file. Kemudian, impor tabel untuk phpMyAdmin dengan perintah berikut:

mysql < sql/create_tables.sql -u root -p

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Langkah 5 – Konfigurasi Apache untuk phpMyAdmin

Selanjutnya, buat file konfigurasi virtual host Apache untuk phpMyAdmin:

nano /etc/httpd/conf.d/phpmyadmin.conf

Tambahkan baris berikut:

Alias /phpmyadmin /var/www/html/phpmyadmin

<Directory /var/www/html/phpmyadmin/>
   AddDefaultCharset UTF-8

   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
      Require all granted
     </RequireAny>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     Order Deny,Allow
     Deny from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>
</Directory>

<Directory /var/www/html/phpmyadmin/setup/>
   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       Require all granted
     </RequireAny>

   </IfModule>

   <IfModule !mod_authz_core.c>
     # Apache 2.2
     Order Deny,Allow
     Deny from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>

</Directory>

Simpan dan tutup file. Kemudian, mulai layanan Apache dan aktifkan untuk memulai setelah sistem reboot dengan perintah berikut:

systemctl start httpd
systemctl enable httpd

Sekarang, buka browser web Anda dan kunjungi URL http://your-server-ip/phpmyadmin. Anda akan melihat antarmuka web phpMyAdmin di layar berikut:

Masuk dengan kredensial MySQL Anda yang dibuat sebelumnya.

Langkah 6 – Amankan phpMyAdmin

Di bagian ini, kami akan menunjukkan berbagai cara untuk mengamankan antarmuka web phpMyAdmin Anda.

Ubah Lokasi Akses phpMyAdmin

Sebaiknya ubah URL akses antarmuka phpMyAdmin Anda. Anda dapat mengubahnya dengan mengedit file phpmyadmin.conf:

nano /etc/httpd/conf.d/phpmyadmin.conf

Temukan baris berikut:

Alias /phpmyadmin /var/www/html/phpmyadmin

Ganti dengan baris berikut:

Alias /securelocation /var/www/html/phpmyadmin

Simpan dan tutup file, lalu mulai ulang layanan Apache untuk menerapkan perubahan:

systemctl restart httpd

Anda sekarang dapat mengakses antarmuka phpMyAdmin menggunakan URL http://your-server-ip/securelocation.

Izinkan phpMyAdmin dari IP Tertentu

Itu selalu merupakan ide yang baik untuk mengizinkan phpMyAdmin hanya dapat diakses dari alamat IP tertentu.

Untuk melakukannya, buka file phpmyadmin.conf:

nano /etc/httpd/conf.d/phpmyadmin.conf

Temukan baris berikut:

     <RequireAny>
       Require all granted
     </RequireAny>

Ganti dengan yang berikut ini:

<RequireAny>
    Require ip your-client-ip-address
    Require ip ::1
</RequireAny>

Simpan dan tutup file, lalu mulai ulang layanan Apache untuk menerapkan perubahan:

systemctl restart httpd

Antarmuka phpMyAdmin Anda sekarang hanya dapat diakses dari alamat IP tertentu.

Antarmuka phpMyAdmin Proteksi Kata Sandi

Anda juga dapat menambahkan lapisan perlindungan kata sandi tambahan di phpMyAdmin dengan mengatur otentikasi dasar.

Pertama, buat file otentikasi menggunakan perintah berikut:

htpasswd -c /etc/httpd/.htpasswd phpadmin

Berikan kata sandi yang aman seperti yang ditunjukkan di bawah ini:

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

Selanjutnya, buat file .htaccess di dalam direktori phpmyadmin:

nano /var/www/html/phpmyadmin/.htaccess

Tambahkan baris berikut:

AuthType basic
AuthName "Authentication Required"
AuthUserFile /etc/httpd/.htpasswd
Require valid-user

Simpan dan tutup file setelah Anda selesai.

Selanjutnya, edit file phpmyadmin.conf dan konfigurasikan Apache untuk menggunakan file .htpasswd.

nano /etc/httpd/conf.d/phpmyadmin.conf

Tambahkan baris berikut di bawah baris “AddDefaultCharset UTF-8”:

    AllowOverride All

Simpan file, lalu mulai ulang layanan Apache untuk menerapkan perubahan:

systemctl restart httpd

Langkah 7 – Uji phpMyAdmin

Pada titik ini, antarmuka phpMyAdmin diamankan dengan lapisan perlindungan kata sandi tambahan. Untuk mengujinya, buka browser web Anda dan ketik URL http://your-server-ip/securelocation. Anda akan diminta untuk memberikan kredensial login yang kami buat sebelumnya:

Ketik nama pengguna dan sandi Anda, lalu klik OK tombol. Anda akan diarahkan ke halaman login phpMyAdmin:

Berikan nama pengguna dan kata sandi MySQL Anda, lalu klik tombol Go tombol. Anda akan melihat antarmuka web phpMyAdmin Anda di layar berikut:

Kesimpulan

Dalam panduan di atas, kita mempelajari cara menginstal dan mengamankan phpMyAdmin di CentOS 8. Antarmuka phpMyAdmin Anda sekarang diamankan dengan perlindungan kata sandi tambahan. Anda dapat menggunakan metode ini untuk mengamankan server di bawah Paket Hosting VPS Atlantic.Net.

Pelajari lebih lanjut tentang layanan hosting VPS dan server pribadi Virtual kami.


Linux
  1. Cara Memasang dan Mengamankan phpMyAdmin di Debian 9

  2. Cara Memasang dan Mengamankan phpMyAdmin di Ubuntu

  3. Cara Menginstal dan Mengamankan MongoDB 4 di CentOS 8

  1. Cara Menginstal phpMyAdmin di CentOS 7

  2. Cara Menginstal phpMyAdmin di CentOS 8

  3. Cara menginstal phpMyAdmin di RHEL 8 / CentOS 8

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

  2. Cara Memasang dan Mengamankan phpMyAdmin di Ubuntu 18.04 LTS

  3. Instal dan Amankan phpMyAdmin di CentOS 8