Pardus Server Üzerinde Web Sunucusu Kurulumu

Pardus Server üzerinde Apache Web Sunucusu kurulumunu, hostname ve FQDN yapılandırmasını, sanal host ayarlarını ve test işlemlerini adım adım öğreneceksiniz.

Bu senaryo özellikle okul laboratuvar ortamı ve Active Directory benzeri domain yapısı için uygundur.


📌 Senaryo Bilgileri

ParametreDeğer
IP Adresi192.168.101.250/24
Hostnamepserver
FQDNbilisim.local
Web SunucuApache2
İşletim SistemiPardus Server

🧭 1️⃣ Sistem Hazırlığı

Öncelikle sisteminizi güncelleyin:

sudo apt update
sudo apt upgrade -y

🖥 2️⃣ Hostname ve FQDN Ayarları

🔹 Hostname Ayarlama

sudo hostnamectl set-hostname pserver

Kontrol etmek için:

hostnamectl

🔹 /etc/hosts Dosyasını Düzenleme

sudo nano /etc/hosts

Aşağıdaki satırı ekleyin veya düzenleyin:

192.168.101.250   pserver.bilisim.local   pserver

Kaydedip çıkın.


🌐 3️⃣ Apache Web Sunucu Kurulumu

Pardus, Debian tabanlı olduğu için Apache kurulumu oldukça basittir.

sudo apt install apache2 -y

Apache servisini kontrol edelim:

sudo systemctl status apache2

Servis aktif değilse:

sudo systemctl start apache2
sudo systemctl enable apache2

🔥 4️⃣ Güvenlik Duvarı Ayarı

Eğer UFW aktifse:

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reload

Durumu kontrol edin:

sudo ufw status

📂 5️⃣ Web Sitesi Dizini Oluşturma

Varsayılan dizin:

/var/www/html

Biz domain yapısına uygun özel dizin oluşturacağız:

sudo mkdir -p /var/www/bilisim.local/public_html

Yetki ayarları:

sudo chown -R www-data:www-data /var/www/bilisim.local
sudo chmod -R 755 /var/www

📄 6️⃣ Test Sayfası Oluşturma

sudo nano /var/www/bilisim.local/public_html/index.html

İçerik:

<!DOCTYPE html>
<html>
<head>
    <title>Bilisim Local</title>
</head>
<body>
    <h1>Web Sunucu Başarıyla Çalışıyor!</h1>
    <p>Sunucu: pserver.bilisim.local</p>
    <p>IP: 192.168.101.250</p>
</body>
</html>

🌍 7️⃣ Apache Virtual Host Tanımlama

Yeni bir konfigürasyon dosyası oluşturun:

sudo nano /etc/apache2/sites-available/bilisim.local.conf

İçerik:

<VirtualHost *:80>
    ServerAdmin admin@bilisim.local
    ServerName pserver.bilisim.local
    ServerAlias bilisim.local
    DocumentRoot /var/www/bilisim.local/public_html

    <Directory /var/www/bilisim.local/public_html>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/bilisim_error.log
    CustomLog ${APACHE_LOG_DIR}/bilisim_access.log combined
</VirtualHost>

Siteyi Aktifleştirme

sudo a2ensite bilisim.local.conf
sudo a2dissite 000-default.conf
sudo systemctl reload apache2

🧪 8️⃣ Test Aşaması

İstemci bilgisayarda DNS ayarı yoksa test için:

Windows bilgisayarda:

C:\Windows\System32\drivers\etc\hosts

Şu satırı ekleyin:

192.168.101.250 pserver.bilisim.local

Ardından tarayıcıya yazın:

http://pserver.bilisim.local

📊 Ağ Diyagramı

Client PC
   │
   │ HTTP (80)
   ▼
192.168.101.250
pserver
bilisim.local
   │
Apache2
   │
/var/www/bilisim.local

🔐 9️⃣ (Opsiyonel) PHP Desteği

PHP kurulumu:

sudo apt install php libapache2-mod-php -y
sudo systemctl restart apache2

Test için:

sudo nano /var/www/bilisim.local/public_html/info.php
<?php phpinfo(); ?>

🏫 Eğitim Ortamı İçin Öneriler

✔ Aynı sunucuda DNS kurarak gerçek domain çözümlemesi yapabilirsiniz
✔ SSL için self-signed sertifika oluşturabilirsiniz
✔ Birden fazla VirtualHost tanımlayarak çoklu site senaryosu oluşturabilirsiniz
✔ Apache log dosyaları üzerinden trafik analizi yaptırabilirsiniz


🧠 Web Sunucu Mantığı (Öğrenci Seviyesi Açıklama)

  1. Kullanıcı tarayıcıdan site adresini girer

  2. DNS IP adresini çözer

  3. İstek Apache’ye gelir

  4. Apache ilgili klasördeki dosyayı kullanıcıya gönderir


