format_list_bulletedBu İçerikte Bahsedilen Konular
- arrow_rightNginx Proxy Manager Nedir ve Neden Kullanılmalı?
- arrow_rightNginx Proxy Manager'ın Temel Özellikleri
- arrow_rightNginx Proxy Manager Kurulumu
- arrow_rightDocker Compose ile Kurulum Adımları
- arrow_rightKurulum Sonrası İlk Yapılandırma
- arrow_rightReverse Proxy Yapılandırması
- arrow_rightYeni Proxy Host Oluşturma
- arrow_rightProxy Host Ayarları ve İleri Seviye Seçenekler
- arrow_rightSSL Sertifikası Yönetimi
- arrow_rightLet's Encrypt ile Ücretsiz SSL
- arrow_rightSSL Sertifika Türleri Karşılaştırması
- arrow_rightErişim Kontrolü ve Güvenlik
- arrow_rightIP Erişim Listesi Oluşturma
- arrow_rightŞifre Korumalı Alanlar
- arrow_rightGüvenlik Başlıkları
- arrow_rightYaygın Kullanım Senaryoları
- arrow_right1. Docker Container'ları Yönetme
- arrow_right2. Mikroservis Mimarisi
- arrow_right3. Development/Staging Ortamları
- arrow_right4. Web Sitesi Taşıma
- arrow_rightYapılandırma Örnekleri
- arrow_rightWordPress Kurulumu
- arrow_rightNode.js Uygulaması
- arrow_rightMultiple Domain Yönetimi
- arrow_rightPerformance Optimizasyonu
- arrow_rightÖnbellek Yapılandırması
- arrow_rightKaynak Tahsisi
- arrow_rightYedekleme ve Felaket Kurtarma
- arrow_rightSSS - Sıkça Sorulan Sorular
- arrow_rightNginx Proxy Manager hangi işletim sistemlerinde çalışır?
- arrow_rightLet's Encrypt sertifikası ne kadar süre geçerlidir?
- arrow_rightBirden fazla subdomain yönetebilir miyim?
- arrow_rightSSL olmadan kullanabilir miyim?
- arrow_rightNginx Proxy Manager'ı production ortamında kullanabilir miyim?
- arrow_rightSonuç
Nginx Proxy Manager Nedir ve Neden Kullanılmalı?
Nginx Proxy Manager, reverse proxy ve SSL sertifika yönetimini kolaylaştıran açık kaynaklı bir araçtır. Docker ortamında çalışan bu yazılım, teknik bilgi gerektirmeden web sunucularınızı yönetmenizi sağlar. İstatistiklere göre, web uygulamalarının %67'si güvenlik açıklarından korunmak için reverse proxy kullanmaktadır (2024 siber güvenlik raporları).
Bu araç, özellikle ev kullanıcılarından küçük-orta ölçekli işletmelere kadar geniş bir yelpazede tercih edilmektedir. VPS veya VDS sunucular üzerinde çalıştırılarak, birden fazla web sitesinin tek bir IP adresi üzerinden sunulması mümkün hale gelir.
Nginx Proxy Manager'ın Temel Özellikleri
- SSL/TLS Sertifika Yönetimi: Let's Encrypt entegrasyonu ile ücretsiz SSL sertifikası sağlama ve otomatik yenileme.
- Reverse Proxy: Trafiği farklı backend sunucularına yönlendirme.
- Basit Web Arayüzü: Grafiksel kullanıcı arayüzü ile kolay yapılandırma.
- Access Listeleri: IP bazlı erişim kontrolü ve şifre korumalı alanlar.
- 301/302 Yönlendirmeleri: Domain yönlendirme işlemleri.
Nginx Proxy Manager Kurulumu
Kurulum, Docker ve Docker Compose kullanılarak gerçekleştirilir. Öncelikle sunucunuzda Docker'ın kurulu olması gerekmektedir. Ubuntu 24.04 gibi modern Linux dağıtımlarında kurulum oldukça basittir.
Docker Compose ile Kurulum Adımları
Aşağıdaki docker-compose.yml dosyası ile Nginx Proxy Manager'ı başlatabilirsiniz:
version: '3.8'
services:
nginx-proxy-manager:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80'
- '443:443'
- '81:81'
environment:
DB_MYSQL_HOST: "db"
DB_MYSQL_PORT: 3306
DB_MYSQL_USER: "npm"
DB_MYSQL_PASSWORD: "npm"
DB_MYSQL_NAME: "npm"
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
depends_on:
- db
db:
image: 'jc21/mariadb:latest'
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: 'npm'
MYSQL_DATABASE: 'npm'
MYSQL_USER: 'npm'
MYSQL_PASSWORD: 'npm'
volumes:
- ./mysql:/var/lib/mysql
Kurulum Sonrası İlk Yapılandırma
Kurulum tamamlandıktan sonra tarayıcınızda http://sunucu-ip:81 adresine giderek yönetim paneline erişebilirsiniz. Varsayılan giriş bilgileri:
- E-posta: [email protected]
- Şifre: changeme
Güvenlik nedeniyle ilk girişte şifrenizi değiştirmeniz önerilir. Bu aşamada NVMe SSD kullanılan sunucularda performans artışı yaşayabilirsiniz.
Reverse Proxy Yapılandırması
Reverse proxy, istemci isteklerini arka plandaki sunuculara ileten bir sunucu mekanizmasıdır. Nginx Proxy Manager ile bu yapılandırmayı görsel arayüz üzerinden kolayca yapabilirsiniz.
Yeni Proxy Host Oluşturma
Proxy host oluşturmak için şu adımları izleyin:
- Yönetim panelinde "Proxy Hosts" sekmesine tıklayın.
- "Add Proxy Host" butonuna basın.
- Domain adınızı girin (örneğin: uygulama.com).
- Scheme bölümünde http veya https seçin.
- Forward Hostname/IP bölümüne hedef sunucu IP adresini yazın.
- Forward Port bölümüne hedef portu girin (genellikle 3000, 5000 vb.).
- "Save" butonuna tıklayarak kaydedin.
Proxy Host Ayarları ve İleri Seviye Seçenekler
Gelişmiş ayarlar bölümünde aşağıdaki seçenekleri yapılandırabilirsiniz:
- Websockets Desteği: Gerçek zamanlı iletişim için etkinleştirin.
- İleriye Dönük Başlıklar: X-Real-IP, X-Forwarded-For gibi başlıkları ekleyin.
- Özel Konumlar: Belirli URL yollarını farklı backend'lere yönlendirin.
- Önbellek Ayarları: Statik içerikler için önbellek etkinleştirin.
Bu yapılandırma, özellikle mikroservis mimarilerinde kritik öneme sahiptir. Headless CMS mimarisi kullanıyorsanız, farklı servislerin tek bir domain üzerinden sunulması mümkün olur.
SSL Sertifikası Yönetimi
SSL sertifikası, web sitenizin güvenliğini sağlamanın yanı sıra arama motoru sıralamalarında da olumlu etki yaratır. Google'ın 2024 verilerine göre, HTTPS kullanan siteler %15 daha yüksek tıklama oranına sahiptir.
Let's Encrypt ile Ücretsiz SSL
Nginx Proxy Manager, Let's Encrypt entegrasyonu ile ücretsiz SSL sertifikası sunar. Sertifika talep etmek için:
- Proxy Host düzenleme ekranında "SSL" sekmesine gidin.
- "Request a new SSL Certificate" seçeneğini işaretleyin.
- "Force SSL" ve "HTTP/2 Support" seçeneklerini etkinleştirin.
- E-posta adresinizi girin ve kabul edin.
- "Save" butonuna tıklayın.
Sertifikalar otomatik olarak yenilenir, böylece manuel işlem yapmanıza gerek kalmaz. Anycast DNS kullanarak SSL doğrulama süreçlerini hızlandırabilirsiniz.
SSL Sertifika Türleri Karşılaştırması
| Sertifika Türü | Ücret | Doğrulama | Kullanım Alanı |
|---|---|---|---|
| Let's Encrypt (Ücretsiz) | Ücretsiz | Otomatik | Kişisel projeler, küçük web siteleri |
| DV (Domain Validation) | Yıllık ~$10-50 | E-posta/Doğrulama | KOBİ web siteleri |
| OV (Organization Validation) | Yıllık ~$50-200 | Organizasyon Doğrulama | İşletme web siteleri |
| EV (Extended Validation) | Yıllık ~$200-600 | Kapsamlı Doğrulama | E-ticaret, bankacılık |
Erişim Kontrolü ve Güvenlik
Nginx Proxy Manager, gelişmiş güvenlik özellikleri sunar. IP bazlı erişim kontrolü, şifre korumalı alanlar ve temel kimlik doğrulama gibi özellikler mevcuttur.
IP Erişim Listesi Oluşturma
Belirli IP adreslerine veya IP aralıklarına erişim izni verebilir veya engelleyebilirsiniz. Bu özellik, yönetim panellerinizi yetkisiz erişimden korur. Örneğin:
- Yalnızca belirli IP'lerden yönetim paneline erişim.
- Belirli ülkelerden gelen trafiği engelleme.
- Bulut sunucu IP'lerine izin verme.
Şifre Korumalı Alanlar
Geliştirme ortamlarınızı veya staging sunucularınızı şifre ile koruyabilirsiniz. Bu, arama motorlarının test ortamlarını indexlemesini engeller ve yetkisiz erişimi önler.
Güvenlik Başlıkları
SSL sekmesinde çeşitli güvenlik başlıklarını etkinleştirebilirsiniz:
- HSTS: HTTP Strict Transport Security.
- Content Security Policy: XSS koruması.
- X-Frame-Options: Clickjacking koruması.
- X-Content-Type-Options: MIME type sniffing engelleme.
Bu güvenlik önlemleri, veritabanı güvenliği ile birlikte kapsamlı bir koruma sağlar.
Yaygın Kullanım Senaryoları
Nginx Proxy Manager, çeşitli senaryolarda kullanılabilir. İşte en popüler kullanım alanları:
1. Docker Container'ları Yönetme
Docker Compose veya Swarm kullanarak çalıştırdığınız container'ları tek bir domain altında sunabilirsiniz. Örneğin:
- WordPress: uygulama.com
- Home Assistant: smart.uygulama.com
- Pi-hole: dns.uygulama.com
2. Mikroservis Mimarisi
MinIO veya diğer mikroservislerinizi tek bir proxy üzerinden erişilebilir hale getirebilirsiniz. Bu yaklaşım, servislerin izole edilmesini sağlarken tek bir giriş noktası sunar.
3. Development/Staging Ortamları
Geliştirme ortamlarınızı production'dan ayırarak güvenli bir şekilde test yapabilirsiniz. Alan adı seçiminde .com alan adı ile .tr alan adı arasındaki farkları göz önünde bulundurabilirsiniz.
4. Web Sitesi Taşıma
Sunucu taşıma süreçlerinde, eski sunucuya gelen istekleri yeni sunucuya yönlendirebilirsiniz. Bu sayede kesinti süresini minimize edebilirsiniz. Detaylı bilgi için web sitesi taşıma rehberimize göz atabilirsiniz.
Yapılandırma Örnekleri
WordPress Kurulumu
# WordPress için örnek yapılandırma
Domain: wordpress.example.com
Scheme: http
Forward Hostname: 172.17.0.1
Forward Port: 8080
SSL Settings:
- Force SSL: Enable
- HTTP/2 Support: Enable
Advanced Settings:
- Websockets: Enable
- Block Common Exploits: Enable
Node.js Uygulaması
# Node.js uygulaması için yapılandırma
Domain: api.example.com
Scheme: http
Forward Hostname: 172.17.0.2
Forward Port: 3000
SSL Settings:
- Let's Encrypt Certificate
- HSTS Enable
Advanced:
- Websockets: Enable
- Custom Nginx Config:
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
Multiple Domain Yönetimi
Birden fazla domain'i tek bir Nginx Proxy Manager örneği üzerinden yönetebilirsiniz. Her domain için ayrı proxy host oluşturmanız yeterlidir. Bu yaklaşım, sanal sunucu kaynaklarının daha verimli kullanılmasını sağlar.
Performance Optimizasyonu
Nginx Proxy Manager'ın performansını artırmak için aşağıdaki yöntemleri uygulayabilirsiniz:
Önbellek Yapılandırması
- Statik İçerik Önbelleği: CSS, JS ve resim dosyaları için tarayıcı önbelleği etkinleştirin.
- Gzip Sıkıştırma: Transfer boyutunu azaltmak için sıkıştırma kullanın.
- Keep-Alive Bağlantıları: Backend sunucuları ile kalıcı bağlantılar kurun.
Kaynak Tahsisi
Yüksek trafikli siteler için depolama sunucusu ve yeterli RAM ataması yapmanızı öneririz. Nginx Proxy Manager, düşük kaynak tüketimi ile bilinir ancak yüzlerce eşzamanlı bağlantı için optimize edilmiş sunucular gerekir.
Yedekleme ve Felaket Kurtarma
Yapılandırmalarınızı düzenli olarak yedeklemeniz kritik öneme sahiptir. Yedekleme için aşağıdaki dizinleri kopyalayabilirsiniz:
- /data: Yapılandırma dosyaları.
- /etc/letsencrypt: SSL sertifikaları.
- MySQL veritabanı: Tüm ayarların saklandığı veritabanı.
Otomatik yedekleme için cron job'lar oluşturabilir veya N8N ile otomasyon kurabilirsiniz.
SSS - Sıkça Sorulan Sorular
Nginx Proxy Manager hangi işletim sistemlerinde çalışır?
Docker destekleyen her işletim sisteminde çalışır. Linux (Ubuntu, Debian, CentOS), macOS ve Windows (WSL2) bu kapsamdadır.
Let's Encrypt sertifikası ne kadar süre geçerlidir?
Let's Encrypt sertifikaları 90 gün geçerlidir, ancak Nginx Proxy Manager otomatik olarak yeniler.
Birden fazla subdomain yönetebilir miyim?
Evet, sınırsız sayıda subdomain ve domain ekleyebilirsiniz.
SSL olmadan kullanabilir miyim?
Evet, SSL zorunlu değildir ancak güvenlik ve SEO açısından önerilir.
Nginx Proxy Manager'ı production ortamında kullanabilir miyim?
Evet, ancak yüksek trafikli siteler için Nginx Proxy Manager'ın arkasındaki Nginx yapılandırmasını özelleştirmeniz gerekebilir.
Sonuç
Nginx Proxy Manager, reverse proxy ve SSL yönetimini basitleştiren güçlü bir araçtır. Docker tabanlı yapısı sayesinde hızlı kurulum ve kolay yönetim sunar. Let's Encrypt entegrasyonu ile ücretsiz SSL sertifikaları sağlar ve otomatik yenileme özelliği ile kesintisiz güvenlik sunar.
Bu rehberde anlatılan adımları takip ederek, kendi reverse proxy altyapınızı kurabilir ve web uygulamalarınızı güvenli bir şekilde sunabilirsiniz. Unutmayın ki güvenlik her zaman öncelik olmalı ve SSL sertifikalarınızı düzenli olarak kontrol etmelisiniz.
Sunucu altyapınız için Serversium güvenilir ve hızlı çözümler sunmaktadır. Ayrıca e-ticaret hosting çözümlerimiz ile işinizi büyütebilirsiniz. Herhangi bir sorunuz olursa bizimle iletişime geçebilirsiniz.