Brandvägg och tilldelning av DHCP samt DNS via OpenWrt

Permalänk
Medlem

Brandvägg och tilldelning av DHCP samt DNS via OpenWrt

Hej alla glada sweclocckerare 😉

I samband med flytt till villa har jag börjat ta tag i mina nätverkszoner som jag har hemma och tänkte rådfråga hur man går tillväga med att köra OpenWrt router och zonindelade brandväggsvillkor, närmare bestämt Input för blockering av access till router och alla tjänster mm som körs i den.

Jag hade en GL-MT2500 VPN gateway som jag installerat en komplett OpenWrt operativsystem och segmenterat mitt nätverk till olika VLANs för att säkra upp mitt nätverk lite bättre och har fått det mesta att fugnera som tänkt. Men jag stötte på en sak som ev. behöver göras vid gällande masquering for flera nätverk att få åtkomst till DNS och DHCP. Det är väll där jag känner mig helt novis och vet inte hur jag ska gå till väga.

Nåväl upplägget för tillfället är att jag har följande VLAN
VLAN 10 - Mitt egna nätverk
VLAN 20 - För betrodda IoT enheter
VLAN 30 - För obetrodda IoT enheter
VLAN 40 - För familjen
VLAN 50 - Gästnätverket

Mitt problem är i vart fall att jag inte får igång DHCP eller DNS funktionalitet på VLAN 20,30,40 och 50 samtidigt. Det beror på att jag ställer in min Brandväggs zon i Input -> Rejected vilket gör att tjänsterna ej kan användas.

Detta går ju o lösa genom att öppna upp trafiken för dessa zoner. Men av det jag försökt så kan jag bara tilldela den regeln till en av zonerna, vid flera regler med samma kriterier fast olika zoner verkar det som att jag endast får ett nätverk att fungera.
Exempel.

Brandväggen för gästnätverket ligger som Input -> Reject Output-> Accept Forward-> Reject
Öppnat brandväggen för trafik port 53 , 67-68. Vilket funkar när man kör en zon.
Lägger jag till nya zoner med samma input,output och forward samt öppnar samma portar så får jag inte det nya nätverket att fungera.
Min orsak till att ställa Input till reject är för att i princip alla vlans utom 10 ska inte ha tillgång till router eller annan IT utrustning som finns på nätverket hemma. Jag såg att där låg en tråd om att man borde använda sig av masquering funktionen för detta ändamålet men då min kunskap inte är så hög i detta område så behöver jag lite hjälp på denna punkt😊
https://openwrt.org/docs/guide-user/base-system/dhcp_configur...

Hur gör jag för att uppnå detta?

Jag har även försökt att blocka alla IP adresser samt sätta brandväggsvillkor Input -> accept som ger åtkomst till routern, det gav mig liknande resultat där jag sedan tappat DNS och DHCP funktionaliteten.

Har även i samband med en IT mässa (jobbar inte inom området) budat på en zylex XMG1915 som jag vann så har även bytt ut min unmanaged switch till denna managed. Finns där lösningar att göra via en managed switch för att uppnå mitt mål tas tips tacksamt emot

Trevlig sommar där ute !

Permalänk
Medlem
Skrivet av Bubbaa:

Jag hade en GL-MT2500 VPN gateway som jag installerat en komplett OpenWrt operativsystem

Du kör antagligen inte OpenWrt eftersom jag inte hittar något om att GL-MT2500 har stöd av OpenWrt.

Om du kör vanilla OpenWrt och inte GL.Inets bastard, så kommer du antagligen få bäst svar på OpenWrt-forumet. Om du kör GL.Inets bastard-OpenWrt så kommer du å andra sidan garanterat inte att få några svar på OpenWrt-forumet, då får du vända dig till kineserna.

Standard för att få svar är att klistra in resultatet av

ubus call system board cat /etc/config/network cat /etc/config/wireless cat /etc/config/dhcp cat /etc/config/firewall

som formatterad text i ett inlägg. Glöm inte att censurera eventuella MAC-adresser, SSID och lösenord i /etc/config/wireless.

Skrivet av Bubbaa:

har även bytt ut min unmanaged switch till denna managed. Finns där lösningar att göra via en managed switch för att uppnå mitt mål tas tips tacksamt emot

Ähm.

MT-2500 har vad jag kan se bara en LAN-port. Om du bara använder den så kan du inte på meningsfullt sätt använda VLAN. Någon måste tagga upp trafiken och det gör du i switchen.

Wi-Fi tycks hamna helt utanför ämnet eftersom ingen av enheterna du nämnt har det, men man behöver mappa ett SSID till ett VLAN om man ska separera trafik till/från Wi-Fi (ja, det finns andra varianter också).

Skrivet av Bubbaa:

man borde använda sig av masquering funktionen för detta ändamålet men då min kunskap inte är så hög i detta område så behöver jag lite hjälp på denna punkt😊

Masquerading (kryssrutan under "Zones" på sidan "Firewall - Zone Settings" i luci) är (source) NAT, dvs översättning av privata (RFC1918) IPv4-adresser på LAN till en (förhoppningsvis publik) IPv4 på WAN. Det har inget direkt med ditt problem att göra. Det behövs dock för att trafik från respektive nätverkszon ska nå internet.

