Jump to content

Writing Firewall rules for the Elgato Light

BigTechDaddy
Go to solution Solved by BigTechDaddy,
On 2/15/2022 at 2:10 AM, BigTechDaddy said:

figured it out!

image.thumb.png.17f3b88d9b7bd81a909d871637469031.png

I overthought it, it just needed a TCP rule and a ICMP rule.

You were right, when I tried the ping I tried it from the firewall, I forgot to allow ping between light and PC.

 

Many thanks !

 

Ok, I was wrong. I didn't need all of these.

I only needed TCP to port 9123.

 

image.thumb.png.1e2a69db7889df6134784898bb619972.png

Today I purchased an Elgato Key Light. I should prefice this by saying I have a home network with different VLANS, the two you should know about are the IoT and LAN. I should also mention I'm using pfsense as firewall.

I took a PCAP of turning the light on and off a few times.

image.thumb.png.35912afaf8dfbcbce7ce61e5f8dcb143.png

Here's the firewall rule from LAN to elgato key light, at first I was trying port 80, but then I switched it to any just to see it if would work.

image.thumb.png.9ec42116e591a2b1855fcb4f3e39860f.png

I added a rule from the light on its subnet to any device on LAN

image.thumb.png.d8c1bee3ddba6e56fe6022e1825e1b27.png

I do have avahi enabled

image.thumb.png.3eedc8263da7559be1ad5fdc620929e4.png

 

Looking for ideas on how to get this light working across VLANS.

thanks

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

Are you able to ping the light when you have the firewall rule set to "any"?

Link to comment
Share on other sites

Link to post
Share on other sites

6 hours ago, LAwLz said:

Are you able to ping the light when you have the firewall rule set to "any"?

Yes I am
PING xx.xx.20.79 (xx.xx.20.79) from xx.xx.50.1: 56 data bytes
64 bytes from xx.xx.20.79: icmp_seq=0 ttl=255 time=2.555 ms
64 bytes from xx.xx.20.79: icmp_seq=1 ttl=255 time=2.480 ms
64 bytes from xx.xx.20.79: icmp_seq=2 ttl=255 time=3.755 ms

--- xx.xx.20.79 ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 2.480/2.930/3.755/0.584 ms
Link to comment
Share on other sites

Link to post
Share on other sites

58 minutes ago, BigTechDaddy said:
Yes I am
PING xx.xx.20.79 (xx.xx.20.79) from xx.xx.50.1: 56 data bytes
64 bytes from xx.xx.20.79: icmp_seq=0 ttl=255 time=2.555 ms
64 bytes from xx.xx.20.79: icmp_seq=1 ttl=255 time=2.480 ms
64 bytes from xx.xx.20.79: icmp_seq=2 ttl=255 time=3.755 ms

--- xx.xx.20.79 ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 2.480/2.930/3.755/0.584 ms

I see.

 

I did a quick Google search and managed to find this page.

According to it, Elgao products use Bonjou (which in turn uses multicast) for pairing and then HTTP for commands.

 

My guess is that something in the pairing process breaks. I don't have much experience with pfSense and I don't have access to your firewall, but I did find a mention on NetGate's website that pfSense blocks all packets with IP Options set by default. Bonjour 

So if you go into that firewall rule you just made, go to the advanced tab and then click "enable IP options" it might work.

 

 

Once you got everything working, you can probably modify that firewall rule to only allow port TCP/80 and UDP/5353. That should be enough for your Elgato lights.

Link to comment
Share on other sites

Link to post
Share on other sites

8 hours ago, LAwLz said:

I see.

 

I did a quick Google search and managed to find this page.

According to it, Elgao products use Bonjou (which in turn uses multicast) for pairing and then HTTP for commands.

 

My guess is that something in the pairing process breaks. I don't have much experience with pfSense and I don't have access to your firewall, but I did find a mention on NetGate's website that pfSense blocks all packets with IP Options set by default. Bonjour 

So if you go into that firewall rule you just made, go to the advanced tab and then click "enable IP options" it might work.

 

 

Once you got everything working, you can probably modify that firewall rule to only allow port TCP/80 and UDP/5353. That should be enough for your Elgato lights.

Great idea, I Added another rule for 244.0.0.251 for 5353 coz I saw it reaching out to that too. MDNS

Ok, so I feel like we're making progress.

 

When I connect to the IoT wifi, and then disconnect it stays in the app, I can press it and it will turn the light on, one time I Was able to turn it on and off before it dissapers.

So I know the communication is being made and achieved, however there's some check that happens after the button press which removes it from the interface.

 

Thanks for the feedback 🙂

Link to comment
Share on other sites

Link to post
Share on other sites

23 minutes ago, BigTechDaddy said:

Great idea, I Added another rule for 244.0.0.251 for 5353 coz I saw it reaching out to that too. MDNS

Ok, so I feel like we're making progress.

 

When I connect to the IoT wifi, and then disconnect it stays in the app, I can press it and it will turn the light on, one time I Was able to turn it on and off before it dissapers.

So I know the communication is being made and achieved, however there's some check that happens after the button press which removes it from the interface.

 

Thanks for the feedback 🙂

figured it out!

image.thumb.png.17f3b88d9b7bd81a909d871637469031.png

I overthought it, it just needed a TCP rule and a ICMP rule.

You were right, when I tried the ping I tried it from the firewall, I forgot to allow ping between light and PC.

 

Many thanks !

 

Link to comment
Share on other sites

Link to post
Share on other sites

On 2/15/2022 at 2:10 AM, BigTechDaddy said:

figured it out!

image.thumb.png.17f3b88d9b7bd81a909d871637469031.png

I overthought it, it just needed a TCP rule and a ICMP rule.

You were right, when I tried the ping I tried it from the firewall, I forgot to allow ping between light and PC.

 

Many thanks !

 

Ok, I was wrong. I didn't need all of these.

I only needed TCP to port 9123.

 

image.thumb.png.1e2a69db7889df6134784898bb619972.png

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×