🎯 Sonuç

Bu makalede:

✔ Pardus’ta hostname ve FQDN ayarladık
✔ Apache kurduk
✔ VirtualHost tanımladık
✔ Web sitesini yayınladık
✔ Test ettik


İstersen sana:

  • 🖼 Web Sunucu infografik görseli

  • 🔐 HTTPS + SSL eğitim makalesi

  • 🏢 Active Directory benzeri domain + DNS + Web entegrasyonu

  • 📘 Okul laboratuvarı için uygulama senaryosu PDF

hazırlayabilirim.



Bu rehberde, Pardus (Debian tabanlı) işletim sistemi üzerinde Apache, MariaDB ve PHP (LAMP yığını) kurulumunu, FQDN yapılandırmasını ve ağ ayarlarını detaylandıracağız.

1. Adım: Hostname ve FQDN Yapılandırması

Bir sunucunun ağ üzerinde tanımlanabilir olması için FQDN (Fully Qualified Domain Name) ayarlarının doğru yapılması kritiktir.

  1. Hostname Değiştirme:

    Terminali açın ve makine adını pserver olarak güncelleyin:

    Bash
    sudo hostnamectl set-hostname pserver
    
  2. Hosts Dosyasını Düzenleme:

    IP adresi ile FQDN'i eşleştirmek için /etc/hosts dosyasını düzenleyin:

    Bash
    sudo nano /etc/hosts
    

    Dosyaya şu satırı ekleyin:

    192.168.101.250 pserver.bilisim.local pserver

  3. Kontrol:

    Değişikliklerin doğruluğunu şu komutla teyit edin:

    Bash
    hostname -f
    # Çıktı: pserver.bilisim.local
    

2. Adım: Sistem Güncelleme ve Apache Kurulumu

Sunucunun güncel olması güvenlik için ilk kuraldır.

Bash
sudo apt update && sudo apt upgrade -y
sudo apt install apache2 -y

Apache'yi Başlatma ve Etkinleştirme:

Bash
sudo systemctl start apache2
sudo systemctl enable apache2

3. Adım: Veritabanı (MariaDB) Kurulumu

Web uygulamalarınızın verilerini saklamak için güvenilir bir SQL sunucusu kuralım.

Bash
sudo apt install mariadb-server -y

Güvenlik Yapılandırması:

Aşağıdaki komutu çalıştırarak root şifresi belirleyin ve gereksiz erişimleri kapatın:

Bash
sudo mysql_secure_installation

4. Adım: PHP ve Gerekli Modüllerin Kurulumu

Pardus üzerinde dinamik içerikler (Django projelerinizden farklı olarak PHP tabanlı yapılar için) PHP kurulumunu gerçekleştirelim:

Bash
sudo apt install php libapache2-mod-php php-mysql php-cli php-curl php-gd php-mbstring php-xml -y

5. Adım: Apache Sanal Konak (Virtual Host) Yapılandırması

bilisim.local adresine gelen istekleri karşılamak için bir yapılandırma dosyası oluşturalım.

  1. Dizin Oluşturma:

    Bash
    sudo mkdir -p /var/www/bilisim.local/public_html
    sudo chown -R $USER:$USER /var/www/bilisim.local/public_html
    
  2. Konfigürasyon Dosyası:

    Bash
    sudo nano /etc/apache2/sites-available/bilisim.local.conf
    

    İçine şu bilgileri yapıştırın:

    Apache
    <VirtualHost *:80>
        ServerAdmin admin@bilisim.local
        ServerName bilisim.local
        ServerAlias pserver.bilisim.local
        DocumentRoot /var/www/bilisim.local/public_html
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
    </VirtualHost>
    
  3. Siteyi Aktif Etme:

    Bash
    sudo a2ensite bilisim.local.conf
    sudo a2dissite 000-default.conf
    sudo systemctl reload apache2
    

6. Adım: Güvenlik Duvarı (UFW) Ayarları

Sunucunuza web trafiği için izin vermeyi unutmayın:

Bash
sudo ufw allow 'Apache Full'
sudo ufw enable

Özet ve Sonuç

Artık 192.168.101.250 IP adresine sahip Pardus sunucunuz, bilisim.local FQDN'i üzerinden hizmet vermeye hazır. /var/www/bilisim.local/public_html dizinine atacağınız bir index.php dosyası ile sunucunuzu test edebilirsiniz.

Not: Eğer bu sunucuya ağdaki diğer bilgisayarlardan bilisim.local yazarak erişmek isterseniz, ağınızdaki DNS sunucusuna bir kayıt eklemeli veya istemci bilgisayarların hosts dosyasına bu IP'yi tanımlamalısınız.


