No tengo suficiente representante para comentar, así que intentaré una respuesta ...
Quería hacer un comentario ya que me gustaría aclarar por qué necesita agregar npm: mi instalación de npm (a través de homebrew) funciona bien, sin hacer un agujero en el firewall. Obviamente YMMV ...! Pero tenga en cuenta que no probé esto correctamente con npm (probé cómo agregar npm y siguió funcionando bien).
Creo que quieres el firewall de la capa de aplicación . (Es el mismo cortafuegos al que también puede acceder a través de Preferencias del sistema - > Seguridad y privacidad - > Cortafuegos).
La API de mi socketfilterfw parece haber cambiado con respecto a la analizada en el artículo vinculado. Le sugiero precaución y que compruebe cuál es la API para su versión antes haciendo cualquier otra cosa:
/usr/libexec/ApplicationFirewall/socketfilterfw -h
Mi versión de socketfilterfw no tiene la opción "-t" mencionada en el artículo vinculado, así que tuve que usar:
/usr/libexec/ApplicationFirewall/socketfilterfw --add /usr/local/bin/npm