Vi får många frågor av våra kunder kring olika säkerhetsfunktioner och hur man ska tänka kring säkerhet i sin Virtuozzo (tidigare Jelastic)-miljö och som lite hjälp på vägen tänkte vi yppa några ord kring detta ämne. Några grundläggande säkerhetsprinciper som man alltid kan ha i åtanke vid säkerhetsarbete är separation av tjänster, att inte lägga alla ägg i samma korg, samt the principle of least privilege. Men för att bli lite mer konkreta i denna artikel tänkte vi raskt gå över och gräva lite i network isolation.
Network isolation
Normalt kommer en enskild användares samtliga miljöer kunna nå varandras interna IP. Därför kan det vara intressant i vissa situationer att begränsa åtkomsten. Alternativt i syfte att bredda åtkomst, till exempel, om man vill ha en samarbetsmiljö där fler användare kan arbeta på samma miljö.
Vilka möjligheter ger den här funktionen mig som kund?
Om det finns ett behov av delad tillgång till exempelvis din databas eller applikation med en tredje part så möjliggör nätverksisolation ett enkelt sätt att hindra containers inom den isolerade gruppen från att bli nåbara via plattformens interna nätverk.
Vad innebär det?
Nätverksisolering är en funktion som hanterar regelbaserad åtkomst mellan miljöerna i en Virtuozzo (tidigare Jelastic) uppsättning. Nätverksisolering (Network Isolation) är ett nyttigt verktyg skapat i syfte att förhindra oavsiktlig eller icke önskvärd åtkomst till/mellan dina miljöer. Om två miljöer ligger i samma isolerade grupp så kommer kommunikation mellan dessa miljöer att tillåtas – i annat fall kommer anslutningen nekas.
Om nätverksisolation är aktiverad på plattformen så innebär det per automatik att samtliga konton är isolerade från varandra och därmed ej kan kommunicera med varandra.
Hur aktiverar jag funktionen i praktiken?
I nedanstående exempel finns två miljöer uppsatta: env-4453222 och env-7772010 under samma konto.

Som utgångspunkt kan dessa fritt kommunicera med varandra.
Om det exempelvis önskades att en av dessa miljöer isolerades från resterande, så kan det enkelt åstadkommas genom att skapa en ny “Environment group” och aktivera funktionen “Network Isolation”.
Klicka först på plustecknet bredvid “Env Groups” enligt bilden nedan:

Nedanstående ruta dyker upp. Här anger du ett valfritt namn på den nya gruppen, vilken miljö som ska tillhöra den nya gruppen (du kan välja en eller flera) och därpå välja “On” bredvid “Network Isolation“. Efter att ha klickat på "Add" längst ned till höger är den nya isolerade gruppen skapad.

Effekten av ovanstående blir att env-4453222 nu tillhör en grupp där nätverksisoleringen är aktiv och kommunikation mellan denna miljö och andra miljöer i kontot inte längre är möjligt.
Önskar man att kunna kommunicera mellan flera miljöer så lägger man till dessa under “Environments” i gruppen.
Utöver network isolation, så låt oss även ta tillfället i akt att prata lite brandväggsregler.
Brandväggsregler
Principle of least privilege
“Principle of least privilege” inom informationssäkerhet grundas på idén att varje användare enbart skall ha tillgång till information och de resurser som är nödvändiga för att användaren skall kunna utföra sina arbetsuppgifter.
Principen om minimala privilegier som tillämpats leder till:
- Ökad säkerhet: risken för potentiella hot minskas om rättigheter i ett system strikt fördelas i enlighet med absolut minimum för den användares behov.
- Reducerad sårbarhetsyta: begränsade rättigheter minskar risken för negativa konsekvenser som kan uppstå vid en attack genom laterala rörelser, vars huvudsyfte är att få tillgång till känsliga konton och därigenom eskalera intrånget genom förflyttelse till övriga delar i systemet.
Besiktiga förkonfigurerade brandväggsregler
Samtliga nyskapade miljöer i Virtuozzo kommer med en förinstallerad brandväggskonfiguration. Brandväggsreglerna kan enkelt kommas åt genom att klicka på “Settings” för den aktuella miljön:

Efter att ha kommit åt panelen “Settings”, klicka sedan på “Firewall” till vänster I panelen.

I översiktspanelen för Firewall finns följande:
- Firewall State: En funktion som aktiverar eller avaktiverar brandväggen
- Inbound connections: inkommande anslutningar till miljön, exempelvis din Wordpress databas. Standardpolicyn är att neka alla inkommande anslutningar som ej blivit specificerade.
- Outbound connections: utgående anslutningar, om du exempelvis vill blockera ett program från att kunna ansluta till internet. Standardpolicyn är att tillåta all utgående trafik som ej blivit specificerad.

Inbound rules används för att hantera inkommande anslutningar. I exemplet ovan så är första och sista regeln gråmarkerade – dessa kan ej ändras då dessa är systemets förvalda värden. Enligt ovanstående exempel så kommer all trafik att blockeras förutom de explicit angivna reglerna.
Det är även här man kan lägga till ytterligare begränsningar, till exempel vilka IP-adresser som är tillåtna att ansluta till en backend service.
Med det i bagaget så hoppas vi att ni nu fått en bra introduktion till network isolation och brandväggar i Virtuozzo plattformen.
Avslutningsvis undrar vi, vad skulle ni vilja läsa om härnäst? Tveka inte att maila förslag på teman till hello@elastx.se så kanske vi hörs i samband med ett framtida inlägg baserat på just ditt förslag!
