MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

10 Tips untuk Meningkatkan Keamanan MongoDB Anda

MongoDB menyediakan sejumlah konstruksi untuk meningkatkan keamanan data Anda. Keamanan data Anda di MongoDB adalah yang terpenting – jadi penting untuk memanfaatkan konstruksi ini untuk mengurangi luas permukaan Anda. Berikut adalah 10 tips yang dapat Anda gunakan untuk meningkatkan keamanan server MongoDB Anda di lokasi dan di cloud.

  1. Aktifkan autentikasi

    Bahkan jika Anda telah menerapkan server MongoDB Anda di jaringan tepercaya, praktik keamanan yang baik adalah mengaktifkan otentikasi. Ini memberi Anda "pertahanan mendalam" jika jaringan Anda disusupi. Edit file konfigurasi MongoDB Anda untuk mengaktifkan auth:

    auth = true
    
  2. Jangan memaparkan database produksi Anda ke internet

    Membatasi akses fisik ke database Anda adalah aspek keamanan yang penting. Jika tidak perlu, jangan memaparkan database produksi Anda ke internet. Jika ada kompromi, jika penyerang tidak dapat terhubung secara fisik ke server MongoDB Anda, data Anda jauh lebih aman. Jika Anda menggunakan AWS, Anda dapat menempatkan database Anda di subnet virtual private cloud (VPC). Baca entri blog Menyebarkan MongoDB di VPC untuk informasi selengkapnya.

  3. Gunakan firewall

    Gunakan firewall untuk membatasi entitas lain mana yang diizinkan untuk terhubung ke server MongoDB Anda. Praktik terbaik adalah hanya mengizinkan server aplikasi Anda mengakses database. Jika Anda dihosting di AWS, gunakan 'Grup keamanan' untuk membatasi akses. Jika Anda dihosting di penyedia yang tidak mendukung konstruksi firewall, Anda dapat dengan mudah mengonfigurasinya sendiri menggunakan 'iptables'. Lihat dokumentasi MongoDB untuk mengonfigurasi iptables untuk skenario Anda.

  4. Gunakan file kunci untuk menyiapkan set replika

    Tentukan file kunci bersama untuk mengaktifkan komunikasi antara instans MongoDB Anda dalam set replika. Untuk mengaktifkan ini, tambahkan parameter keyfile ke file konfigurasi seperti yang diuraikan di bawah ini. Isi file harus sama di semua mesin:

    keyFile = /srv/mongodb/keyfile
    
  5. Nonaktifkan antarmuka status HTTP

    MongoDB, secara default, menyediakan antarmuka http yang berjalan pada port 28017 yang menyediakan halaman status “beranda”. Antarmuka ini tidak disarankan untuk penggunaan produksi dan sebaiknya dinonaktifkan. Gunakan pengaturan konfigurasi “nohttpinterface” untuk menonaktifkan antarmuka http:

    nohttpinterface = true
    
  6. Nonaktifkan antarmuka REST

    Antarmuka REST MongoDB tidak disarankan untuk produksi. Itu tidak mendukung otentikasi apa pun dan dimatikan secara default. Jika Anda mengaktifkannya menggunakan opsi konfigurasi "istirahat", Anda harus menonaktifkannya untuk sistem produksi.

    rest = false
    
  7. Konfigurasikan bind_ip

    Jika sistem Anda memiliki beberapa antarmuka jaringan, Anda dapat menggunakan opsi “bind_ip” untuk membatasi server MongoDB Anda agar hanya mendengarkan pada antarmuka yang relevan. Secara default, MongoDB akan mengikat semua antarmuka:

    bind_ip = 10.10.0.25,10.10.0.26
    
  8. Aktifkan SSL

    Jika Anda tidak menggunakan SSL, data Anda berjalan antara klien Mongo Anda dan server Mongo tidak terenkripsi dan rentan terhadap penyadapan, gangguan, dan serangan "manusia di tengah". Ini sangat penting jika Anda terhubung ke server MongoDB Anda melalui jaringan yang tidak aman seperti internet.

  9. Otorisasi berbasis peran

    MongoDB mendukung autentikasi berbasis peran untuk memberi Anda kontrol yang sangat baik atas tindakan yang dapat dilakukan oleh setiap pengguna. Gunakan konstruksi berbasis peran untuk membatasi akses alih-alih menjadikan semua pengguna Anda sebagai admin. Lihat dokumentasi peran untuk detail selengkapnya.

  10. Perusahaan MongoDB &Kerberos

    Enterprise MongoDB terintegrasi dengan Kerberos untuk otentikasi. Lihat dokumentasi MongoDB untuk lebih jelasnya. Sistem nama pengguna/sandi pada dasarnya tidak aman – gunakan autentikasi berbasis trotoar jika memungkinkan.

Di ScaleGrid, kami berusaha keras untuk mendukung konfigurasi keamanan praktik terbaik secara default untuk semua penerapan kami. Kami memungkinkan Anda untuk menggunakan SSL dan juga tidak mengekspos database Anda ke internet. Jika Anda memiliki pertanyaan, silakan kirim email kepada kami di [email protected].


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Sintaks Java dengan MongoDB

  2. Bagaimana cara mendapatkan semua hasil jika bidang bersantai tidak ada di mongodb

  3. Adakah alasan terperinci dan spesifik untuk Mengapa MongoDB jauh lebih cepat daripada SQL DB?

  4. Bagaimana cara memasukkan elemen ke daftar internal MongoDB?

  5. 10 platform hosting MongoDB terbaik