Node-RED on Mac OS Sequoia - local network access issues

I had given up on getting Node-RED to run properly on my Mac after upgrading to Sequoia. The new Mac security protections that prevent local network access unless explicitly granted to applications is a real nightmare.

I recently asked perplexity.ai for help. Using its basic model, it gave me some suggestions that did not work. I switched to using its "research" model, though, and hit pay dirt.

I finally settled on this workaround and thought I would share it here in case it's of use to other Sequoia sufferers.

Follow this procedure to enable node red to access the local network:

Steps:

  1. Locate Node-RED’s installation path:
    which node-red # Typically /usr/local/bin/node-red
  2. Create a wrapper app bundle:
sudo su
mkdir -p /Applications/Node-RED.app/Contents/MacOS
cat > /Applications/Node-RED.app/Contents/Info.plist <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>CFBundleExecutable</key>
    <string>node-red</string>
    <key>CFBundleIdentifier</key>
    <string>org.node-red</string>
    <key>CFBundleName</key>
    <string>Node-RED</string>
</dict>
</plist>
EOF

ln -s $(which node-red) /Applications/Node-RED.app/Contents/MacOS/ 
exit

open /Applications/Node-RED.app

Now find the settings pop-up and authorise local network access for “node”.
This gives Node-RED a stable bundle ID, allowing macOS to track its permissions.

You can terminate Node-RED and then use your normal method of starting it. It should now be able to freely access the local network.

I hope this is helpful to someone.

3 Likes

Hi, thanks for sharing that, I'm sure it will be useful to others. I've taken the liberty of moving to the FAQ's section for easier future reference. :slight_smile: