Nginx Proxy Manager kullanarak Linux'ta Konteynerleştirilmiş Bir Ortama Erişimi Nasıl Yapılandırılır? | INTROSERV
EUR
european

EUR

usa

USD

Turkish Tr
Ex. VAT Ex. VAT 0%

Nginx Proxy Manager kullanarak Linux'ta Konteynerleştirilmiş Bir Ortama Erişimi Nasıl Yapılandırılır?

Giriş

Bu eğitimde, Nginx Proxy Manager kullanarak konteynerleştirilmiş hizmetlere güvenli ve kullanıcı dostu erişim yapılandıracaksınız. Bu yaklaşım, manuel yapılandırma yerine bir web arayüzü aracılığıyla ters proxy yönetimini basitleştirir. Docker ile Nginx Proxy Manager'ı kuracak, yapılandıracak ve bir konteynerleştirilmiş hizmeti bir alan adı üzerinden açığa çıkaracaksınız.

Ön Koşullar

Hedef kitle: Başlangıç seviyesindeki sistem yöneticileri
Tahmini süre: ~30 dakika
Son hedef: Bu eğitimin sonunda, dış trafiği konteynerleştirilmiş bir uygulamaya yönlendiren çalışan bir Nginx Proxy Manager kurulumuna sahip olacaksınız.

Sistem gereksinimleri:

  • İşletim Sistemi: Docker uyumlu Linux dağıtımı
  • Docker: 24.0.6 veya daha yeni
  • Docker Compose: v2
  • Minimum 1 GB RAM ve 10 GB disk alanı
  • Sunucu IP'nize yönlendirilmiş bir alan adı
  • Açık portlar: 80, 81, 443
  • Sudo ayrıcalıkları

Gerekli bilgi:

  • Temel Linux komut satırı kullanımı
  • Docker konteynerlerinin temel anlayışı

Adım 1: Nginx Proxy Manager'ı Anlayın

Nginx Proxy Manager, Nginx ters proxy yapılandırmalarını yöneten web tabanlı bir araçtır. Trafiği farklı hizmetlere alan adları kullanarak yönlendirmenize, SSL sertifikalarını etkinleştirmenize ve yapılandırma dosyalarını manuel olarak düzenlemeden erişim kurallarını yönetmenize olanak tanır.

Ana özellikler:

  • Proxy yönetimi için web arayüzü
  • Let's Encrypt ile otomatik SSL
  • Erişim kontrolü ve kimlik doğrulama
  • Docker ortamlarıyla kolay entegrasyon

Sonuç: Nginx Proxy Manager'ın konteynerleştirilmiş hizmetleri açığa çıkarmayı nasıl basitleştirdiğini anlıyorsunuz.

Adım 2: Docker ve Docker Compose'u Kurun

Docker'ı basit bir tek satırlık komutla kurun:

curl -sSL https://get.docker.com/ | CHANNEL=stable bash

Docker kurulumunu doğrulayın:

docker --version

Docker Compose'u doğrulayın:

docker compose version

Sonuç: Docker ve Docker Compose kurulmuş ve kullanıma hazır.

Adım 3: Nginx Proxy Manager'ı Kurun

Bir proje dizini oluşturun:

mkdir ~/npm && cd ~/npm

Bir yapılandırma dosyası oluşturun:

nano docker-compose.yml

Yapılandırma içeriğini ekleyin:

version: "3" services: app: image: jc21/nginx-proxy-manager:latest restart: always ports: - "80:80" - "81:81" - "443:443" volumes: - ./data:/data - ./letsencrypt:/etc/letsencrypt

Dosyayı kaydedin ve çıkın.

Hizmeti başlatın:

docker compose up -d

Sonuç: Nginx Proxy Manager konteyneri çalışıyor ve gerekli portlarda dinliyor.

Adım 4: Web Arayüzüne Erişin

Nginx Proxy Manager giriş ekranı

Tarayıcınızı açın ve şu adrese gidin: http://<YOUR_IP_ADDRESS>:81

Varsayılan giriş bilgileri:

İstendiğinde bilgilerinizi güncelleyin.

Sonuç: Nginx Proxy Manager'a web arayüzü üzerinden erişebilir ve yönetebilirsiniz.

