# VPSNine Help Center

Guides for your Linux VPS: logging in, keeping it secure, networking, billing and your account.

## Getting started

Create your account, choose a distribution and log in to your first server.

- [Panel tour: every VPSNine panel guide, in order](https://vpsnine.com/help/panel-tour.md): A map of the VPSNine panel in the order you'll meet it, from signing up and ordering to the server's tabs, billing and your account, with a guide for each part.
- [What is a VPS? A guide for beginners](https://vpsnine.com/help/what-is-a-vps.md): A VPS is a virtual machine with its own share of CPU, memory and disk, and root access. What that means, what you can run, and what you look after.
- [VPS vs shared hosting](https://vpsnine.com/help/vps-vs-shared-hosting.md): Shared hosting runs your site alongside hundreds of others with the host doing the admin. A VPS is your own machine and your own admin. How to choose.
- [KVM vs OpenVZ and LXC: what you actually get](https://vpsnine.com/help/kvm-vs-openvz-and-lxc.md): KVM gives each VPS its own kernel; OpenVZ and LXC share the host's. What that changes for Docker, VPNs, memory and swap, and how to check what you have.
- [Choose a Linux distribution](https://vpsnine.com/help/choose-a-distribution.md): The six Linux distributions (ten versions) you can order, how long each gets security updates, and how to pick. Most people should take Ubuntu LTS.
- [Create your VPSNine account](https://vpsnine.com/help/create-an-account.md): Sign up at my.vpsnine.com, pick a password that passes the checks, and confirm your email. You can make an account before you're ready to order.
- [Confirm your email address](https://vpsnine.com/help/verify-your-email.md): How the confirmation link works, why it asks you to log in and press a button, how long it lasts, and how to get a new one if it expired.
- [Order your first server, step by step](https://vpsnine.com/help/order-your-first-server.md): Every part of the VPSNine order form, from the operating system to the order button, what each choice does, and what happens after you pay.
- [What happens when you order a server](https://vpsnine.com/help/what-happens-when-you-order.md): The steps from choosing a plan to your first SSH login, what VPSNine does in between, and how billing works after that.
- [Watch your server build](https://vpsnine.com/help/watch-your-server-build.md): What each step of the live build timeline means, what "SSH answering" checks, and what to do if SSH hasn't answered 10 minutes after the server started.
- [Connect to your server with SSH](https://vpsnine.com/help/connect-with-ssh.md): How to log in to a Linux VPS over SSH from Linux, macOS or Windows, with the SSH key you picked when you ordered it.
- [Use SSH keys instead of a password](https://vpsnine.com/help/ssh-keys.md): Create an Ed25519 key, add it to your account and to running servers, and keep SSH password logins switched off.

## Servers

Choose a plan, then set up swap, Docker, nginx, backups, snapshots and monitoring.

- [Choose a plan](https://vpsnine.com/help/choosing-a-plan.md): How to match Budget, Standard or Extreme to what you plan to run, and how to check whether a server you already have is too small or too big.
- [How much RAM does your VPS need?](https://vpsnine.com/help/how-much-ram-does-my-vps-need.md): Most small servers need 1 to 4 GB. How to estimate memory from what you'll run, then measure a real server to see whether it's too small or too big.
- [One-click apps](https://vpsnine.com/help/one-click-apps.md): Have Docker, WordPress, WireGuard or another app installed on a new server's first boot, how to watch it happen, and what to do if it fails.
- [Extra packages and setup scripts](https://vpsnine.com/help/setup-scripts.md): Name extra packages and a shell script for a new server's first boot, so it comes up with your user, your tools and your services already in place.
- [Set a root password](https://vpsnine.com/help/root-password.md): When a root password helps, why SSH keys are still the safer way in, and how to set one when you order, reinstall or later.
- [Add-ons](https://vpsnine.com/help/add-ons.md): More RAM, vCPUs, disk, transfer or IPv4 addresses on top of your plan. What each one costs, how it's applied, and what happens when you add or remove one.
- [Your servers dashboard](https://vpsnine.com/help/servers-dashboard.md): The panel's servers page from top to bottom: what needs your attention, the setup checklist, and how to filter, sort, tag and switch the server list to a table.
- [The server overview page](https://vpsnine.com/help/server-overview.md): What each part of a server's page tells you: its state and addresses, the power keys, usage at a glance, the status cards, events, details and graphs.
- [Your server's first hour: a checklist](https://vpsnine.com/help/first-hour-checklist.md): Ten things to do on a new Linux VPS before you put anything on it, in order, with commands for Ubuntu 24.04 and Debian 12.
- [Off-site backups (planned): set up and restore](https://vpsnine.com/help/off-site-backups.md): Not on sale yet: how the planned off-site backups add-on will work. Daily encrypted backups of your whole server, kept with another provider, and restoring one.
- [Protect a server from deletion](https://vpsnine.com/help/protect-a-server-from-deletion.md): Turn on deletion protection so a server can't be deleted, reinstalled or put back to a snapshot by mistake, from the panel, the CLI or the API.
- [Server settings: name, tags, notes, billing term and the danger zone](https://vpsnine.com/help/server-settings.md): The Settings tab of a server: give it a panel name, tags and private notes, switch monthly or yearly billing, cancel it, and reinstall or delete it.
- [Restore a deleted server](https://vpsnine.com/help/restore-a-deleted-server.md): A server you delete stays in the recycle bin for 7 days with its disk and IP addresses. Restore it from there, or delete it forever now.
- [Snapshots](https://vpsnine.com/help/snapshots.md): Keep up to three copies of a server's disk plus daily or weekly automatic ones, go back to one when a change goes wrong, and the minute of downtime.
- [Back up your server](https://vpsnine.com/help/backups-you-should-run.md): Set up your own off-server backups with rsync or BorgBackup, include your databases, run them nightly, and prove you can restore them.
- [Monitor your website's uptime](https://vpsnine.com/help/uptime-monitoring.md): Check a website, API, port or DNS record from outside every minute, and get one notice when it goes down and one when it is back up.
- [Schedule reboots and power windows](https://vpsnine.com/help/schedule-reboots-and-power-windows.md): Reboot a server every day or every week at an hour you choose, and stop it during the hours you don't need it, in your own time zone.
- [Heartbeat monitoring for cron jobs](https://vpsnine.com/help/heartbeat-monitoring.md): Have a cron job or script call a unique URL when it finishes, and get an alert when the call doesn't arrive on time or the job reports a failure.
- [Monitor your server](https://vpsnine.com/help/monitor-your-server.md): Check CPU, memory, disk and logs with htop, df and journalctl, and set up a small uptime check that emails you when your site stops answering.
- [Publish a status page for your service](https://vpsnine.com/help/status-pages.md): Give your customers a public page with the state and 90-day uptime of the services you pick, and notes you post during incidents and maintenance.
- [Use the serial console](https://vpsnine.com/help/serial-console.md): Reach your server's console from the browser when SSH won't connect, log in with a password, and fix the usual lockouts.
- [Rescue mode](https://vpsnine.com/help/rescue-mode.md): Boot your server into a rescue system with its disk attached, then check the filesystem, reset the root password or fix what stops it from booting.
- [Reinstall a server](https://vpsnine.com/help/reinstall-a-server.md): Wipe a server and start again on a fresh system, the same one or another, with or without its app, packages and setup script, and what's lost.
- [Add a swap file](https://vpsnine.com/help/add-swap.md): Create a swap file on Ubuntu 24.04 or Debian 12, make it permanent, and tune swappiness so it is used only when needed.
- [Install Docker](https://vpsnine.com/help/install-docker.md): Install Docker Engine and the Compose plugin from Docker's official apt repository on Ubuntu 24.04 or Debian 12, and keep ports private.
- [Setup recipe: a Docker host](https://vpsnine.com/help/docker-host-setup-script.md): A ready-made first-boot script that installs Docker Engine and Compose from Docker's repository, caps container logs, and lets your user run docker.
- [Serve a site with nginx and HTTPS](https://vpsnine.com/help/nginx-and-https.md): Install nginx, point a domain at your server, and get a free Let's Encrypt certificate that renews itself, on Ubuntu 24.04 or Debian 12.
- [Setup recipe: Caddy as a reverse proxy with HTTPS](https://vpsnine.com/help/caddy-reverse-proxy-setup-script.md): A ready-made first-boot script that puts Caddy in front of your app, with a free HTTPS certificate for your domain that renews by itself.
- [Ask the AI assistant about your server](https://vpsnine.com/help/ai-assistant.md): Ask about a server in plain English and get an answer from its graphs, events, alerts and firewall, with the commands to check the rest yourself.
- [Host WordPress on a VPS the fast way](https://vpsnine.com/help/wordpress-on-a-vps.md): Install WordPress on your own server with nginx, PHP-FPM and MariaDB, get HTTPS from Let's Encrypt, and set up uploads, caching, updates and backups.
- [Set up the VPSNine Vaultwarden app](https://vpsnine.com/help/self-host-vaultwarden.md): Set up the Vaultwarden one-click app on a VPSNine server, claim it over SSH, then put it on your domain with HTTPS and sign-ups closed.
- [Deploy apps with Coolify on your own VPS](https://vpsnine.com/help/deploy-apps-with-coolify.md): Install Coolify on a fresh server, secure its dashboard, give it a domain with HTTPS, and deploy your first app from Git. Ports, backups and updates.
- [Self-host Nextcloud on a VPS](https://vpsnine.com/help/self-host-nextcloud.md): Install Nextcloud All-in-One on your own VPS, open its setup page privately through an SSH tunnel, and let it start Nextcloud on your domain with HTTPS.
- [Self-host Ghost on a VPS](https://vpsnine.com/help/self-host-ghost.md): Run Ghost 6 with Ghost's own Docker setup (Ghost, MySQL 8 and Caddy) on your VPS: add your mail service, then start it on your domain with HTTPS.
- [Self-host n8n on a VPS with HTTPS](https://vpsnine.com/help/self-host-n8n.md): Run n8n in Docker on your own server, behind Caddy with a free HTTPS certificate, with its data in a volume you can back up and an easy way to update.
- [Run OpenClaw on a VPS securely](https://vpsnine.com/help/self-host-openclaw.md): Install OpenClaw on your own Linux server for a non-root user, run its gateway as a service on localhost, and reach the Control UI through an SSH tunnel.
- [Set up the VPSNine Plausible Analytics app](https://vpsnine.com/help/self-host-plausible.md): Set up the Plausible Analytics one-click app on a VPSNine server: register through an SSH tunnel, then serve it on your domain with HTTPS.
- [Host a Minecraft server on a VPS](https://vpsnine.com/help/minecraft-server-on-a-vps.md): Run a Minecraft Java server on Paper with Java 25 and systemd, so it starts at boot and restarts on a crash. Memory, firewall, backups and updates.
- [Self-host Jellyfin on a VPS](https://vpsnine.com/help/self-host-jellyfin.md): Run your own Jellyfin media server on a VPS, with the admin account made for you, your media in /srv/media and HTTPS on your own domain.
- [Move a site from shared hosting to a VPS](https://vpsnine.com/help/move-from-shared-hosting-to-a-vps.md): Copy your files and database across, test the site on the new server before anyone sees it, keep your email working, and plan the DNS switch.
- [Self-host AdGuard Home on a VPS](https://vpsnine.com/help/self-host-adguard-home.md): Run AdGuard Home on a VPS as a private ad-blocking DNS server for your devices, over WireGuard, Tailscale or DNS-over-HTTPS, without an open resolver.
- [Self-host Forgejo on a VPS](https://vpsnine.com/help/self-host-forgejo.md): Run Forgejo, a community-run Git forge, on your own VPS from its signed LTS binaries, with HTTPS on your domain and Git over SSH.
- [Self-host Umami on a VPS](https://vpsnine.com/help/self-host-umami.md): Run Umami, simple cookie-free website analytics, on your own VPS with PostgreSQL in Docker and HTTPS on your own domain.
- [Self-host a Matrix server (Synapse) on a VPS](https://vpsnine.com/help/self-host-matrix-synapse.md): Run your own Matrix homeserver with Synapse and PostgreSQL, choose its permanent name, serve it over HTTPS with federation on 443, and keep it backed up.
- [Self-host BookStack on a VPS](https://vpsnine.com/help/self-host-bookstack.md): Install BookStack, the documentation wiki, on nginx, PHP and MariaDB, replace its default admin login, then move it to your domain with HTTPS.
- [Self-host Immich on a VPS](https://vpsnine.com/help/self-host-immich.md): Run Immich, the self-hosted photo and video backup, from its Docker Compose file, keep it private until it has HTTPS, and back up your phone to it.
- [Run Ollama and Open WebUI on a VPS](https://vpsnine.com/help/self-host-ollama.md): Run open AI models on your own server with Ollama, chat with them in Open WebUI, and keep both private. CPU only, so small models and modest speeds.

## Networking

IPv6, reverse DNS, sending email and testing your network.

- [Check that IPv6 works](https://vpsnine.com/help/ipv6-setup.md): Every server gets one IPv6 address, set up on its first boot. How to check it works from inside and outside, and what to do if a config change broke it.
- [Set reverse DNS for your server](https://vpsnine.com/help/reverse-dns.md): What reverse DNS (PTR) records are, when you need one, how to set one in the panel or with vps9, and how to check it with dig.
- [Sending email: port 25](https://vpsnine.com/help/open-port-25.md): Outbound port 25 is blocked by default on new servers. Why, how to test it, and how to ask for it to be opened for a real mail server.
- [Test your server's network](https://vpsnine.com/help/test-your-network.md): Measure latency, packet loss and throughput between your computer and your server with ping, mtr and iperf3, and what to send us if it looks wrong.
- [Setup recipe: Tailscale](https://vpsnine.com/help/tailscale-setup-script.md): A ready-made first-boot script that installs Tailscale from its own repository and can join the server to your tailnet with a one-off auth key.

## Security

Firewalls, SSH hardening, updates and what to do after a break-in.

- [Use the panel firewall](https://vpsnine.com/help/server-firewall.md): Filter traffic before it reaches your server: allow and deny rules, a default policy, how it fits with ufw, and how to undo a mistake.
- [Set up a firewall with ufw](https://vpsnine.com/help/firewall-with-ufw.md): Turn on ufw without locking yourself out, open only the ports you use, and check the rules, on Ubuntu 24.04 or Debian 12.
- [Block brute-force attempts with fail2ban](https://vpsnine.com/help/fail2ban.md): Install fail2ban, ban addresses that keep failing SSH logins, and check and lift bans, on Ubuntu 24.04 or Debian 12 with ufw.
- [SSH hardening checklist](https://vpsnine.com/help/ssh-hardening-checklist.md): A short list of SSH settings worth changing on a new server, with one drop-in file for Ubuntu 24.04 and Debian 12 and a safe way to apply it.
- [Install security updates automatically](https://vpsnine.com/help/automatic-security-updates.md): Use unattended-upgrades on Ubuntu 24.04 or Debian 12 to install security fixes every day, reboot when needed, and check that it runs.
- [PHP2Shell (CVE-2026-109618/109619): check and patch PHP on your VPS](https://vpsnine.com/help/php2shell-check-and-patch-php.md): Check that your PHP has the PHP2Shell fixes, update it, and restart PHP-FPM.
- [What to do if your server is compromised](https://vpsnine.com/help/what-to-do-if-compromised.md): Signs that someone else is on your server, what to check first, how to contain it, and why rebuilding from a clean image is the safe fix.
- [Setup recipe: a secure baseline for a new server](https://vpsnine.com/help/secure-server-setup-script.md): A ready-made first-boot script that adds a sudo user, turns off root and password logins over SSH, and sets up a firewall, fail2ban and security updates.

## Billing

Paying, account credit, invoices and VAT details, yearly billing, renewals, refunds and cancelling.

- [Payment methods](https://vpsnine.com/help/payment-methods.md): How you pay for a VPSNine server, monthly or yearly, with prices in US dollars: Bitcoin or PayPal step by step, account credit, and payments that go wrong.
- [Your billing overview and upcoming charges](https://vpsnine.com/help/billing-overview.md): Read the billing page in the panel. Your credit, what is due in the next 30 days, each server's next renewal, what yearly billing would save, and every invoice.
- [Add funds to your account](https://vpsnine.com/help/add-funds.md): Top up your account credit with Bitcoin or PayPal so renewals pay themselves. Amounts, limits, what credit pays and what happens to an unpaid top-up.
- [How account credit works](https://vpsnine.com/help/account-credit-and-invoices.md): What VPSNine account credit is, where it comes from, which invoices it pays and in what order, and what it can't do.
- [Read your credit history](https://vpsnine.com/help/credit-history.md): Every change to your VPSNine account credit, line by line, with the balance after each. What each kind of line means and how to match it to an invoice.
- [Download invoices and receipts as PDF](https://vpsnine.com/help/download-invoices-as-pdf.md): Get any VPSNine invoice as a PDF in A4 or US Letter, see when it becomes a receipt, print it, or list invoices with the API and the CLI.
- [Use a promo code](https://vpsnine.com/help/use-a-promo-code.md): Where to enter a VPSNine promo code when you order a server, how the discount shows on your invoice, and what happens with credit, renewals and refunds.
- [Add your company details and VAT ID to invoices](https://vpsnine.com/help/invoice-company-details-and-vat-id.md): Put your name, company, address and VAT number or tax ID on your VPSNine invoices, how we check the number's format, and why issued invoices don't change.
- [Buy and redeem a VPSNine gift card](https://vpsnine.com/help/buy-and-redeem-a-gift-card.md): Send VPSNine credit to anyone with a gift card paid by Bitcoin or PayPal, print it or email it again, and redeem a card you were given as account credit.
- [Switch a server between monthly and yearly billing](https://vpsnine.com/help/switch-to-yearly-billing.md): Move a VPSNine server to yearly billing to save two months a year, or back to monthly. The switch applies from the next renewal.
- [What happens if a renewal isn't paid](https://vpsnine.com/help/unpaid-renewal.md): The dates from a server's renewal invoice to its deletion. Reminders, a suspension 3 days after the due date, and deletion of the server and its disk after 14.
- [Cancel a server](https://vpsnine.com/help/cancel-a-server.md): Cancel a VPSNine server at the end of its paid period or delete it now, what to back up first, and what happens to your data and billing afterwards.
- [The 14-day money-back guarantee](https://vpsnine.com/help/money-back-guarantee.md): Ask for a refund within 14 days of paying for your first order. What the guarantee covers, what it doesn't, how to ask, and how the money comes back.
- [Refer a friend and earn credit](https://vpsnine.com/help/referral-program.md): Share your link. When someone you refer pays for their first server, you both get account credit. How it works and what counts.

## Account

Two-factor login, passkeys, the security center, teams, support tickets, notifications and API tokens.

- [Turn on two-factor authentication](https://vpsnine.com/help/two-factor-authentication.md): Add a 6-digit code from an authenticator app to every login, save and renew your 10 recovery codes, and what to do if you lose your phone.
- [Sign in with a passkey](https://vpsnine.com/help/passkeys-and-security.md): Add a passkey and sign in to VPSNine with your fingerprint, face, device PIN or a security key. Adding, naming, removing and the limits.
- [Check your account in the security center](https://vpsnine.com/help/security-center.md): The security center scores your VPSNine login out of 100, lists what to fix, and shows your passkeys, 2FA, signed-in browsers and security events.
- [See where you are logged in and recent activity](https://vpsnine.com/help/sessions-and-activity.md): Check your active panel sessions, sign out a lost device or everywhere else at once, and read the activity log of logins and security changes.
- [Change or reset your account password](https://vpsnine.com/help/reset-password.md): Change your panel password while logged in, reset it with an emailed link if you forgot it, and how that differs from a server's root password.
- [Change your email, download your data or delete your account](https://vpsnine.com/help/change-email-export-or-delete-your-account.md): Move your account to a new email safely, download everything we keep about it as one file, or close the account for good.
- [Share an account with your team](https://vpsnine.com/help/teams.md): Invite people by email, give each a role, switch between accounts, require 2FA for everyone, see who did what, remove someone, leave, or hand the account over.
- [Choose which notifications and emails you get](https://vpsnine.com/help/notification-settings.md): Pick, per kind of notice, what shows in the panel's bell and what is emailed, which emails always go out, and how to get status emails.
- [Open and manage support tickets](https://vpsnine.com/help/support-tickets.md): Open a VPSNine support ticket, pick its category and priority, link a server, follow the thread, close it and rate the answer.
- [Notifications and resource alerts](https://vpsnine.com/help/notifications-and-alerts.md): What the panel bell tells you, how to pick what reaches you by email, and alert rules for CPU, memory, transfer and downtime.
- [Send alerts to Slack, Discord, Telegram, Teams or ntfy](https://vpsnine.com/help/notification-channels.md): Get server, alert and billing notifications in Slack, Discord, Telegram, Microsoft Teams, ntfy or another inbox, with tests, a delivery log and retries.
- [Service status, incidents and maintenance](https://vpsnine.com/help/service-status.md): Where to check whether something is wrong on our side, how we post incidents and maintenance, and how to get them by email, Atom feed or JSON.
- [Add SSH keys to your account](https://vpsnine.com/help/manage-ssh-keys-in-the-panel.md): Save your public SSH keys in the panel so they are ready for new servers. Which key types work, and how to check fingerprints.
- [Install the VPSNine panel as an app and get push notifications](https://vpsnine.com/help/install-the-panel-and-push-notifications.md): Install the panel on your computer or phone and get a push notification when a server is ready, an alert fires or an invoice needs you.
- [API tokens for CI and automation](https://vpsnine.com/help/api-tokens-for-automation.md): Give each pipeline, cron job and monitor its own VPSNine token with the smallest scope, an address limit where it fits, an expiry, and a plan for rotating it.
- [Create and use API tokens](https://vpsnine.com/help/api-tokens.md): API tokens let scripts and the vps9 CLI use the API as you. How to create one with the right scope and expiry, store it safely and revoke it.
- [Restrict an API token to IP ranges](https://vpsnine.com/help/restrict-api-token-by-ip.md): Limit a VPSNine API token to the addresses it runs from, such as a CI runner or an office network, so a leaked token is useless anywhere else.
- [Webhooks and verifying their signatures](https://vpsnine.com/help/webhooks.md): Send VPSNine events to your own HTTPS endpoint as signed JSON, check the signature in Node.js, Python or PHP, and handle retries and test events.
- [API quickstart](https://vpsnine.com/help/api-quickstart.md): Your first VPSNine API calls in curl, JavaScript, Python, the TypeScript SDK and the vps9 CLI, side by side: list servers, reboot one, read errors.
- [Install the vps9 command-line tool](https://vpsnine.com/help/install-the-vps9-cli.md): Download vps9 for Linux, macOS or Windows, check it against SHA256SUMS, log in with an API token, and run your first commands.
- [vps9 CLI cheat sheet](https://vpsnine.com/help/vps9-cli-cheat-sheet.md): Every vps9 command on one page, by task: servers, SSH, snapshots, the firewall, rDNS, rescue, keys, billing, tickets, JSON and scripting.
- [Developers: the API, the CLI and OpenAPI](https://vpsnine.com/help/developers.md): Everything for automating VPSNine in one place. The JSON API and its reference, the OpenAPI document, the vps9 CLI, request ids, rate limits and safe retries.
- [API rate limits and request ids](https://vpsnine.com/help/api-rate-limits-and-request-ids.md): How many requests the VPSNine API takes a minute, the X-RateLimit headers, handling 429 with Retry-After, and using X-Request-Id when you ask us about a call.
- [Search, shortcuts, names and tags in the panel](https://vpsnine.com/help/panel-search-and-shortcuts.md): Jump to any server, invoice or page from the keyboard, run actions from the command palette, and name, tag and filter your servers.
- [Use VPSNine from Claude, Cursor and other AI tools (MCP)](https://vpsnine.com/help/mcp.md): Connect Claude, Cursor or VS Code to VPSNine with MCP, so an assistant can check and manage your servers with your API token.
- [Idempotent orders with Idempotency-Key](https://vpsnine.com/help/idempotent-orders-with-idempotency-key.md): Send an Idempotency-Key header with POST /servers so a retry after a timeout returns the order you already placed instead of ordering a second server.
- [Use the VPSNine OpenAPI spec](https://vpsnine.com/help/use-the-openapi-spec.md): Download the OpenAPI 3.1 description of the VPSNine API, generate a typed client with openapi-generator, and import the API into Postman, Insomnia or Bruno.