🔐 Pardus Sunucuda HTTPS + SSL Kurulumu

(192.168.101.250 – pserver.bilisim.local)

Bu makalede Pardus Server üzerinde çalışan Apache HTTP Server için HTTPS (SSL/TLS) yapılandırmasını adım adım öğreneceğiz.

Senaryo bilgilerimiz:

ParametreDeğer
IP192.168.101.250
Hostnamepserver
FQDNpserver.bilisim.local
Domainbilisim.local
Web SunucuApache2

📌 HTTPS Nedir?

HTTP → Şifresiz veri iletir
HTTPS → SSL/TLS ile şifreli veri iletir

🔐 Amaç:

  • Veri güvenliği

  • Kimlik doğrulama

  • Man-in-the-Middle saldırılarını engelleme


🧭 1️⃣ SSL Modülünü Aktifleştirme

Apache SSL modülünü açıyoruz:

sudo a2enmod ssl
sudo systemctl restart apache2

🔑 2️⃣ Self-Signed SSL Sertifikası Oluşturma

(Laboratuvar ve okul ortamı için)

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/ssl/private/bilisim.local.key \
-out /etc/ssl/certs/bilisim.local.crt

Sizden şu bilgiler istenir:

  • Country Name: TR

  • Organization: Bilişim Lisesi

  • Common Name: pserver.bilisim.local

⚠️ Common Name mutlaka FQDN olmalı.


📂 3️⃣ Apache HTTPS VirtualHost Oluşturma

Yeni dosya oluşturun:

sudo nano /etc/apache2/sites-available/bilisim.local-ssl.conf

İçerik:

<VirtualHost *:443>
    ServerName pserver.bilisim.local
    DocumentRoot /var/www/bilisim.local/public_html

    SSLEngine on
    SSLCertificateFile /etc/ssl/certs/bilisim.local.crt
    SSLCertificateKeyFile /etc/ssl/private/bilisim.local.key

    <Directory /var/www/bilisim.local/public_html>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/ssl_error.log
    CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined
</VirtualHost>

🚀 4️⃣ SSL Siteyi Aktifleştirme

sudo a2ensite bilisim.local-ssl.conf
sudo systemctl reload apache2

🔥 5️⃣ Firewall Ayarı

sudo ufw allow 443/tcp
sudo ufw reload

🧪 6️⃣ Test Aşaması

Tarayıcıya yazın:

https://pserver.bilisim.local

Self-signed olduğu için:

⚠️ “Güvenli değil” uyarısı çıkar
Bu normaldir (gerçek sertifika değil).


🔄 7️⃣ HTTP → HTTPS Yönlendirme

Mevcut 80 port VirtualHost dosyasını açın:

sudo nano /etc/apache2/sites-available/bilisim.local.conf

İçine şunu ekleyin:

<VirtualHost *:80>
    ServerName pserver.bilisim.local
    Redirect permanent / https://pserver.bilisim.local/
</VirtualHost>

Apache yeniden başlatın:

sudo systemctl restart apache2

🏢 Gerçek Sertifika (Let’s Encrypt)

Gerçek ortamda ücretsiz sertifika için:

Let's Encrypt

Kurulum:

sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache

Domain internetten erişilebilir olmalıdır.


📊 HTTPS Çalışma Mantığı

Kullanıcı
   │
   │ HTTPS (443)
   ▼
Apache SSL
   │
Sertifika Doğrulama
   │
Şifreli Veri İletimi

🧠 Eğitim İçin Deney Senaryosu

Öğrencilere şu deneyleri yaptırabilirsiniz:

✔ Wireshark ile HTTP trafiğini inceleme
✔ HTTPS trafiğinde verinin şifreli olduğunu gösterme
✔ Self-signed ile gerçek sertifika farkını karşılaştırma
✔ Sertifika süresini değiştirerek test etme


🔐 Güvenlik İyileştirmeleri

Apache SSL yapılandırmasını güçlendirmek için:

sudo nano /etc/apache2/mods-available/ssl.conf

Şu ayarları aktif edin:

SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
SSLCipherSuite HIGH:!aNULL:!MD5

Apache yeniden başlatın:

sudo systemctl restart apache2

🎯 Sonuç

Bu makalede:

✔ SSL modülü aktifleştirildi
✔ Self-signed sertifika oluşturuldu
✔ HTTPS VirtualHost yazıldı
✔ HTTP → HTTPS yönlendirme yapıldı
✔ Gerçek sertifika alternatifi anlatıldı



🔐 Pardus Sunucuda HTTPS + SSL Kurulumu

(192.168.101.250 – pserver.bilisim.local)

