MongoDB Security har varit i nyheterna den här veckan av alla fel anledningar. Allt snack har handlat om de 40 000 eller så databaser som hittades exponerade av en grupp studenter baserade i Tyskland. Vissa av databaserna innehöll till och med produktionsdata. Det är extremt på flera nivåer – inte bara har du produktionsdata på en oautentiserad databas, utan den lämnas också öppen för internet. Det enda förvånande är att det tog så lång tid att bli avslöjad. Om du inte vill att dina MongoDB-servrar ska vara med i nyheterna, här är tre enkla steg för att förbättra säkerheten för din MongoDB-installation:
-
Aktivera alltid autentisering
Det är viktigt att aktivera autentisering för alla dina MongoDB-kluster. Även om det är en utvecklingsinstallation, aktivera alltid autentisering och se till att dina arbetsflöden är anpassade för att kunna stödja autentisering. Mer information om att lägga till användare och roller finns här.
Du kan också gå ett steg längre och använda X509-certifikat istället för lösenord för autentisering. Detta kommer att skydda dig från alla lösenordsbaserade attacker som en "Ordbok"-attack. Om du har företagsbygget av MongoDB kan du också använda Kerberos för autentisering.
-
Lås åtkomst med brandväggar
All åtkomst till dina databasservrar måste ske på basis av "need to", och du kan använda brandväggar för att låsa åtkomst. Den typiska konfigurationen är att låsa åtkomst så att endast dina applikationsservrar och IT-team har åtkomst till servrarna. Om du är på Amazon AWS, använd säkerhetsgrupper för att låsa åtkomst till servrarna. Slutligen, den viktigaste punkten – Exponera inte din databas för internet! Det finns bara några goda skäl att någonsin exponera din databas för internet.
-
Använd isolerade nätverk
De flesta offentliga moln erbjuder idag alternativ för att distribuera dina servrar i ett isolerat nätverksutrymme som inte är tillgängligt från det offentliga internet. Du kan nå ut till internet, men ingen internettrafik kan nå dig. Till exempel erbjuder AWS Virtual Private Clouds (VPC) och Azure erbjuder Virtual Networks (VNET). Dessa isolerade nätverk ger ett djupgående försvar för din databasinstallation. På AWS kan du distribuera dina databasservrar på ett privat undernät i en VPC – även om det finns en felaktig konfiguration är dina databasservrar inte exponerade för internet.
Nedan finns några andra relevanta artiklar om MongoDB-säkerhet. Om du har ytterligare frågor vänligen kontakta oss på [email protected].
- De tre A:en för MongoDB-säkerhet – autentisering, auktorisering och revision
- 10 tips för att förbättra din MongoDB-säkerhet
- Säker MongoDB-distribution på Amazon AWS
- Säkra dina Mongo-kluster med SSL