{
  "port": 9003,
  "protocol": "tcp",
  "service": "Xdebug (DBGp)",
  "oneLiner": "Xdebug 3's default debug port — the IDE listens, PHP connects back to it.",
  "whatItIs": "Xdebug 3 changed its default from 9000 (which collided with PHP-FPM) to 9003 for xdebug.client_port, and the DBGp command-line client uses the same number. The direction surprises people: the debugged PHP process is the client, and your editor or IDE is the thing listening on 9003. So a listener here is almost always a developer's IDE, and IANA has 9003–9004 marked Unassigned.",
  "exposure": {
    "verdict": "never",
    "note": "A DBGp listener accepts a debug session from anyone who can reach it and lets that session evaluate code in the debugger's context; bind it to loopback and reach remote hosts over an SSH tunnel."
  },
  "checkCommand": "sudo lsof -nP -iTCP:9003 -sTCP:LISTEN",
  "links": [
    {
      "title": "Xdebug — settings (xdebug.client_port, default 9003)",
      "url": "https://xdebug.org/docs/all_settings",
      "kind": "official-docs"
    },
    {
      "title": "xdebug/xdebug on GitHub",
      "url": "https://github.com/xdebug/xdebug",
      "kind": "github"
    },
    {
      "title": "IANA Service Name and Transport Protocol Port Number Registry — 9003",
      "url": "https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml?search=9003",
      "kind": "iana"
    }
  ]
}