Bu makalede Pardus Server üzerinde çalışan Apache HTTP Server için HTTPS (SSL/TLS) yapılandırmasını adım adım öğreneceğiz.

Senaryo bilgilerimiz:

ParametreDeğer
IP    192.168.101.250
Hostname    pserver
FQDN    pserver.bilisim.local
Domain    bilisim.local
Web Sunucu    Apache2

📌 HTTPS Nedir?

HTTP → Şifresiz veri iletir
HTTPS → SSL/TLS ile şifreli veri iletir

🔐 Amaç:

  • Veri güvenliği

  • Kimlik doğrulama

  • Man-in-the-Middle saldırılarını engelleme


🧭 1️⃣ SSL Modülünü Aktifleştirme

Apache SSL modülünü açıyoruz:

sudo a2enmod ssl
sudo systemctl restart apache2

🔑 2️⃣ Self-Signed SSL Sertifikası Oluşturma

(Laboratuvar ve okul ortamı için)

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/ssl/private/bilisim.local.key \
-out /etc/ssl/certs/bilisim.local.crt

Sizden şu bilgiler istenir:

  • Country Name: TR

  • Organization: Bilişim Lisesi

  • Common Name: pserver.bilisim.local

⚠️ Common Name mutlaka FQDN olmalı.


📂 3️⃣ Apache HTTPS VirtualHost Oluşturma

Yeni dosya oluşturun:

sudo nano /etc/apache2/sites-available/bilisim.local-ssl.conf

İçerik:

<VirtualHost *:443>
    ServerName pserver.bilisim.local
    DocumentRoot /var/www/bilisim.local/public_html

    SSLEngine on
    SSLCertificateFile /etc/ssl/certs/bilisim.local.crt
    SSLCertificateKeyFile /etc/ssl/private/bilisim.local.key

    <Directory /var/www/bilisim.local/public_html>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/ssl_error.log
    CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined
</VirtualHost>

🚀 4️⃣ SSL Siteyi Aktifleştirme

sudo a2ensite bilisim.local-ssl.conf
sudo systemctl reload apache2

🔥 5️⃣ Firewall Ayarı

sudo ufw allow 443/tcp
sudo ufw reload

🧪 6️⃣ Test Aşaması

Tarayıcıya yazın:

https://pserver.bilisim.local

Self-signed olduğu için:

⚠️ “Güvenli değil” uyarısı çıkar
Bu normaldir (gerçek sertifika değil).


🔄 7️⃣ HTTP → HTTPS Yönlendirme

Mevcut 80 port VirtualHost dosyasını açın:

sudo nano /etc/apache2/sites-available/bilisim.local.conf

İçine şunu ekleyin:

<VirtualHost *:80>
    ServerName pserver.bilisim.local
    Redirect permanent / https://pserver.bilisim.local/
</VirtualHost>

Apache yeniden başlatın:

sudo systemctl restart apache2

🏢 Gerçek Sertifika (Let’s Encrypt)

Gerçek ortamda ücretsiz sertifika için:

Let's Encrypt

Kurulum:

sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache

Domain internetten erişilebilir olmalıdır.


📊 HTTPS Çalışma Mantığı

Kullanıcı
   │
   │ HTTPS (443)
   ▼
Apache SSL
   │
Sertifika Doğrulama
   │
Şifreli Veri İletimi

🧠 Eğitim İçin Deney Senaryosu

Öğrencilere şu deneyleri yaptırabilirsiniz:

✔ Wireshark ile HTTP trafiğini inceleme
✔ HTTPS trafiğinde verinin şifreli olduğunu gösterme
✔ Self-signed ile gerçek sertifika farkını karşılaştırma
✔ Sertifika süresini değiştirerek test etme


🔐 Güvenlik İyileştirmeleri

Apache SSL yapılandırmasını güçlendirmek için:

sudo nano /etc/apache2/mods-available/ssl.conf

Şu ayarları aktif edin:

SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
SSLCipherSuite HIGH:!aNULL:!MD5

Apache yeniden başlatın:

sudo systemctl restart apache2

🎯 Sonuç

Bu makalede:

✔ SSL modülü aktifleştirildi
✔ Self-signed sertifika oluşturuldu
✔ HTTPS VirtualHost yazıldı
✔ HTTP → HTTPS yönlendirme yapıldı
✔ Gerçek sertifika alternatifi anlatıldı





Yorumlar

Bu blogdaki popüler yayınlar

Android Telefon/Tablet Ekranını Pardus ETAP 23 Yüklü Akıllı Tahtaya Yansıtma

Pardus Etap 23’de Unutulmuş Etap Yetkili Parolasını Sıfırlama

Pardus Etap 23 Yazıcı Kurulumu