phpMyAdmin adalah alat administrasi sumber terbuka dan gratis untuk MySQL dan MariaDB. Sebagai aplikasi web portabel yang ditulis terutama dalam PHP, ini telah menjadi salah satu alat administrasi MySQL paling populer, terutama untuk layanan hosting web. Dalam panduan ini, kita akan menginstal phpMyAdmin dengan Apache di CentOS 7.
Prasyarat penting sebelum menggunakan panduan ini adalah menginstal tumpukan LAMP (Linux, Apache, MariaDB, dan PHP) di server CentOS 7 Anda. Tumpukan LAMP adalah platform yang akan digunakan untuk melayani antarmuka phpMyAdmin kami (MariaDB juga merupakan perangkat lunak manajemen basis data yang ingin kami kelola). Jika Anda belum memiliki instalasi LAMP di server Anda, klik di sini untuk membaca tutorial kami tentang menginstal LAMP di CentOS 7.
Langkah 1:Tambahkan repo EPEL:
Kita perlu menambahkan repo EPEL (Paket Ekstra untuk Linux Enterprise) ke server kita sebelum melanjutkan instalasi karena berisi banyak paket tambahan, termasuk paket phpMyAdmin yang kita cari. Untuk menginstal, ketik perintah di bawah ini:
sudo yum install epel-release
Langkah 2:Instal phpMyAdmin:
Ketik perintah di bawah ini untuk menginstal paket phpMyAdmin menggunakan sistem pengemasan yum diikuti oleh y untuk melanjutkan:
sudo yum install phpmyadmin
Setelah berhasil menginstal, Anda akan mendapatkan hasil yang sama seperti yang ditunjukkan di bawah ini:
Instalasi menyertakan file konfigurasi Apache yang telah ditempatkan di direktori yang sesuai. Kita perlu memodifikasi file konfigurasi ini agar instalasi kita bekerja dengan sempurna untuk kebutuhan kita.
Buka phpMyAdmin.conf
di /etc/httpd
file di editor teks (nano dalam panduan ini) untuk membuat beberapa modifikasi:
sudo nano /etc/httpd/conf.d/phpMyAdmin.conf
Saat ini, pengaturan dalam file konfigurasi dikonfigurasi untuk menolak akses ke koneksi apa pun yang tidak dibuat dari server itu sendiri. Karena kami menilai server kami dari jarak jauh (melalui ssh), kami perlu memodifikasi beberapa baris untuk menentukan alamat IP koneksi rumah Anda.
Lokasi pertama adalah <Directory /usr/share/phpMyAdmin/>
bagian seperti yang ditunjukkan di bawah ini:
Ubah baris yang bertuliskan Require ip 127.0.0.1
atau Allow from 127.0.0.1
untuk merujuk ke alamat IP koneksi rumah Anda.
Catatan: Jika Anda memerlukan bantuan untuk menemukan IP koneksi rumah Anda, klik di sini untuk memeriksanya.
Lokasi kedua adalah <Directory /usr/share/phpMyAdmin/setup/>
bagian seperti yang ditunjukkan di bawah ini:
Juga, ubah baris yang bertuliskan Require ip 127.0.0.1
atau Allow from 127.0.0.1
untuk merujuk ke alamat IP koneksi rumah Anda.
Catatan: Alamat IP koneksi rumah Anda berbeda dari alamat IP VPS Anda.
Setelah melakukan konfigurasi, restart web server Apache dengan mengetik:
sudo systemctl restart httpd.service
Untuk mengakses antarmuka, kunjungi alamat IP publik atau nama domain server Anda diikuti oleh /phpMyAdmin, di browser web Anda:
http://server_domain_or_IP/phpMyAdmin
Masuk ke antarmuka phpmyadmin menggunakan nama pengguna root dan kata sandi administratif yang Anda atur selama instalasi MySQL. Setelah login, tampilan antarmuka pengguna seperti screenshot di bawah ini:
MENYELAMATKAN INSTANSI PHPMYADMIN ANDA
Mengamankan phpmyadmin Anda penting untuk mencegah akses yang tidak sah. Cara mudah untuk melakukannya adalah dengan mengubah lokasi antarmuka dari /phpMyAdmin ke sesuatu yang lain untuk mencegah upaya paksa bot otomatis.
Buka file konfigurasi menggunakan perintah di bawah ini:
sudo nano /etc/httpd/conf.d/phpMyAdmin.conf
Dua baris di bawah ini adalah alias default yang menyajikan konten kepada kami dari /usr/share/phpMyAdmin
lokasi jika kami mengakses nama domain atau alamat IP situs kami, diikuti oleh /phpMyAdmin
atau /phpmyadmin
.
Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin
Kami akan menonaktifkan alias default ini karena tingginya tingkat di mana mereka ditargetkan oleh bot dan pengguna jahat. Untuk tujuan keamanan, kita harus memutuskan alias kita sendiri dengan mempertimbangkan dua aturan ini:
- Seharusnya tidak menunjukkan tujuan lokasi URL.
- Seharusnya mudah diingat tapi tidak mudah ditebak.
Dalam panduan ini, kita akan menggunakan /somethingelse
.
Untuk menerapkan perubahan kami, kami akan mengomentari baris yang ada (Anda dapat menghapusnya sepenuhnya) dan menambahkan baris kami sendiri:
#Alias /phpMyAdmin /usr/share/phpMyAdmin
#Alias /phpmyadmin /usr/share/phpMyAdmin
Alias /somethingelse /usr/share/phpMyAdmin
Simpan dan tutup file kemudian lanjutkan untuk me-restart httpd dengan perintah di bawah ini:
sudo systemctl restart httpd.service
Jika Anda mengunjungi lokasi instalasi phpMyAdmin Anda sebelumnya, Anda akan mendapatkan error 404:
http://server_domain_or_IP/phpMyAdmin
http://server_domain_or_IP/nothingtosee
Anda juga dapat mengamankan phpMyAdmin menempatkan gateway di depan seluruh aplikasi dengan menggunakan .htaccess
bawaan Apache fungsi otentikasi dan otorisasi.
Pertama, kita perlu mengaktifkan penggunaan file .htaccess override dengan mengedit file konfigurasi Apache kita. Buka phpmyadmin.conf dengan perintah di bawah ini:
sudo nano /etc/httpd/conf.d/phpMyAdmin.conf
Tambahkan AllowOverride All
ke bagian bawah <Directory /usr/share/phpmyadmin>
bagian dari file konfigurasi seperti yang ditunjukkan di bawah ini:
Simpan file sebelum menutup kemudian lanjutkan untuk me-restart Apache dengan perintah:
sudo systemctl restart apache2
Setelah mengaktifkan penggunaan .htaccess, kita perlu membuat file untuk menerapkan keamanan sepenuhnya dengan mengetikkan perintah di bawah ini:
sudo nano /usr/share/phpmyadmin/.htaccess
AuthType Basic
AuthName "Restricted Files"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user
Anda dapat membaca lebih lanjut di htaccess
di sini.
Ketik perintah di bawah ini untuk menambahkan kata sandi ke htaccess
berkas:
sudo htpasswd -c /etc/httpd/pma_pass username
Untuk menambahkan pengguna tambahan untuk diautentikasi, ketik perintah yang sama lagi tetapi kali ini tanpa -c
bendera, dan dengan nama pengguna baru:
sudo htpasswd /etc/httpd/pma_pass seconduser
Dengan ini, setiap kali Anda mengakses phpMyAdmin di domain Anda, Anda akan diminta untuk memasukkan nama akun dan kata sandi tambahan yang baru saja Anda konfigurasikan seperti yang ditunjukkan di bawah ini:
Dengan ini, setiap kali Anda mengakses phpMyAdmin di domain Anda, Anda akan diminta untuk nama akun dan kata sandi tambahan yang baru saja Anda konfigurasikan seperti yang ditunjukkan di bawah ini:
Setelah mengetik kata sandi otentikasi Apache, Anda akan diarahkan ke halaman otentikasi phpMyAdmin asli untuk memasukkan kredensial Anda yang lain.