İçeriğe geç
DuyurularBilgi bankasıKampanyalar
Hakkımızdaİletişim DestekTREN
hostingsepetiWEB HOSTING & SUNUCU
Sunucu ve Güvenlik

Docker port, volume ve secrets güvenliği

Yayınlanan portları, kalıcı volume verisini ve gizli bilgileri ayrı kontrollerle sınırlandırın.

Docker port, volume ve secrets güvenliği

Docker konteynerinin çalışması, erişim ve veri saklama düzeninin güvenli olduğunu göstermez. Yayınlanan bir port hizmeti beklenenden daha geniş ağa açabilir. Volume içindeki veriler konteyner silinse de ayrı yaşam döngüsüne sahiptir. Gizli bilgilerin image, ortam değişkeni ve log içinde nasıl göründüğü de önemlidir. Önce hizmetin kim tarafından, hangi ağdan ve hangi veriyle kullanıldığını açıkça tanımlayın. Hazır Compose örneğini üretim gereksinimiyle karşılaştırmadan çalıştırmayın.

Başlamadan önce

Konteynerleri, published portları, bağlı volume ve bind mount yollarını listeleyin. Kullanılan Docker ve Compose sürümünü kaydedin. Uygulama verisinin yedeğini alın. Yönetim konsolunu internete açmak yerine gerekli erişim kaynağını belirleyin. Docker soketini konteynere bağlayan yapılandırmayı ayrıca inceleyin; bu, geniş yönetim yetkisi verebilir. Gerçek parola veya anahtarı örnek dosyada ve kod deposunda tutmayın.

Uygulama adımları

1. Port bağlamını daraltın

Hizmetin herkese mi, yalnızca yerel proxyye mi açılacağını belirleyin. Gerekiyorsa loopback adresine bağlanan port tanımı kullanın ve ağ davranışını test edin.

Kontrol: İzinli kaynak bağlanmalı, gereksiz dış erişim reddedilmelidir. Published portun host firewall ile nasıl etkileştiğini kurulumunuzda doğrulayın.

2. Kalıcı veriyi bilinçli bağlayın

Veritabanı ve kullanıcı yüklemeleri gibi veriler için doğru volume veya bind mount seçin. Uygulamanın dizin sahipliği ve yazma ihtiyacını eşleştirin.

Kontrol: Konteyner yeniden oluşturulduğunda gerekli veri korunmalıdır. Başka hizmetin veya hostun hassas dizinini gereksiz mount etmeyin.

3. Gizli bilgi yönetimini ayırın

Uygulama destekliyorsa dosya tabanlı secret veya uygun platform secret mekanizması kullanın. Compose secrets ile Swarm secrets davranışlarının aynı olmadığını dikkate alın.

Kontrol: Secret yalnızca ihtiyaç duyan servise sunulmalıdır. Image içine parola kopyalamayın; log ve inspect çıktısında sızıntıyı kontrol edin.

4. Yedek ve değişim testini yapın

Volume yedeğini uygulama tutarlılığını gözeterek alın. Secret değişimi ve konteyner yeniden oluşturmayı ayrı test ortamında deneyin.

Kontrol: Yeni kimlik bilgisi çalışmalı, gereksiz eski erişim iptal edilmelidir. Volume silme seçeneklerini yedek doğrulanmadan çalıştırmayın.

Sonucu nasıl doğrularsınız?

Host üzerinden ve uygun dış test kaynağından port erişimini ayrı kontrol edin. Kullanıcı verisinin doğru volume içinde oluştuğunu görün. Bir test konteynerini yeniden oluşturup kayıtların kalmasını sınayın; gerçek üretim volume üzerinde deneme silmesi yapmayın. Secret dosyasının kim tarafından okunabildiğini ve uygulamanın bunu nasıl tükettiğini inceleyin. Erişim, kalıcılık ve gizli bilgi sonucunu ayrı kabul maddeleri olarak kaydedin.

Sorun devam ederse

Hizmet yerelde çalışıp dışarıdan açılmıyorsa port binding, ağ ve proxyyi inceleyin; bütün firewallu kaldırmayın. Veri kaybolduysa yanlış volume veya yanlış hedef dizin bağlanmış olabilir. Secret değişiminden sonra kimlik hatası varsa uygulamanın yeniden yükleme gereksinimini kontrol edin. Compose dosyasındaki erişim sırrını silmek geçmiş image katmanlarını veya depo tarihini temizlemez. Sızıntı şüphesinde ilgili kimlik bilgisini iptal edip kontrollü yenileyin.

Uygulama örneği

Bir uygulama veritabanının yalnızca web konteynerinden erişilmesi gerekiyorsa veritabanı portunu genel host adresine yayınlamak şart olmayabilir. Ağ yapısını uygulama ihtiyacına göre daraltın. Medya volume için ayrı yedek oluşturup deneme konteynerine geri açın. Kabul kaydında port kapsamı, veri yolu ve secret yöntemi yer alsın; gizli değerlerin kendisi yer almasın.

Sık sorulan sorular

Compose secrets kullanınca her şey şifreli mi olur?

Hayır. Depolama ve dağıtım modeli platforma bağlıdır. Host dosyasının erişimi, uygulama tüketimi ve yedek kapsamı ayrıca değerlendirilmelidir.

Konteyner silmek volume yedeği almak mıdır?

Hayır. Silme, verinin yaşam döngüsünü etkileyebilir. Yedeği ayrı oluşturup izole ortamda geri yükleyerek doğrulayın.

İşletim kabulü ve bakım kaydı

Uygulama gerçekten yazmak zorunda değilse ilgili bind mount için salt okunur erişimi değerlendirin. Gereken yazma dizinlerini ayrı tanımlayıp uygulama kabul testini tekrarlayın. Gereksiz ayrıcalıklar, host soketi veya tüm kök dosya sistemine bağlama uygulamaya geniş erişim verebilir. Kısıtlamayı çalışma ihtiyacına göre sınayın; bir konteynerin açılması, bütün görevlerinin uygun yetkiyle tamamlandığını kanıtlamaz.

İlgili rehberler

Süreç özeti

Docker port, volume ve secrets güvenliği için kontrol sırası

AdımKontrol
1Port bağlamını daraltın
2Kalıcı veriyi bilinçli bağlayın
3Gizli bilgi yönetimini ayırın
4Yedek ve değişim testini yapın

Resmî kaynaklar