OPNsense: blockera en IP-adress från internetåtkomst

Permalänk

OPNsense: blockera en IP-adress från internetåtkomst

Mål:
Blockera en IP-adress (Smart-TV) från att ansluta till Internet, men den ska fortfarande ha tillgång till NASen. Båda är kabelanslutna mot 192.168.1.X.

Övriga nät ifall det spelar roll:
LAN = 192.168.1.X.
VLAN 1 = 192.168.10.X
VLAN 2 = 192.168.20.X
VLAN 3 = 192.168.30.X
Inga floating rules.

Första sökträffen:
https://forum.opnsense.org/index.php?topic=17664.0

  • “If you configure it like:

  • LAN Interface inbound

  • Source -> Device IP

  • Destination -> Invert LAN

  • Protocol -> ANY

  • Action -> Block/Drop

  • And apply, it should work.

  • Ensure rule you create the following steps mentioned below is sitting on top of pass LAN rule.”

Detta blockerar visserligen TVn, men blockerar också internet på flera (alla?) andra enheter i nätverket.

Andra sökträffen:
https://forum.opnsense.org/index.php?topic=22528.0

  • "Make an alias called "rfc1918" (or any other name you like)

  • Alias rfc1918 contains these networks:

  • 10.0.0.0/8

  • 172.12.0.0/12

  • 192.168.0.0/16

  • 100.64.0.0/10

  • 127.0.0.0/8

  • In that case, the easiest and best place for the rule in the LAN interface.

  • GUI> Firewall: Rules: LAN

  • Direction IN

  • Source: 192.168.1.101

  • Port: any

  • Destination: !rfc1918 (note the ! - Destination invert selected)

  • Port: any

  • Gateway: default"

Resultatet blir samma som tidigare, internet blockeras också för andra enheter.
Det känns som att jag missar något grundläggande.

Mina LAN-regler just nu, översta avstängd eftersom den inte fungerar.

Permalänk
Medlem

Det är lite ologiskt att du kan ange en host adress med en nätmask och den plockar hela nätet. Borde bara gå att ange nät adresser om du har en nätmask annat än /32, så prova att ändra din /24 till /32 i regeln så funkar det.
Testa precis här hemma själv

Permalänk
Medlem

Det är en smaksak, men om brandväggen har stöd för brandväggsregler baserade på MAC-adress så kan man använda det i stället. Det funkar på iptables och nftables under Linux och jag tycker det borde vara möjligt även på FreeBSD/OPNSense. Baserar man regeln på IP så blir man beroende av att en andra regel finns för att tilldela en viss IP till viss MAC, så MAC kommer ändå i spel. Om TV:n får för sig att börja slumpa fram MAC-adress vid boot (ur locally administered-rangen) så är man körd oavsett.

Permalänk
Skrivet av Xcorp:

Borde bara gå att ange nät adresser om du har en nätmask annat än /32, så prova att ändra din /24 till /32 i regeln så funkar det.

Funkar fint, tack!

Skrivet av KAD:

Det är en smaksak, men om brandväggen har stöd för brandväggsregler baserade på MAC-adress så kan man använda det i stället. Det funkar på iptables och nftables under Linux och jag tycker det borde vara möjligt även på FreeBSD/OPNSense. Baserar man regeln på IP så blir man beroende av att en andra regel finns för att tilldela en viss IP till viss MAC, så MAC kommer ändå i spel. Om TV:n får för sig att börja slumpa fram MAC-adress vid boot (ur locally administered-rangen) så är man körd oavsett.

Bra idé men:

Permalänk
Medlem

Om det skulle vara så att tv ändrar macaddress så får kan du sätta upp ett specifikt ssid och subnät säg 192.168.2.0/24 (som ett exempel) som du kopplar upp tv:n på. Därefter sätter du först upp en regel för vad det subnät får nå, säg 192.168.0.0/24. Därefter sätter du upp en regel där du blockerar detta subnät, från att nå internet(0.0.0.0/0.)

Visa signatur

Spelriggen: Intel i5 10400F - GTX 1070 - 16GB DDR4 - ASUS TUF GAMING B460M-PLUS - 500 GB SDD - be quiet! 730W - Define Mini C

Permalänk
Medlem
Skrivet av Xcorp:

Det är lite ologiskt att du kan ange en host adress med en nätmask och den plockar hela nätet. Borde bara gå att ange nät adresser om du har en nätmask annat än /32, så prova att ändra din /24 till /32 i regeln så funkar det.
Testa precis här hemma själv
<Uppladdad bildlänk>

Fältet heter "Source", så det är inte så konstigt att man kan ange nätmask där

Permalänk
Medlem
Skrivet av dlq84:

Fältet heter "Source", så det är inte så konstigt att man kan ange nätmask där

Absolut, men att köpa en host-adress med en nätmask och sen matcha hela nätet är lite konstigt....
Rätt många verktyg varnar om man gör den tankemissen.

Permalänk
Medlem

