İşinizin geleceği için, bugünden doğru teknoloji.
Kurulum Rehberleri / CIELOSYNC EDİTÖR EKİBİ

Ubuntu Üzerinde Nginx ve HTTPS Kurulumu

Nginx statik site kurulumu, server block, DNS hazırlığı, Certbot sertifikası ve otomatik yenileme doğrulamasını uygulamalı örneklerle inceleyin.

Bir web sunucusunun varsayılan sayfasını görmek, uygulamanın güvenli biçimde yayımlandığı anlamına gelmez. Doğru alan adının doğru siteye gitmesi, uygulama dosyalarının izinleri, TLS sertifikası ve yenileme düzeni birlikte ele alınmalıdır. Nginx kurulumu bu bütünün yalnızca ilk adımıdır. Bu rehber Ubuntu Server 24.04 LTS üzerinde basit bir statik site ve HTTPS yayın akışı sunar.

Örnekte web.example.com adı anlatım için kullanılır. Gerçek sertifika işlemlerinde sahibi olduğunuz ve doğru sunucuya yönlendirdiğiniz alan adını kullanmalısınız; örnek alan adı için sertifika almaya çalışmayın. İç ağ laboratuvarlarında genel sertifika yerine kurumsal CA yaklaşımı gerekebilir. PHP, uygulama sunucusu veya reverse proxy yapılandırması bu statik site örneğine ayrıca eklenir.

1. DNS ve erişim yolunu hazırlayın

Alan adının A ve kullanılıyorsa AAAA kayıtlarını kontrol edin. IPv4 doğru sunucuya giderken eski bir IPv6 kaydının başka hedefe gitmesi, bazı kullanıcıların farklı sonuç görmesine neden olabilir. DNS'in yanında NAT, güvenlik duvarı ve varsa CDN katmanını da kayda alın. İstemcinin hangi uçtan geçtiği belli olmadan sertifika arızasını doğru teşhis etmek zorlaşır.

HTTP tabanlı alan adı doğrulaması kullanacaksanız doğrulama isteğinin sunucuya ulaşabilmesi gerekir. Kurum politikası buna izin vermiyorsa desteklenen DNS doğrulama yöntemi değerlendirilir. Bu tercih sertifika otomasyonunu ve gerekli yetkileri etkiler. Gereğinden geniş DNS API yetkisi vermek yerine kullanılan doğrulama yönteminin ihtiyaçlarını sınırlandırın.

2. Nginx paketini kurun

Ubuntu Nginx kurulum dokümanı, paket ve temel hizmet kontrolünü açıklar. Aşağıdaki komutlardan sonra yalnızca test için gerekli ağ erişimlerini etkinleştirin. Hizmetin çalışmasıyla dışarıdan erişilebilir olması farklı kontrol noktalarıdır.

sudo apt update
sudo apt install nginx
sudo systemctl status nginx

Sunucuda başka bir web servisi varsa port çakışmasını çözün. Mevcut bir üretim sitesinin varsayılan yapılandırmasını yedek almadan değiştirmeyin. Yeni siteyi ayrı bir yapılandırma dosyasında tutmak, hangi ayarın hangi yayına ait olduğunu anlamayı kolaylaştırır.

3. Site dizinini ve server block'u oluşturun

Örnekte /var/www/cielo-lab dizinine yalnızca statik yayın dosyaları konur. Web sürecinin bu dosyaları okuyabilmesi gerekir; tüm dizini herkese yazılabilir hâle getirmeyin. Yöneticiyle içerik dosyasını hazırlayın ve Nginx için yeni bir site tanımı oluşturun.

server {
    listen 80;
    server_name web.example.com;
    root /var/www/cielo-lab;
    index index.html;
    location / {
        try_files $uri $uri/ =404;
    }
}

Dosyayı /etc/nginx/sites-available/cielo-lab adıyla kaydedin. İlgili dizinin ve index.html dosyasının gerçekten bulunduğundan emin olun. Aynı alan adı için başka bir etkin server block varsa hangisinin cevap vereceğini çözmeden ilerlemeyin. Varsayılan siteyi kaldırmak, aynı sunucudaki diğer yayınları etkilememelidir.

sudo ln -s /etc/nginx/sites-available/cielo-lab /etc/nginx/sites-enabled/cielo-lab
sudo nginx -t
sudo systemctl reload nginx

Bağlantı zaten varsa ln komutu hata verebilir; mevcut bağlantının doğru dosyayı gösterdiğini kontrol edin. Yapılandırma testi başarısızsa yeniden yükleme yapmadan önce hatayı düzeltin. Dosya yolu, yazım ve yinelenen tanımlar ilk inceleme noktalarıdır.

4. HTTPS sertifikasını kurun

Yeni laboratuvar sunucusunda Certbot'un resmî yönergelerine uygun tek bir kurulum yöntemi kullanın. Aynı sistemde farklı paket kaynaklarından Certbot kopyaları biriktirmeyin. Snap yöntemi seçiliyorsa snapd'nin hazır olması gerekir. Certbot Nginx yönergeleri, sertifika kurulumu ve yenileme denemesini açıklar.

sudo snap install --classic certbot
sudo /snap/bin/certbot --nginx -d web.example.com
sudo /snap/bin/certbot renew --dry-run

Komuttaki alan adını kendi gerçek alanınızla değiştirin. Etkileşimli adımlarda e-posta ve kullanım şartlarını okuyarak tamamlayın. Sertifika başarıyla alınsa bile hizmetin doğru sertifikayı sunduğunu ayrıca kontrol edin. Aynı IP'de birden fazla yayın varsa SNI ve server_name eşleşmesi önemlidir.

5. Kullanıcının gördüğü sonucu doğrulayın

HTTPS adresinden siteyi açın; alan adı eşleşmesini, zinciri ve yönlendirmeyi kontrol edin. HTTP'den HTTPS'e geçişin döngü oluşturmadığından emin olun. CDN kullanılıyorsa tarayıcı-CDN ve CDN-origin bağlantılarının ayrı olduğunu unutmayın. Bir taraftaki geçerli sertifika diğer taraftaki alan adı hatasını düzeltmez.

Yanlış bir URL'nin gerçek 404 döndürmesi, dosya listelemenin açılmaması ve gizli dosyaların yayımlanmaması da kabul kapsamındadır. Uygulama eklenirse izinler ve özel dizin engelleri yeniden gözden geçirilmelidir. Bu örnekteki statik yapılandırmayı PHP uygulamasına eksiksiz güvenlik ayarı olarak taşımayın.

İşletim teslimi

Sertifika yenileme görevinin çalıştığını ve hata bildirimlerinin bir sorumluya ulaştığını doğrulayın. Yenileme denemesinin başarılı olması iyi bir başlangıçtır; sonraki sertifikanın gerçekten servis tarafından yüklenmesi de izlenmelidir. Yapılandırma ve yayın dosyalarının yedeğiyle geri dönüş adımlarını saklayın. CieloSync ile web ve altyapı ihtiyaçlarınızı konuşabilirsiniz.

SIRADAKİ BÜYÜK FİKRİNİZ İÇİN

Bir sonraki adımı birlikte atalım.

Mevcut kullanım aşağıdadır. Zorunlu olmayan bir çerez için şu an izin toplanmaz.

Çerez Politikası · KVKK Aydınlatma Metni