Xandeum pNode Network Port Requirements
What this guide covers
This page lists the current network ports and firewall checks required or recommended for Xandeum pNode operation.
These examples are based on Ubuntu 24.04 LTS with UFW on a VPS. If you use a different setup, adjust the commands while preserving the required ports, protocols, and traffic direction.
Please note that this guide focuses specifically on Xandeum pNode network requirements, not full VPS administration. The examples below are intended to help operators confirm the required ports and firewall posture for pNode operation. Operators remain responsible for their own server configuration, security, maintenance, backups, recovery access, and any other services they choose to run on the same VPS.
Xandeum defines these requirements because insecure, unreachable, or misconfigured pNodes can affect pNode reliability, network security, network integrity, and reward-related operation.
Scope
This guide covers:
- current Xandeum pNode port requirements;
- required traffic direction and protocol;
- example UFW commands for Ubuntu 24.04 LTS;
- verification commands for checking firewall state;
- SSH access considerations when changing firewall rules;
- a known local port conflict that may affect VPS setups using both pod and pod-manager.
This guide does not cover:
- full VPS administration;
- changing the SSH port;
- SSH key setup;
- password-authentication settings;
- hosting-provider recovery procedures;
- automated firewall reset or replacement scripts.
Supported operating system
The examples in this guide are based on Ubuntu 24.04 LTS with UFW.
Check the operating system before applying firewall changes:
cat /etc/os-releaseIf the VPS is not running Ubuntu 24.04 LTS, review the relevant setup requirements for your operating system and firewall tool before continuing.
Current Xandeum pNode port profile
The current Xandeum pNode network profile is:
Port | Direction | Protocol | Purpose |
|---|---|---|---|
5000 | Inbound | UDP | Atlas |
9001 | Inbound and outbound | UDP | Gossip |
6000 | Inbound | TCP | pRPC |
7000 | Inbound and outbound | TCP | Ingest/Tap |
7001 | Outbound | UDP | outbound pod-to-pod fanout |
7002 | Inbound | UDP | inbound pod-to-pod fanout |
SSH port | Inbound | TCP | SSH access with UFW rate limiting |
The SSH port is usually 22, unless the operator has intentionally configured a different SSH port.
Purpose labels are descriptive operational labels. If more precise service names are confirmed later, this table should be updated.
Before changing firewall rules
Firewall changes can interrupt access to a VPS if SSH access is not preserved.
Before making changes:
- Keep the current SSH session open.
- Open a second SSH session and confirm it works.
- Confirm the active SSH port.
- Check the current firewall state.
- Confirm that you can log in to your hosting-provider dashboard and that account recovery details are current.
- If your provider supports snapshots or backups, take a fresh snapshot or backup before making significant firewall changes.
Check the current UFW state:
sudo ufw status verbosesudo ufw status verbose is preferred because it shows both active rules and default policies, such as deny incoming and allow outgoing.
Example UFW commands
These commands are examples. Operators should review their current firewall state before applying changes, especially if the VPS also runs monitoring, dashboards, backup agents, support tooling, or other non-Xandeum services.
Show current UFW status first:
sudo ufw status verboseSSH access rule
Add SSH rate limiting for the active SSH port before enabling or tightening firewall rules.
For the default SSH port:
sudo ufw limit 22/tcp comment 'SSH access with UFW rate limiting'If SSH has intentionally been moved to another port, replace 22 with the active SSH port. For example:
sudo ufw limit 2022/tcp comment 'SSH access with UFW rate limiting'Xandeum pNode rules
Allow the current Xandeum pNode ports:
sudo ufw allow 5000/udp comment 'Atlas'
sudo ufw allow 9001/udp comment 'Gossip inbound'
sudo ufw allow out 9001/udp comment 'Gossip outbound'
sudo ufw allow 6000/tcp comment 'pRPC'
sudo ufw allow 7000/tcp comment 'Ingest/Tap inbound'
sudo ufw allow out 7000/tcp comment 'Ingest/Tap outbound'
sudo ufw allow out 7001/udp comment 'Outbound pod-to-pod fanout'
sudo ufw allow 7002/udp comment 'Inbound pod-to-pod fanout'9001/udp and 7000/tcp are listed twice because they are inbound and outbound requirements. In UFW, inbound and outbound rules are separate. For example, sudo ufw allow 7000/tcp allows inbound traffic to local port 7000; sudo ufw allow out 7000/tcp allows outbound traffic to destination port 7000.
7001/udp and 7002/udp are different because they have different directions in the current profile: 7001/udp is outbound pod-to-pod fanout, while 7002/udp is inbound pod-to-pod fanout.
If your firewall uses the common default policy of allowing outgoing traffic, explicit outbound rules may already be covered. They are still shown here to document the full Xandeum traffic profile, especially for operators using stricter outbound policies.
Default UFW policies
Many operators use a default-deny inbound firewall policy, then explicitly allow only the inbound services they need:
sudo ufw default deny incoming
sudo ufw default allow outgoingThese default-policy commands do not delete existing UFW allow rules. If the Xandeum allow rules already exist, running these default-policy commands afterwards should not remove or disable those specific rules.
However, default policies affect traffic that does not match an explicit rule. Before setting or changing default policies, make sure SSH and any other required services have explicit allow or limit rules.
For example, default deny incoming is safe for Xandeum port 7000/tcp only if the inbound 7000/tcp allow rule exists. Similarly, default allow outgoing allows outbound traffic generally; explicit outbound rules for 9001/udp, 7000/tcp, and 7001/udp document the Xandeum profile and remain useful for stricter firewall setups.
Enable UFW only after confirming SSH will remain accessible:
sudo ufw enable
sudo ufw status verboseKnown local port conflict: pod-manager and port 7000
Port 7000/tcp is part of the current Xandeum pNode network profile for Ingest/Tap traffic.
Some VPS setups may also have pod-manager installed. If both pod and pod-manager are configured to use port 7000 on the same VPS, one service may fail to start or may prevent the other service from binding to the port correctly.
Before changing firewall rules, check what is listening on port 7000:
sudo ss -ltnp | grep ':7000'If pod-manager is using port 7000, move the pod-manager server port to another unused local port, such as 7100, so that pod can use port 7000.
The pod-manager configuration is commonly located at:
/root/pod-man/config.jsonPreserve the existing JSON structure and change only the configured server or listen port. The exact key name may vary by installed pod-manager version.
After changing the configuration, restart pod-manager and confirm it is running:
sudo systemctl restart pod-manager
sudo systemctl status pod-manager --no-pagerThen check port 7000 again:
sudo ss -ltnp | grep ':7000'If pod does not automatically take port 7000, restart the relevant pod service according to the pNode setup used for that installation.
Do not add the replacement pod-manager port, such as 7100, to the public firewall profile unless your setup specifically requires external access to it. In many cases, a management port should remain local or be accessed through a controlled method such as SSH.
SSH port note
Moving SSH away from port 22 is optional. It may reduce generic port-22 scan noise and log clutter, but it should not be presented as meaningful security hardening by itself.
It does not replace maintaining reliable SSH access, using appropriate authentication settings, applying firewall rate limiting, or keeping recovery access available.
UFW rate limiting note
UFW rate limiting helps reduce repeated SSH connection attempts from the same IP address. It does not inspect SSH login failures, usernames, passwords, or keys. It limits repeated connection attempts at the firewall level.
This can help reduce noisy brute-force and bot activity, but it is not a full SSH security solution by itself.
Avoid reset-based firewall instructions
Do not use ufw --force reset as a normal public operator instruction.
A reset can remove rules that the operator relies on for SSH, monitoring, backups, dashboards, support access, or other services. Even with rollback instructions, a reset can still cause lockout or downtime if SSH access is interrupted before the operator can recover.
The safer default is:
- show the current UFW state;
- add only missing Xandeum-required rules;
- preserve unrelated rules unless the operator has reviewed them;
- manually remove legacy or unnecessary ports only when the operator understands the impact.
Verification
After applying changes, review the active firewall state:
sudo ufw status verboseExpected Xandeum-related rules should include:
5000/udp ALLOW IN Anywhere # Atlas
9001/udp ALLOW IN Anywhere # Gossip inbound
9001/udp ALLOW OUT Anywhere # Gossip outbound
6000/tcp ALLOW IN Anywhere # pRPC
7000/tcp ALLOW IN Anywhere # Ingest/Tap inbound
7000/tcp ALLOW OUT Anywhere # Ingest/Tap outbound
7001/udp ALLOW OUT Anywhere # Outbound pod-to-pod fanout
7002/udp ALLOW IN Anywhere # Inbound pod-to-pod fanout
SSH/tcp LIMIT IN Anywhere # SSH access with UFW rate limitingIPv6 entries may also appear if IPv6 is enabled in UFW.
Operator responsibility
These are the current network ports and baseline firewall checks required or recommended for Xandeum pNode operation. VPS administration remains the responsibility of the operator.
Operators should ensure their firewall policy does not break SSH access, hosting-provider access, monitoring, backups, or any other services they intentionally run on the VPS.
Before making firewall changes, confirm that you can access your hosting-provider dashboard and that your account recovery details are current. If your provider supports snapshots or backups, take a fresh snapshot or backup before making significant firewall changes.
Internal tooling note
Xandeum may use internal helper tools for development, support, or diagnostics. Those tools are not part of this public guide. Operators should follow the port matrix and example commands above, and should review any firewall change before applying it to their own VPS.