MongoDB Güvenlik, İzleme ve Yedekleme (Mongodump)

⚡ Akıllı Özet

MongoDB Güvenlik, izleme ve yedekleme, verilerin güvenli, erişilebilir ve kurtarılabilir olmasını sağlayan temel veritabanı yönetimi kavramlarıdır. Bu kaynak, güvenlik en iyi uygulamaları, mongodump yedeklemeleri, izleme araçları, indeksleme ipuçları, kimlik doğrulama mekanizmaları, x.509 sertifikaları ve yapılandırma konularını kapsamaktadır. MongoDB Kerberos kimlik doğrulaması ile.

  • 🔒 Güvenlik: Erişim kontrolünü, rol tabanlı erişimi, TLS/SSL şifrelemesini ve denetimi etkinleştirin.
  • 💾 Yedekleme: Veri dosyalarını kopyalayın, BSON dökümleri için mongodump veya Cloud Manager kullanın.
  • 📊 İzleme: Mongostat, mongotop, web arayüzü ve serverStatus komutlarını kullanın.
  • indeksleme: Aranan alanlara indeks ekleyin ve döndürülen alanları sınırlandırın.
  • 🪪 Kimlik doğrulama: Güvenli istemci erişimi için x.509 sertifikaları veya Kerberos kullanın.

MongoDB Güvenlik, İzleme ve Yedekleme

Anahtar kavramlardan biri MongoDB Veritabanı yönetimi, veritabanlarının yönetimidir. Güvenlik, yedekleme ve veritabanlarına erişim gibi önemli hususlar, veritabanı yönetimi söz konusu olduğunda önemli kavramlardır.

MongoDB Güvenlik Genel Görünümü

MongoDB Veritabanları için güvenlik mekanizmalarını tanımlama yeteneğine sahiptir. Varsayılan olarak, herkesin her veritabanına açık erişime sahip olmasını istemeyiz. MongoDBdolayısıyla bir çeşit güvenlik mekanizmasına sahip olma zorunluluğu MongoDB önemli.

Veritabanlarında güvenlik uygularken izlenmesi gereken en iyi yöntemler şunlardır:

  1. Erişim kontrolünü etkinleştirin – Tüm uygulamaların ve kullanıcıların veritabanlarına erişirken bir tür kimlik doğrulama mekanizmasına sahip olmasını zorunlu kılacak şekilde kullanıcılar oluşturun. MongoDB.
  2. Rol tabanlı erişim kontrolünü yapılandırın – Bazen mantıklı bir temel olabilirping Gerekli olabilecek izinler, roller halinde gruplandırılabilir. Kullanıcılar daha sonra bu rollere atanabilir.
  3. Yapılandırmayı deneyin MongoDB TLS veya SSL gibi bir şifreleme protokolü kullanmak. Bu protokoller, istemci ile sunucu arasında akan trafiği şifrelemek için kullanılabilir. MongoDB ortamı.
  4. Denetim ayarlarını yapılandırın – Yöneticilerin normalde kimin ne yaptığını bilmeleri gerekir; bu da daha sonra sorunların analiz edilmesine yardımcı olur. Bunun en iyi yolu, denetimi etkinleştirmektir. MongoDB.
  5. Çalıştır MongoDB Sunucu ortamındaki yalnızca gerekli kaynaklara erişimi olan ayrı bir kullanıcı kimliğine sahip sunucu örneği.

MongoDB Yedekleme Prosedürleri – mongodump

