{
  "port": 5080,
  "protocol": "tcp",
  "service": "FreeSWITCH external SIP profile (registered as onscreen)",
  "oneLiner": "The second SIP port — FreeSWITCH's external profile, where carriers and trunks land.",
  "whatItIs": "IANA has 5080 registered as onscreen, \"OnScreen Data Collection Service\", which you will not meet in practice. The real occupant is FreeSWITCH: its shipped external profile binds 5080 (the $${external_sip_port} variable) for gateways and SIP trunks, with the internal profile on 5060 for registered handsets. The split exists because the external profile runs with auth-calls disabled — carriers authenticate by IP, not by registration.",
  "exposure": {
    "verdict": "careful",
    "note": "The external profile accepts unauthenticated INVITEs by design, so the only thing between it and toll fraud is a source-IP ACL. Restrict it to your carrier's networks and audit the dialplan reachable from that profile."
  },
  "checkCommand": "nc -vz TARGET 5080",
  "links": [
    {
      "title": "FreeSWITCH docs — SIP profiles (internal 5060, external 5080)",
      "url": "https://developer.signalwire.com/freeswitch/users-and-endpoints/sip-profiles/",
      "kind": "official-docs"
    },
    {
      "title": "signalwire/freeswitch on GitHub",
      "url": "https://github.com/signalwire/freeswitch",
      "kind": "github"
    },
    {
      "title": "IANA port registry — 5080 (onscreen)",
      "url": "https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml?search=5080",
      "kind": "iana"
    }
  ]
}