Jag antar att det går att specificera gateway i brandväggsregler precis som i pfSense, isåfall kan du också göra en brandväggsregel som säger att din TV:s Ip-adress inte får går ut genom din/gateway(s).

Såhär ser en regel ut i min pfSense som förhindrar att klienter som som tillhör ailaset AzireVPN_SE kommer ut genom WAN Gateway:

Permalänk
Hedersmedlem
Skrivet av No_Jah:

Jag antar att det går att specificera gateway i brandväggsregler precis som i pfSense, isåfall kan du också göra en brandväggsregel som säger att din TV:s Ip-adress inte får går ut genom din/gateway(s).

Såhär ser en regel ut i min pfSense som förhindrar att klienter som som tillhör ailaset AzireVPN_SE kommer ut genom WAN Gateway:

https://i.imgur.com/3JMEfjH.png

Om du har action block kommer de inte gå ut genom någonting alls, då borde det sista markerade valet inte spela någon roll.

Visa signatur

Det kan aldrig bli fel med mekanisk destruktion

Permalänk
Medlem
Skrivet av Aphex:

Om du har action block kommer de inte gå ut genom någonting alls, då borde det sista markerade valet inte spela någon roll.

Hmm, det funkar iallafall för mig, klienterna kommer ut genom VPN-Gateway som är specifierat i annan brandväggsregel?

Permalänk
Medlem
Skrivet av Xcorp:

Absolut, men att köpa en host-adress med en nätmask och sen matcha hela nätet är lite konstigt....
Rätt många verktyg varnar om man gör den tankemissen.

menar du "köra"?. Inte alls konstigt, hans subnät är antagligen en /24, så blockar han /24 så blockas hela subnätet, väldigt logiskt.

OPNSense är inte för vanliga användare, de varnar inte om du gör något som avancerade användare skulle kunna tänka sig att göra.

Permalänk
Hedersmedlem
Skrivet av No_Jah:

Hmm, det funkar iallafall för mig, klienterna kommer ut genom VPN-Gateway som är specifierat i annan brandväggsregel?

Så kan det vara, om det blir pass-regeln som matchar. menade bara att gateway är överflödigt i just den här regeln, eftersom den inte släpper igenom något.

Visa signatur

Det kan aldrig bli fel med mekanisk destruktion

Permalänk
Medlem
Skrivet av Aphex:

Så kan det vara, om det blir pass-regeln som matchar. menade bara att gateway är överflödigt i just den här regeln, eftersom den inte släpper igenom något.

Hmm, ok. Så regelns alla vilkor läses alltså inte in innan det beslutas om vad som ska göras när man har block som action, det har jag aldrig tänkt på.

Permalänk
Hedersmedlem
Skrivet av No_Jah:

Hmm, ok. Så regelns alla vilkor läses alltså inte in innan det beslutas om vad som ska göras när man har block som action, det har jag aldrig tänkt på.

gw är inget villkor som matchas mot, det är ett argument som berättar att:

om ett paket matchar och skapar ett state från den här regeln, ska det och alla efterföljande paket som hör till samma anslutning skickas genom en specifik gateway och inte enligt standard routingtabell på opnsense-maskinen.

Användbart om du har flera wan, till exempel, och vill styra vilka enheter som använder vilken.

Men det har ingen effekt för block-regler, eftersom de inte skapar något state.

Visa signatur

Det kan aldrig bli fel med mekanisk destruktion

Permalänk
Medlem

- Skapa en ny regel & tillåt all trafik inom ditt lokala nätverk(för din enhet).
- Skapa sedan en block rule för utgående trafik med "source adress" för din enhet.

Rangordna sedan reglerna korrekt i listan för regler.

Allowregeln skall ligga före block.

Visa signatur

[IT-Dept]
Ryzen 1700 OC - 32 - 1070

Permalänk
Medlem

Regeln som Du fick i första träffen borde fungera om Du anger /32.

Men om det går(går på pfSense från stenåldern): välj istället Single host och skriv in IP-adressen på TV:n utan filter(= utan mask).

Visa signatur

Grundregel för felsökning: Bryt och begränsa.

Permalänk
Hedersmedlem
Skrivet av KAD:

Om TV:n får för sig att börja slumpa fram MAC-adress vid boot (ur locally administered-rangen) så är man körd oavsett.

Då får man sätta TV:n på ett eget VLAN och filtrera hela nätet.

Permalänk
Medlem
Skrivet av Aphex:

gw är inget villkor som matchas mot, det är ett argument som berättar att:

om ett paket matchar och skapar ett state från den här regeln, ska det och alla efterföljande paket som hör till samma anslutning skickas genom en specifik gateway och inte enligt standard routingtabell på opnsense-maskinen.

Användbart om du har flera wan, till exempel, och vill styra vilka enheter som använder vilken.

Men det har ingen effekt för block-regler, eftersom de inte skapar något state.

Det låter ju faktiskt logiskt.