ile çalışırken MongoDBVeri kaybı ihtimaline karşı her zaman bir yedekleme prosedürünün mevcut olduğundan emin olmak önemlidir. MongoDB Herhangi bir nedenle bozulabilir. Aşağıda, mevcut yedekleme mekanizmaları bulunmaktadır. MongoDB:

  1. Temel Veri Dosyalarını Kopyalayarak Yedekleme – Bu muhtemelen en kolay yöntem. Tek yapılması gereken, veri dosyalarını kopyalamak. MongoDB Bunları başka bir konuma kopyalayın; ideal olan bu konumun başka bir sunucu olmasıdır.
  2. Mongodump ile Veritabanını Yedekleme – Mongodump aracı verileri bir dosyadan okur. MongoDB Veritabanından veri çeker ve yüksek doğrulukta BSON dosyaları oluşturur. Dikkat edilmesi gereken nokta, veri kümesinin hacmi büyükse, mongodump'ın çok fazla kaynak tüketebileceğidir; bu sorunu hafifletmek için yardımcı programın ikincil bir sunucuda çalıştırılması gerekir.
  3. MongoDB Bulut Yöneticisi Yedeklemesi - MongoDB Bulut Yöneticisi sürekli olarak yedeklenir MongoDB oplog verilerini okuyarak çoğaltma kümelerini ve parçalanmış kümeleri MongoDB ortamı. MongoDB Cloud Manager, oplog verilerini depolayarak belirli bir çoğaltma kümesi veya parçalanmış küme için herhangi bir anda geri yükleme oluşturabilmek amacıyla belirli bir zamana ait kurtarma işlemi gerçekleştirebilir.

MongoDB İzleme

İzleme, en kritik idari faaliyetlerden biridir. MongoDBÇünkü olası sorunları önceden izleyerek daha proaktif olabilirsiniz. İzleme uygulamalarına ilişkin bazı örnekler aşağıda verilmiştir:

  1. mongostat Bu, sunucuda ekleme, sorgulama, güncelleme ve silme gibi veritabanı işlemlerinin kaç kez gerçekleştiğini size söyleyecektir. Bu, sunucunun ne kadar yükü kaldırdığı konusunda iyi bir fikir verir ve sunucuda ek kaynaklara veya yükü dağıtmak için ek sunuculara ihtiyacınız olup olmadığını gösterir.
  2. mongotop tracks ve bir kişinin mevcut okuma ve yazma etkinliğini raporlar. MongoDB örneğini oluşturur ve bu istatistikleri koleksiyon bazında raporlar.
  3. MongoDB Teşhis ve izleme bilgilerini basit bir web sayfasında sunan bir web arayüzü sağlar.
  4. serverStatus komutu veya kabuktaki db.serverStatus(), disk kullanımı, bellek kullanımı, veritabanına kurulan bağlantılar gibi ayrıntılarla birlikte veritabanının durumuna ilişkin genel bir bakış döndürür. MongoDB çevre ve daha fazlası.

MongoDB Dizin Oluşturma ve Performans Konuları

  1. Dizinler herhangi bir veritabanında çok önemlidir ve arama sorgularının verimliliğini artırmak için kullanılabilir. MongoDBBelgenizde sürekli arama yapıyorsanız, arama kriterlerinde kullanılan belge alanlarına indeks eklemek daha iyidir.
  2. Sorgu sonuçlarının sayısını her zaman sınırlamaya çalışın. Örneğin, bir belgede birden fazla alan adınız olduğunu ancak belgeden yalnızca 2 alanı görmek istediğinizi varsayalım. Bu durumda, sorgunuzun yalnızca istediğiniz 2 alanı görüntülemeyi hedeflediğinden ve tüm alanları görüntülemediğinden emin olun.
  3. Belirli alan değerlerini görüntülemek istiyorsanız sorguda yalnızca bu alanları kullanın. Gerekli değilse koleksiyondaki tüm alanları sorgulamayın.

MongoDB Kimlik Doğrulama Mekanizmaları

Yetkilendirme, istemcinin sisteme erişimini sağlamayı amaçlarken, kimlik doğrulama ise istemcinin sisteme ne tür bir erişime sahip olduğunu kontrol eder. MongoDB Sisteme giriş yetkileri onaylandıktan sonra. Çeşitli kimlik doğrulama mekanizmaları mevcuttur; aşağıda bunlardan sadece birkaçı yer almaktadır.

MongoDB x.509 Sertifikalarını kullanarak kimlik doğrulama

İstemciyi doğrulamak için x.509 sertifikaları kullanın – sertifika temelde istemci ile sunucu arasında güvenilir bir imzadır. MongoDB Sunucu.

Yani sunucuya bağlanmak için kullanıcı adı ve şifre girmek yerine, istemci ile sunucu arasında bir sertifika iletilir. MongoDB Sunucu. İstemci temelde, sunucuya kimlik doğrulaması için sunucuya iletilecek bir istemci sertifikasına sahip olacaktır. Her istemci sertifikası tek bir sunucuya karşılık gelir. MongoDB kullanıcı. Yani her kullanıcı MongoDB Kimlik doğrulamasının yapılabilmesi için kendi sertifikalarına sahip olmaları gerekmektedir. MongoDB sunucusu.