Adım 5: Test Konteyneri Dağıtın

Bir test web konteyneri çalıştırın:

docker run -d --name test-app -p 8080:80 nginx

Erişimi doğrulamak için açın: http://<YOUR_IP_ADDRESS>:8080

Sonuç: Bir test konteyneri çalışıyor ve yerel olarak erişilebilir durumda.

Adım 6: Bir Proxy Host Oluşturun

Nginx Proxy Manager'da Proxy Host ekleme diyalogu

Nginx Proxy Manager arayüzünde:

  • "Proxy Hosts" tıklayın
  • "Add Proxy Host" tıklayın
  • Alan adı girin: <YOUR_DOMAIN>
  • Yönlendirme hostname veya IP: localhost
  • Yönlendirme portu: 8080
  • "Block Common Exploits" etkinleştirin
  • Yapılandırmayı kaydedin

Sonuç: Alan adınızdan gelen trafik konteynere yönlendirilir.

Adım 7: SSL'i Etkinleştirin

Nginx Proxy Manager'da SSL yapılandırma sekmesi

Proxy host'u düzenleyin:

  • SSL sekmesini açın
  • Yeni bir SSL Sertifikası talep et seçeneğini seçin
  • SSL Zorla etkinleştirin
  • HTTP/2 Desteği etkinleştirin
  • Email adresinizi girin ve şartları kabul edin
  • Değişiklikleri kaydedin

Info

SSL, alan adınızı sunucunuza yönlendiren doğru DNS kayıtlarını gerektirir.

Sonuç: HTTPS etkinleştirildi ve geçerli bir sertifika ile güvence altına alındı.

Doğrulama

Alan adınızı açın: https://<YOUR_DOMAIN>

Beklenen sonuçlar:

  • Nginx test sayfası yüklenir
  • Tarayıcı geçerli bir SSL sertifikası gösterir
  • Güvenlik uyarıları görünmez

Çalışan konteynerleri kontrol edin:

docker ps

Sonuç: Ters proxy doğru çalışıyor ve trafiği güvenli bir şekilde yönlendiriyor.

Değişiklikleri Geri Alma

Hizmetleri durdurun:

docker compose down

Test konteynerini kaldırın:

docker rm -f test-app

Proje dosyalarını silin:

rm -rf ~/npm

Info

Önemli: Bu, tüm yapılandırmaları ve SSL sertifikalarını kaldırır.

Sonuç: Tüm değişiklikler geri alındı ve sistem temiz.

Sorun Giderme

Sorun: Web arayüzüne erişilemiyor
Çözüm: 81 numaralı portun açık olduğundan ve başka bir hizmet tarafından kullanılmadığından emin olun

Sorun: SSL sertifikası oluşturma başarısız
Çözüm: DNS yapılandırmasının sunucunuza işaret ettiğini doğrulayın

Sorun: Proxy host çalışmıyor
Çözüm: Konteyner durumunu docker ps ile ve günlükleri docker logs <CONTAINER_ID> ile kontrol edin

Sonuç: Yaygın sorunlar tanımlandı ve çözüldü.

Sonuç ve Sonraki Adımlar

Docker kullanarak Nginx Proxy Manager'ı kurdunuz ve bir alan adı ve SSL ile konteynerleştirilmiş bir hizmeti açığa çıkardınız. Bu kurulum, birden fazla hizmeti yönetmek için basit ve ölçeklenebilir bir yol sağlar.

Sonraki adımlar:

  • Farklı alan adları arkasında ek hizmetler ekleyin
  • Erişim kontrol listeleri yapılandırın
  • Gelişmiş proxy ve güvenlik ayarlarını keşfedin

VAT

  • Other

    Ex. VAT

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    22%
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • germany
  • Español
  • Italiano
  • Poland
  • Русский
  • Slovenski
  • Türkçe
  • ukraine
  • kingdom
  • French
  • Hrvatska
  • Other
  • Austria
  • Belgium
  • Bulgaria
  • Croatia
  • Cyprus
  • Czech Republic
  • Denmark
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Hungary
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Netherlands
  • Poland
  • Portugal
  • Romania
  • Slovakia
  • Slovenia
  • Spain
  • Sweden
  • USA