Skip to content

Port Management

Every VM receives a public IPv4 address with a configurable firewall. By default, port 22 (SSH) is open. You can open additional ports for web servers, APIs, databases, or any other service.

Via the dashboard:

Flip your instance card to reveal the port management panel. Enter a port number and click Add. The firewall updates immediately.

Via the API:

Terminal window
curl -X POST https://console.carolinacloud.io/api/instance/<uuid>/add-port/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"port": 443}'

Via the CLI:

Port management is available through the API. CLI support is planned.

Via the dashboard:

Click the remove button next to any open port in the port management panel.

Via the API:

Terminal window
curl -X POST https://console.carolinacloud.io/api/instance/<uuid>/remove-port/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"port": 443}'

Port 22 (SSH) is always open and cannot be closed. This ensures you can never accidentally lock yourself out of your VM.

ServicePort
SSH22 (always open)
HTTP80
HTTPS443
PostgreSQL5432
MySQL3306
Redis6379
Custom API8000, 8080, 3000, etc.

Port changes trigger an automatic firewall refresh on the router. The iptables rules are regenerated to forward traffic from your public IP to your VM’s internal address on the specified ports. Changes take effect within seconds.

Containers do not have public IPv4 addresses and do not support port management. Web-accessible containers (Marimo, RStudio) are served via reverse proxy at https://<name>.carolinacloud.io.