Docker Konteyner Güvenliği Nedir?

Docker®'ın birçok hareketli parçası vardır ve güvenliğini sağlamak, eski dağıtım teknolojilerini korumaktan daha karmaşıktır. Ağ ve uygulama güvenlik duvarlarından konteyner çalışma zamanı savunmasına ve ana bilgisayar korumasına kadar bütünsel bir yaklaşım gerektirir.

Docker® Konteyner Güvenliği

Docker konteynerinin güvenliğini sağlamak, diğer konteynerların güvenliğinden farklı değildir. Ana bilgisayardan ağa ve aradaki her şeye her yerde güvenlik sağlayan her şey dahil bir yaklaşım gerektirir. Hareketli parçaları nedeniyle, konteynerlerin güvenliğini sağlamak birçok kuruluş için zordur ve tetikte olmaktan daha fazlasını gerektirir.

Göz önünde tutulması gereken hususlar

Docker konteynerları güvenli hale getirilirken göz önünde tutulması gereken bazı hususlar:

  • Kaynak kotalarını kullanın
  • Docker konteynerları kök kullanıcı olarak çalıştırılmamalıdır
  • Docker konteyner kayıtlarının güvenliğinden emin olun
  • Güvenilir bir kaynak kullanın
  • Kodun kaynağına gidin
  • API’leri ve ağları güvenliği ön planda tutarak tasarlayın

Kaynak kotalarını kullanın

Kaynak kotalarını kullanmak, bir konteyner için bellek ve CPU alımını sınırlama olanağı sağlar. Her bir konteyner için kaynak kotalarını yapılandırmak, yalnızca ortamın verimliliğini artırmaya yardımcı olmakla kalmaz, aynı zamanda ortamınızdaki tüm kontenerlardaki kaynakların dengesizliğini de önleyebilir.

Bu, konteynerlerinizin beklediğiniz hızda çalışmasını ve en önemlisi güvenliğin artırmasını sağlayacaktır. Bir konteynerda kötü amaçlı içerik bulaşırsa, kota dolduğunda kesileceği için konteynerda çok fazla kaynak kullanılamaz. Bu, saldırıların etkisini en aza indirir. Bu, kolayca faydalanılabilecek basit bir güvenlik taktiğidir ve komut satırı bayrakları kullanılarak yapılabilir.

Docker konteynerları kök kullanıcı olarak çalıştırılmamalıdır

Bir uygulama oluştururken, en az ayrıcalık ilkesine uymak en iyi uygulamadır. Bu, uygulamanın erişimini yalnızca çalışmak için ihtiyaç duyduğu kaynaklarla sınırlamak anlamına gelir. Bu, konteynerlarınızı beklenmedik erişimden korumanın en iyi yollarından biridir.

Docker konteynerlarının güvenliği söz konusu olduğunda, bu çok önemlidir ve Docker varsayılan ayarları konteynerları kök kullanıcı olarak çalıştıracak şekilde yapılmamalıdır. Örneğin, konteyner uygulamanız bir istismara karşı savunmasızsa ve kök kullanıcı olarak çalıştırıyorsanız, saldırı yüzeyini genişletir ve saldırganların ayrıcalıklı yükselme elde etmeleri için basit bir yol oluşturur.

Docker konteyner kayıtlarınızın güvenliğinden emin olun

Konteyner kayıtları, özellikle Docker konteynerlerinde bulunanlar, konteynerleri bu kadar güçlü bir platform yapan en önemli unsurdur. Kayıtlarla, kolayca ve hızlı bir şekilde indirilebilen merkezi bir imaj havuzu oluşturabilirsiniz. Ancak, Docker Trusted Registry gibi kapsamlı bir araştırma yapabildiğiniz güvenilir bir kayıt defteri kullanmazsanız, birçok güvenlik riskiyle karşı karşıya kalırlar. Docker kayıt defteri ile, Internet'in oluşturduğu riskleri hafifletmek için BT altyapınızda zaten uygulanan güvenlik duvarının arkasına yüklersiniz. Ancak bu durumda dahi, kullanıcıların kayıt defterini yüklemelerini veya kayıt defterinden indirmelerini reddetmelisiniz.

