LAMP (Linux, Apache, MySQL, PHP) sunucu yığınının MySQL bileşenini Ubuntu Kurulumu

LAMP (Linux, Apache, MySQL, PHP) sunucu yığınının MySQL bileşenini Ubuntu’ya kurulum

1. Öncelikle sistemi güncelleyelim:
“`bash
sudo apt update
sudo apt upgrade
“`

2. MySQL Server’ı yükleyelim:
“`bash
sudo apt install mysql-server
“`

3. MySQL’in çalıştığını kontrol edelim:
“`bash
sudo systemctl status mysql
“`

4. MySQL güvenlik ayarlarını yapılandıralım:
“`bash
sudo mysql_secure_installation
“`
Bu komut size şunları soracak:
– Root şifresi için VALIDATE PASSWORD bileşenini kullanmak isteyip istemediğiniz
– Root için yeni şifre
– Anonim kullanıcıları kaldırmak isteyip istemediğiniz
– Root’un uzaktan girişine izin verilip verilmeyeceği
– Test veritabanının kaldırılıp kaldırılmayacağı
– Yetki tablolarının yeniden yüklenip yüklenmeyeceği

5. MySQL’e root olarak giriş yapalım:
“`bash
sudo mysql
“`

6. Yeni bir veritabanı kullanıcısı oluşturalım:
“`sql
CREATE USER ‘kullaniciadi’@’localhost’ IDENTIFIED BY ‘sifreniz’;
“`

7. Kullanıcıya yetki verelim:
“`sql
GRANT ALL PRIVILEGES ON *.* TO ‘kullaniciadi’@’localhost’;
FLUSH PRIVILEGES;
“`

8. MySQL’den çıkış yapalım:
“`sql
EXIT;
“`

9. Yeni kullanıcı ile giriş yaparak test edelim:
“`bash
mysql -u kullaniciadi -p
“`

Bazı faydalı MySQL komutları:
“`sql
— Veritabanlarını listele
SHOW DATABASES;

— Yeni veritabanı oluştur
CREATE DATABASE veritabani_adi;

— Veritabanını seç
USE veritabani_adi;

— Tabloları listele
SHOW TABLES;
“`

Güvenlik İpuçları:
1. Güçlü şifreler kullanın
2. Sadece gerekli yetkileri verin
3. Root erişimini sınırlayın
4. Düzenli yedek alın

MySQL servis yönetimi komutları:
“`bash
# MySQL’i durdurmak için
sudo systemctl stop mysql

# MySQL’i başlatmak için
sudo systemctl start mysql

# MySQL’i yeniden başlatmak için
sudo systemctl restart mysql

# MySQL’in otomatik başlamasını devre dışı bırakmak için
sudo systemctl disable mysql

# MySQL’in otomatik başlamasını etkinleştirmek için
sudo systemctl enable mysql
“`

MySQL’in yapılandırma dosyası konumu: `/etc/mysql/mysql.conf.d/mysqld.cnf`

Yapılandırma dosyasında değişiklik yaptıktan sonra MySQL’i yeniden başlatmayı unutmayın:
“`bash
sudo systemctl restart mysql
“`

LAMP’in diğer bileşenlerini (Apache ve PHP) kuralım:

1. Apache web sunucusunu kuralım:
“`bash
sudo apt install apache2
“`

2. Apache’nin durumunu kontrol edelim:
“`bash
sudo systemctl status apache2
“`

3. Apache’yi firewall’a ekleyelim:
“`bash
sudo ufw allow in “Apache Full”
“`

4. PHP ve gerekli modülleri kuralım:
“`bash
sudo apt install php libapache2-mod-php php-mysql php-common php-cli php-json php-common php-mbstring php-zip php-gd php-xml php-curl
“`

5. PHP sürümünü kontrol edelim:
“`bash
php -v
“`

6. Apache’yi yeniden başlatalım:
“`bash
sudo systemctl restart apache2
“`

7. Test sayfası oluşturalım:
“`bash
sudo nano /var/www/html/info.php
“`

İçine şu kodu ekleyelim:
“`php
<?php
phpinfo();
?>
“`

8. Kurulumu test etmek için tarayıcınızda şu adresi açın:
“`
http://localhost/info.php
“`
veya
“`
http://sunucu_ip_adresi/info.php
“`

Dizin İzinlerini Ayarlama:
“`bash
# Web dizininin sahipliğini www-data kullanıcısına ver
sudo chown -R www-data:www-data /var/www/html/

# Dizin izinlerini ayarla
sudo chmod -R 755 /var/www/html/
“`

Apache Temel Komutları:
“`bash
# Apache’yi durdurmak için
sudo systemctl stop apache2

# Apache’yi başlatmak için
sudo systemctl start apache2

# Apache’yi yeniden başlatmak için
sudo systemctl restart apache2

# Apache durumunu kontrol etmek için
sudo systemctl status apache2
“`

Virtual Host Oluşturma:
1. Dizin oluşturun:
“`bash
sudo mkdir /var/www/siteniz.com
“`

2. Virtual host dosyası oluşturun:
“`bash
sudo nano /etc/apache2/sites-available/siteniz.com.conf
“`

3. Şu içeriği ekleyin:
“`apache
<VirtualHost *:80>
ServerAdmin webmaster@siteniz.com
ServerName siteniz.com
ServerAlias www.siteniz.com
DocumentRoot /var/www/siteniz.com
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
“`

4. Virtual host’u etkinleştirin:
“`bash
sudo a2ensite siteniz.com.conf
sudo systemctl reload apache2
“`

Önemli Dosya Konumları:
– Apache ana yapılandırma: `/etc/apache2/apache2.conf`
– PHP yapılandırma: `/etc/php/[version]/apache2/php.ini`
– Apache log dosyaları: `/var/log/apache2/`
– Varsayılan web dizini: `/var/www/html/`

Güvenlik İpuçları:
1. Düzenli güncellemeleri yapın
2. Gereksiz PHP modüllerini kaldırın
3. PHP hata mesajlarını production ortamında kapatın
4. SSL sertifikası kurun (Let’s Encrypt kullanabilirsiniz)
5. ModSecurity gibi Web Application Firewall kullanın

SSL Sertifikası Kurulumu (Let’s Encrypt):
“`bash
sudo apt install certbot python3-certbot-apache
sudo certbot — apache
“`

İlk yorum yapan olun

Bir yanıt bırakın

E-posta hesabınız yayımlanmayacak.


*