Masquerading och dnsmasq har väldigt lite med varandra att göra. dnsmasq är en kombinerad DNS- och DHCP-server som kör på routern. Den översätter host-namn till IP-adresser och delar ut IP-adresser på LAN:et. Ja, det är till dnsmasq du vill ha fram trafiken när du öppnar åtkomst till port 53 och 67-68, det är dnsmasq som ska svara på dessa förfrågningar. Men det är troligen inte där problemet ligger.

Skrivet av Bubbaa:

Brandväggen för gästnätverket ligger som Input -> Reject Output-> Accept Forward-> Reject
Öppnat brandväggen för trafik port 53 , 67-68. Vilket funkar när man kör en zon.
Lägger jag till nya zoner med samma input,output och forward samt öppnar samma portar så får jag inte det nya nätverket att fungera.

När du väl fått in taggad trafik i routern och mappat taggarna till brandvägszoner så är detta rätt teknik.

Input->Reject stänger mycket riktigt tillgång till routern själv, vilket är bra i gäst-zonen (mindre bra i admin-zonen, då låser du ute dig själv).

Det stämmer att man måste duplicera varje regel en gång för varje zon, (l)uci har inget sätt att sätta samma regel i flera zoner. Och ja, det brukar funka fint att överskrida en allmän regel för zonen (blocka allt) med mer specifika regler (tillåt vissa kombinationer av port/protokoll). Och ja, det brukar fungera bra i flera zoner samtidigt.

Jag gissar att det går åt pipan någonstans innan dess, det låter som om du har gjort rätt i brandväggen. VLAN-device-interface-zon-kedjan är definitivt inte trivial att få till.

Forward->Reject betyder för övrigt att du förbjuder routning mellan flera "luci-interface" (a.k.a network) i samma zon. Namngivningen och förklaringen av detta är under all kritik, det enda vettiga stället jag vet är detta.

Din förklaring på vad som inte funkar är för övrigt rätt begränsad. Funkar inte DHCP-tilldelning? Namnuppslag? Internetaccess? I förlängningen behöver du två enheter som kan sitta på respektive VLAN och se om de kan nå varandra eller inte, beroende på regelverk. Jag föredrar Linuxburkar utan brandvägg och netcat för den övningen.

Permalänk
Medlem
Skrivet av KAD:

Du kör antagligen inte OpenWrt eftersom jag inte hittar något om att GL-MT2500 har stöd av OpenWrt.

Jag antar med tanke på ditt svar att det är en vanilla version. Jag hittade den på openwrt-forumet. En snapshot som gick att använda. Installationen i sig funkade fint.

Jag drog iväg en tråd där gällande detta på openwrt forumet, men jag har antagligen forumlerat mig fel eller stött på ett komplext problem.***Edit som verkar fungera som tänkt***

Skrivet av KAD:

Ähm.

MT-2500 har vad jag kan se bara en LAN-port. Om du bara använder den så kan du inte på meningsfullt sätt använda VLAN. Någon måste tagga upp trafiken och det gör du i switchen.

Så vitt jag vet så funkar det fint, provat av mina VLANs och får IP adresser tilldelade precis som vanligt i segmenterade olika nät.
Skulle jag ändra mina brandväggzoner(sätta Input,Output och forward till accept) funkar allt som tänkt så just VLAN biten funkar. Jag kör ju taggade vlans ut från GL-Inet enheten.

Skrivet av KAD:

Wi-Fi tycks hamna helt utanför ämnet eftersom ingen av enheterna du nämnt har det, men man behöver mappa ett SSID till ett VLAN om man ska separera trafik till/från Wi-Fi (ja, det finns andra varianter också).

Har jag löst med hjälp av AP's, köpte hem Cisco AX150 när jag hittade dem på rea, den hanterar ju VLANs och massa annat kul. Något för mig att grotta ner mig senare.

Skrivet av KAD:

Masquerading (kryssrutan under "Zones" på sidan "Firewall - Zone Settings" i luci) är (source) NAT, dvs översättning av privata (RFC1918) IPv4-adresser på LAN till en (förhoppningsvis publik) IPv4 på WAN. Det har inget direkt med ditt problem att göra. Det behövs dock för att trafik från respektive nätverkszon ska nå internet.

Masquerading och dnsmasq har väldigt lite med varandra att göra. dnsmasq är en kombinerad DNS- och DHCP-server som kör på routern. Den översätter host-namn till IP-adresser och delar ut IP-adresser på LAN:et. Ja, det är till dnsmasq du vill ha fram trafiken när du öppnar åtkomst till port 53 och 67-68, det är dnsmasq som ska svara på dessa förfrågningar. Men det är troligen inte där problemet ligger.

Jag vet bara att när jag försöker ansluta min dator till dessa VLANs som inte fugnerar så får jag bara det automatiska IP 169.x.x.x nätet. Försöker du med en andriod enhet så klagar den på att IP adresser inte blir tilldelade.

Skrivet av KAD:

Det stämmer att man måste duplicera varje regel en gång för varje zon, (l)uci har inget sätt att sätta samma regel i flera zoner. Och ja, det brukar funka fint att överskrida en allmän regel för zonen (blocka allt) med mer specifika regler (tillåt vissa kombinationer av port/protokoll). Och ja, det brukar fungera bra i flera zoner samtidigt.

Jag provade på nytt men av någon märklig anledning ser det nu ut att fungera. Mitt IoT Obetrodda nät har samma brandväggsregler som Gäst, dock fick jag ju aldrig DHCP eller dns att funger, vilket funkar fint nu, oklart varför. Får spåna vidare i detta...