Boosta ditt hemnätverk med VLAN. Du kommer inte tro dina ögon när du ser hur många den här användaren har!
TL;DR
Med en lite bättre router-/brandväggsmjukvara och nätverksutrustning med VLAN-stöd kan du få markant mycket bättre säkerhet i -- och kontroll över -- ditt nätverk. Låt mig visa hur jag gjort!
Hårdvara
Routern köpte jag som sagt från TekLager. CPU: AMD GX-412TC SOC och 2GiB RAM.
Switch: TP-Link TL-SG108PE.
Accesspunkt: UniFi AC Lite.
pfSense
pfSense är en open source-brandvägg-/routermjukvara som sedan en tid tillbaka primärt utvecklas av Netgate [Källkod]. pfSense bygger på FreeBSD och är en väldigt kraftfull mjukvara med stöd för i stort sett allt du behöver för att managera fullskaliga företagsnätverk.
Låt dig dock inte avskräckas. Enligt mig är pfSense väldigt användarvänligt och fungerar toppenbra även för hemanvändare. pfSense är dock inte plug-n-play. I sitt grundutförande blockerar pfSense all trafik (i alla riktningar) och lämpar sig således inte för personer som (på sin höjd) kan tänka sig att lägga till ett WiFi-lösenord. Har du dock intresse att lära dig minimalt om pfSense och nätverkskonfiguration i allmänhet är pfSense ett kanonval.
VLAN
VLAN är ett virtuellt, lokalt, nätverk. Tekniken möjliggör för logisk uppdelning av nätverkstrafik i en kabel. Detta fungerar genom att routern "taggar" datan som skickas ut på ditt LAN och att dina enheter vet att data med olika taggar ska hanteras på olika vis.
Men, varför?
Alla uppkopplade prylar i ditt liv behöver inte kunna prata med varandra. Det finns ingen anledning att ditt kylskåp ska kunna initiera en anslutning till din TV. Skulle din smarta högtalare vara sårbar för en attack, och bli deltagare i ett bot-nät, vore det bra om viruset inte kan sprida sig till resten av ditt nätverk.
Egentligen behöver man inte VLAN. Man kan sätta upp samma funktionalitet mha statisk IP-allokering och massor av brandväggsregler, men det är väldigt smidigt att inte behöva tänka på sådant utan bara veta att en ny IoT-pryl som ansluts till iot_wifi
automatiskt kommer få en IP mha DHCP och sen ha brandväggsregler enligt de som är uppsatta för VLANet.
Min Setup
Jag har konfigurerat mitt nätverk med ett WAN (anslutning till Internet) och 6 stycken VLAN.
En snabbsummering:
LAN: Är standard-VLANet där all nätverksutrustning bor. Routern, switcharna, accesspunkterna.
OFFICE: Huserar min server och min stationära dator.
HOME: Är VLANet för alla som bor i hemmet. Hit kopplas telefoner, laptops, surfplattor, osv.
SURVEILLANCE: Har IP-kameror.
IoT: Här hamnar alla enheter som inte behöver prata med något annat. Kindles, damsugare, etc.
GUEST: Används bara för att få ett separat VLAN för gäst-WiFi.
Istället för att ha brandvägsregler för individuella enheter kan jag alltså specificera regler för varje VLAN. I mitt fall har jag följande konfig:
Gröna VLAN kan nå Internet och alla andra VLAN.
Gula VLAN kan nå Internet och alla VLAN förutom gröna.
Lila VLAN kan inte nå någonting förutom enheter i samma VLAN.
Röda VLAN kan nå Internet och enheter i samma VLAN.
Sen har jag ett fåtal undantag. Servern i det gröna VLANet hostar till exempel en del virtuella maskiner som jag vill kunna nå från det gula VLANet, så det finns specifika brandväggsregler för detta.
mDNS
Chromecasts (och många liknande prylar) använder mDNS för att hitta enheter på nätverket. Trots att alla våra Chromecasts befinner sig i IoT-VLANet kan de fortfarande användas av enheter i de VLAN som har tillåtelse att initiera anslutningar till IoT-VLANet. Detta mha Avahi, som finns som paket till pfSense. Det är alltså möjligt att tillåta mDNS mellan VLAN utan att för den skulle tillåta andra anslutningar att initialiseras från ett VLAN till ett annat.
WiFi
Det jag gillar absolut mest med min setup är hur enkelt det är att skapa separata WiFi-nätverk. I UniFi's mjukvara har jag specificerat mina olika nätverk enligt följande:
och sen har jag helt enkelt skapat separata SSIDn för de VLAN jag vill ska ha WiFi. Eftersom all routing sker i routern (duh) styrs allting i pfSense. Toppensmidigt!
Gotchas
Mina IP-kameror ska fungera "lokalt", men de vägrar fungera om de inte får kontakt med sina NTP-servrar. Jag har alltså behövt öppna port 123 för utgående kommunikation från lila VLAN.
Lokal castning fungerar inte mellan VLAN. När en av mina enheter var på Home-WiFi gick det inte att casta lokal media från den till en Nest Mini-högtalare. Spotify osv. fungerade och enheterna anslöt till varandra, men just uppspelning fungerade inte. I mitt fall är det inget problem att båda enheterna bor på IoT-nätverket, så jag har inte grävt djupare i det här.
Slutplädering
Ett segmenterat nätverk gör det lättare att hålla ordning och reda på sina prylar. Det blir enklare att se vilka enheter som försöker ansluta till vad och du behöver inte drunkna i brandväggsregler och undantag från dessa.
Ett segmenterat är dessutom ett säkrare nätverk och gör det markant mycket svårare för en angripare att nå dina enheter.
Allt som allt tog det mig en dag att få allting att fungera. Ingenting var egentligen särskilt krångligt, men man behöver hålla tungan i rätt mun och förstå hur varje enhets VLAN-inställningar fungerar.