Bunun başarılı olması için aşağıdaki adımlar izlenmelidir:

  1. Geçerli bir üçüncü taraf otoritesinden geçerli bir sertifika satın alınmalı ve sisteme yüklenmelidir. MongoDB Sunucu.
  2. İstemci sertifikasının aşağıdaki özelliklere sahip olması gerekir: hem istemci hem de sunucu için sertifikalar tek bir Sertifika Otoritesi (CA) tarafından düzenlenmeli ve istemci sertifikaları keyUsage ve extendedKeyUsage alanlarını içermelidir.
  3. Bağlantı kuran her kullanıcı MongoDB Sunucunun ayrı bir sertifikaya sahip olması gerekiyor.

Nasıl Yapılandırılır MongoDB Kerberos Kimlik Doğrulaması ile

Aşağıda yapılandırma adımları verilmiştir MongoDB Kerberos kimlik doğrulaması ile Windows:

Adım 1) Yapılandır MongoDB Kerberos Kimlik Doğrulaması açıkken Windows

Kerberos, büyük istemci-sunucu ortamlarında kullanılan bir kimlik doğrulama mekanizmasıdır. Şifrenin yalnızca şifrelenmiş olması durumunda kabul edildiği, son derece güvenli bir mekanizmadır. MongoDB Mevcut bir Kerberos tabanlı sisteme karşı kimlik doğrulaması yapabilme özelliğine sahiptir.

Adım 2) mongod.exe sunucu işlemi

Ardından, mongod.exe sunucu işlemini başlatın.

Adım 3) mongo.exe istemci işlemi ve bağlanma

Ardından, mongo.exe istemci işlemini başlatın ve bağlantı kurun. MongoDB sunucusu.

Adım 4) Bir kullanıcı ekleyin MongoDB

Temelde bir Kerberos sorumlusu adı olan bir kullanıcıyı $external veritabanına ekleyin. $external veritabanı, kullanıcının kimliğini belirten özel bir veritabanıdır. MongoDB Bu kullanıcının kimliğini kendi dahili sistemi yerine Kerberos sisteminde doğrulamak için.

yapılandırma MongoDB Kerberos Kimlik Doğrulaması ile

use $external
db.createUser(
  {
    user: "user1@example.NET",
    roles: [
      { role: "read", db: "Marketing" }
    ]
  }
)

Adım 5) Komutu kullanmaya başlayın

Aşağıdaki komutu kullanarak mongod.exe'yi Kerberos desteğiyle başlatın:

mongod.exe --auth --setParameter authenticationMechanisms=GSSAPI

Artık Kerberos kullanıcısı ve Kerberos kimlik doğrulamasıyla veritabanına bağlanabilirsiniz.

SSS

Evet. Yapay zeka tabanlı izleme araçları, olağandışı sorgu kalıplarını, başarısız oturum açma girişimlerini ve şüpheli erişimleri tespit edebilir. MongoDBBunlar, yerleşik denetim işlevlerini tamamlar; ancak yöneticilerin yine de uyarıları gözden geçirmesi ve erişim kontrolünü manuel olarak uygulaması gerekir.

Evet. Yapay zeka destekli komut dosyaları ve bulut araçları, mongodump yedeklemelerini planlayabilir, bütünlüğü doğrulayabilir ve geri yükleme noktaları önerebilir. MongoDB Atlas ayrıca otomatik ve sürekli yedekleme özelliği sunarak veri koruma konusunda manuel çabayı azaltır.

mongodump, bir veritabanının isteğe bağlı BSON anlık görüntülerini oluşturur. MongoDB Cloud Manager, çoğaltma kümelerinin ve parçalanmış kümelerin belirli bir zamandaki durumunu kurtarmayı sağlamak için oplog'u sürekli olarak okur.

Mongorestore aracını, dump dizinine işaret ederek kullanın. Örneğin, mongorestore –db Marketing dump/Marketing komutu, BSON dosyalarını belirtilen veritabanına geri yükler.

Bu yazıyı şu şekilde özetleyin: