Ana içeriğe geç

phpMyAdmin Kurulumu ve Güvenliği – Ubuntu 18.04

Bu rehberde Ubuntu 18.04 çalışan bir sunucuda
phpMyAdmin kurulumunu ve iki katmanlı güvenliğini öğreneceksiniz.
Amaç, MySQL veritabanlarını web arayüzünden güvenle yönetmek.


🧠 Teknik Özet

Bu rehber phpMyAdmin kurulumu ve güvenliğini anlatır.
Komut satırı yerine tarayıcıdan MySQL yönetimi sağlar.
Kurulum, kullanıcı ayarları ve ek Apache koruması içerir.


⚙️ Ön Koşullar

Başlamadan önce şunlar hazır olmalıdır:

  • Ubuntu 18.04 yüklü bir sunucu
  • Sudo yetkisine sahip kullanıcı
  • LAMP yığını kurulu olmalı
  • UFW güvenlik duvarı aktif olmalı
  • HTTPS (SSL) yapılandırılmış olmalı

⚠️ phpMyAdmin kesinlikle HTTP üzerinden kullanılmamalıdır.


1️⃣ phpMyAdmin Kurulumu

1. Paket listesini güncelleyin:

sudo apt update
  • Bu komut güncel paket indekslerini yeniler.

2. phpMyAdmin’i yükleyin:


sudo apt install phpmyadmin php-mbstring php-gettext
  • Bu komut phpMyAdmin ve gerekli PHP uzantılarını kurar.

⚠️ Kritik Kurulum Uyarısı

Kurulum ekranında apache2 seçeneği varsayılan olarak seçili değildir.

  • SPACE → apache2’yi işaretle

  • TAB + ENTER → devam et

  • SPACE tuşuna basılmazsa Apache entegrasyonu yapılmaz.


Diğer adımlar:

  • dbconfig-common → Yes

  • phpMyAdmin için güçlü bir parola belirleyin

  • mbstring modülünü etkinleştirin:


sudo phpenmod mbstring

1. Apache’yi yeniden başlatın:


sudo systemctl restart apache2

2️⃣ MySQL Kullanıcı Yetkilendirmesi

phpMyAdmin, parola tabanlı MySQL girişine ihtiyaç duyar.

1. MySQL konsoluna girin:


sudo mysql
  • Root kullanıcısını parola ile giriş yapacak şekilde ayarlayın:

ALTER USER 'root'@'localhost'
IDENTIFIED WITH mysql_native_password BY 'GUCLU_PAROLA';

2. Yetkileri yenileyin ve çıkın:


FLUSH PRIVILEGES;
EXIT;
  • Artık root kullanıcı phpMyAdmin üzerinden giriş yapabilir.

3️⃣ phpMyAdmin İçin Ek Güvenlik (.htaccess)

phpMyAdmin sık hedef alınır. Bu nedenle ek bir Apache kimlik doğrulaması ekliyoruz.

1. Apache yapılandırma dosyasını açın:


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

2. İlgili dizine AllowOverride All ekleyin:


AllowOverride All

3. Apache’yi yeniden başlatın:


sudo systemctl restart apache2

3.1 🔒 Apache Parola Koruması

1. .htaccess dosyasını oluşturun:


sudo nano /usr/share/phpmyadmin/.htaccess

2. İçeriği ekleyin:


AuthType Basic
AuthName "Kisitlanmis Alan"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user

3. Parola dosyasını oluşturun:


sudo htpasswd -c /etc/phpmyadmin/.htpasswd adminuser
  • Bu adım phpMyAdmin’e ikinci bir giriş ekranı ekler.

✅ Kurulumu Test Etme

1. Tarayıcıdan şu adrese gidin:


https://alan_adiniz/phpmyadmin

Sırasıyla:

  1. Apache kullanıcı adı ve parolası

  2. MySQL kullanıcı adı ve parolası

  • 🎯 Bu yapı iki aşamalı güvenlik sağlar.

❓ Sıkça Sorulan Sorular (SSS)

1. Neden iki aşamalı giriş var? Apache + MySQL çift katmanlı güvenlik sağlar.

2. auth_socket neden değiştirildi? phpMyAdmin parola gerektirir.

3. mbstring ne işe yarar? Türkçe karakterleri doğru işler.

4. .htpasswd neden web dışında? Doğrudan erişimi engeller.

🎉 Sonuç

phpMyAdmin artık kurulu ve ciddi şekilde güvenli. Veritabanlarını tarayıcıdan rahatça yönetebilirsiniz.

👉 Rabisu Bulut altyapısında phpMyAdmin’i gönül rahatlığıyla kullanabilirsiniz.