Tüm bu çalışmalardan kaçınmak ve açık erişim vermek çok cazip olabilir. Fakat bu küçük rahatsızlık kayıt defterinde büyük bir ihlali önleyebilir. Bu durumu çözmek için rol tabanlı erişim kontrolü verebilirsiniz. Bu, kayıtlara tam olarak kimin nereye erişebileceğini kontrol etmenize olanak tanır.

Güvenilir bir kaynak kullanın

Artık konteyner kayıt defteri güvenli hale getirildiğine göre, güvenilir olmayan bir kaynaktan alınan konteyner imajlarının enfekte olmasını istemezsiniz. Sadece tek bir tıklamayla herkesin erişebileceği konteyner imajlarını indirmek uygun görünebilir, ancak indirme kaynağının güvenilir veya doğrulanmış olmasını sağlamak son derece önemlidir.

Dikkat ve güvenlik açısından, genel konteyner kayıtlarından kaçınmak ve Docker'ın Docker Hub gibi tekliflerine sadık kalmak en iyisidir. Docker konteynerlarınızı güvenceye almak için ekstra adım atmak üzere Docker imajı güvenlik açıklarını hafifletmek ve güvenli hale getirmek için imaj tarama araçlarını kullanmanız gerekir. 

Kodun kaynağına gidin

Yukarıda ele alındığı gibi, Docker konteynerlarınız için güvenilir ve güvenli konteyner imajları sağlamak önemlidir. Bununla birlikte, bu imaj güvenilir bir kayıt defterinden gelmiş olsa bile, virüslü kod içermediğinden emin olmak için imaj içindeki kodu araştırmak iyi bir uygulamadır. Docker imajları, dış kaynaklardan gelen, güvenilir kaynaklardan türetilemeyen orijinal kod ve paketlerin birleşimine sahiptir.

Bu senaryoda, kaynak kodu analiz araçlarından faydalanmak en iyi yöntemdir. İmajları aldıktan sonra, Docker imajlarındaki tüm paketlerin kaynaklarını indirerek kodun nereden geldiğini belirlemek için paketleri tarayabilirsiniz. Bu, görüntülerden herhangi birinin bilinen güvenlik açıklarına sahip olup olmadığını ortaya çıkarmanızı ve sizi ilk derlemeden koruyabilmenizi sağlar.

API’leri ve ağları güvenliği ön planda tutarak tasarlayın

Docker kapsayıcılarının birbirleriyle iletişim kurabilmeleri için API’leri (uygulama programlama arabirimleri) ve ağları kullanırlar. Bu iletişim, konteynerlerin düzgün çalışması için gereklidir, ancak uygun güvenlik ve izleme gerektirir. API'ler ve ağ aslında Docker konteynerının bir parçası olmasa da Docker ile birlikte kullanılan kaynaklar olduklarından konteyner güvenliği açısından yine de bir risk oluştururlar. Bunu göz önünde bulundurarak, bir saldırıyı hızlı bir şekilde durdurabilmek için API’lerinizi ve ağınızı kolaylıkla izlemeyi ve güvenliği ön planda tutarak tasarlamanız gerekir. 

Özet

Docker konteynırlarınızı güvence altına almak kolay bir iş değildir, ancak yaptığınız çalışmalar sonuçlara değecektir. Bütünsel bir yaklaşım gerektirir ve konteyner ortamını tüm seviyelerde daha sıkı hale getirmek önemlidir. Yukarıdaki en iyi uygulamalar bir yük gibi görünse de, gelecekte büyük zaman kazandıracak ve sizi çok önemli güvenlik risklerinden kurtaracaktır. 

İlgili Araştırmalar

İlgili Makaleler