Block all DDS off the Pi and bring up PipeWire behind the firewall
ROS never leaves the robot, by the owner's decision: the firewall drops domain 42's DDS ports on every interface but loopback (usb0 included), discovery is pinned to LOCALHOST, and hermes_mcp is the only bridge to the outside. PipeWire 1.0.5 runs as hermes's user services with its network server on TCP 4713; the firewall, loaded at boot before it, is the protection. Verified from talos: 4713 connects over usb0 and times out over Wi-Fi. CONTEXT.md brought up to date: the face service, gaze, recognition, the firewall, and what is left. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AFN8nRRCiDiMN7ChBpHJhs
This commit is contained in:
@@ -1,9 +1,10 @@
|
||||
#!/usr/sbin/nft -f
|
||||
# The robot's audio (4713), MCP (8765) and face webhook (8766) ports are reachable only over the
|
||||
# USB link, and only from the host at 10.55.0.1. Every other interface, Wi-Fi included, is dropped.
|
||||
# ROS 2's DDS has no authentication, and /camera/* and /vision/faces carry video and recognised
|
||||
# names, so its ports (domain 42: 17900-18149 with Fast DDS's default offsets) are dropped on every
|
||||
# interface but usb0 and loopback too.
|
||||
# ROS 2 never leaves the robot: its DDS has no authentication, and /camera/* and /vision/faces
|
||||
# carry video and recognised names. Domain 42's ports (17900-18149 with Fast DDS's default offsets)
|
||||
# are dropped on every interface but loopback, usb0 included. The only way in or out is hermes_mcp,
|
||||
# which talks to the ROS graph locally and to the host over MCP.
|
||||
# SSH and everything else are left alone: that policy is the owner's call.
|
||||
|
||||
table inet robot
|
||||
@@ -15,6 +16,6 @@ table inet robot {
|
||||
iif "lo" accept
|
||||
iifname "usb0" ip saddr 10.55.0.1 tcp dport { 4713, 8765, 8766 } accept
|
||||
tcp dport { 4713, 8765, 8766 } drop
|
||||
iifname != { "lo", "usb0" } udp dport 17900-18149 drop
|
||||
iifname != "lo" udp dport 17900-18149 drop
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user