VPS plan
Starter VPS includes 3 CPU cores, 6 GB RAM, 50 GB NVMe storage, Unlimited bandwidth (policy applies), 1 free snapshot, 1 backup included, IPv4 + IPv6.
Run Claude Code from a self-managed VPS when you need a persistent remote coding workspace with SSH, Git, tmux, NVMe storage, snapshots, and controlled repository access. Use this guide to deploy the server, install Claude Code through the official setup path, authenticate with your own Claude access, clone a repository, and keep the workspace available over SSH.
Claude Code Control Panel
Workspace Ready
root@claude-vps:~$ claude --workspace --tmux --repo
> ✓ Claude Code workspace online. Repository ready.
Use this path when you want the shortest practical route from VPS order to a usable Claude Code server workspace. The full checklist below expands each step.
This guide is for technical users who want Claude Code work to live inside a controlled Linux server workspace, with repository state, dependencies, logs, and SSH access kept away from a local workstation.
Use a VPS when repositories, branches, package managers, terminal sessions, and generated files should stay in one stable server environment.
Keep coding-agent experiments, build output, and test logs away from sensitive workstation files and personal credentials.
Keep project files, run history, generated artifacts, rollback notes, and troubleshooting evidence in one reachable environment.
Virtarix supplies the VPS layer. You remain responsible for Claude Code authentication, installation, updates, monitoring, usage costs, repository access, and security.
Before selecting a plan or installing Claude Code, confirm the server access, authentication path, repository permissions, firewall exposure, and recovery routine required for your deployment.
Use a Linux VPS that meets current Claude Code system requirements and your project runtime needs, with SSH access and root or sudo access ready.
Have basic terminal knowledge, Git, and the package managers required by the repositories you plan to work on.
Prepare a supported Claude Code authentication path through your own Claude account, provider account, or organization access.
Confirm repository permissions, deployment keys, Git provider access, and a clear secret-management plan for tokens, API keys, and project configuration.
Set firewall rules for SSH and only the separate project services you intentionally expose.
Use Docker only when your project, dev container, preview app, or secured automation wrapper requires it, and take backups or snapshots before risky changes.
Before running commands, choose one installation and update path for the VPS. Use the current Claude Code setup page for exact package sources, flags, authentication, and update behavior.
Use these requirements as a practical starting point for a remote Claude Code workspace. Increase resources after measuring repository size, package installs, build processes, test runners, logs, and concurrent sessions.
The VPS is the remote workspace layer. You connect over SSH, install Claude Code using a supported path, keep repositories and logs on the server, and control Claude access, provider credentials, Git permissions, and project services yourself.
You (Operator)
You connect over SSH and control the workflow, prompts, repositories, credentials, approvals, and access decisions.
Virtarix VPS
Provides the persistent Linux server with storage, networking, root access, snapshots, backups, SSH sessions, and package runtime.
Claude Code Runtime
Claude Code and supporting project tooling running inside the remote workspace you install, authenticate, and configure.
External Services
Claude or model provider access, Git repositories, APIs, tools, and deployment targets reached through the credentials you configure.
Follow this sequence as the detailed VPS deployment checklist. It expands the quick setup above into the actual connection, install, authentication, security, and maintenance steps.
Prepare the VPS, connect over SSH, update packages, and create a clean workspace before installing Claude Code and project-specific dependencies.
ssh root@YOUR_SERVER_IP
sudo apt update && sudo apt upgrade -y
Create a dedicated non-root deployment user for day-to-day project work, then verify that user can connect by SSH and run sudo before disabling root or password login. Reconnect as the deployment user before installing or configuring the agent when your selected runtime path stores user-scoped configuration.
# Create a dedicated non-root user for day-to-day project work
adduser deploy
usermod -aG sudo deploy
Create one directory tree for working files, project logs, backups, and examples. Keep real secrets out of shell history and commits.
APP_HOME="$HOME/claude-code-vps-workspace"
mkdir -p "$APP_HOME/config" "$APP_HOME/repos" "$APP_HOME/logs" "$APP_HOME/backups"
chmod 700 "$APP_HOME/config"
printf '%s\n' "# store real provider keys only in your approved secret-management path" > "$APP_HOME/config/env.example"
chmod 600 "$APP_HOME/config/env.example"
Install base packages, follow the current official Claude Code Linux setup path, and configure authentication and project access.
sudo apt install -y git curl wget unzip ca-certificates gnupg tmux
Confirm operating system support, RAM, processor architecture, internet access, shell support, location eligibility, and project-specific runtime dependencies before installation. Claude Code setup documentation
Use the install command for your selected path. The native Linux installer is the default starting point for a normal VPS terminal workflow; package-manager and npm paths may fit stricter operations policies.
# Native Linux install path shown in the current Claude Code setup page
curl -fsSL https://claude.ai/install.sh | bash
# Open a new shell if required, then confirm the CLI is available
claude --version
Security note: The official installer is fetched from https://claude.ai/install.sh. Review the current script and official documentation at https://claude.ai/docs before running, or download and inspect it first.
Authenticate through the documented account, organization, or provider flow. Keep Claude authentication state and project credentials protected, and do not store unrelated keys on the VPS.
claude
claude doctor
Use the repository access method approved for your team: SSH deploy keys, Git provider authentication, short-lived credentials, or another reviewed path. Clone only the repositories required for the work.
git clone YOUR_REPOSITORY_URL
cd YOUR_REPOSITORY_DIRECTORY
Claude Code is normally started inside a repository as an interactive terminal coding session. Do not present Claude Code itself as a generic background daemon.
cd YOUR_REPOSITORY_DIRECTORY
claude
Keep the VPS workspace reachable, secure SSH and project access, validate authentication, monitor resource usage, and maintain the environment over time.
Use tmux or screen when you need to disconnect and resume an interactive terminal session later. Reserve Docker, systemd, cron, or queues for separate project services or explicitly designed wrappers.
tmux new -s claude-code
cd YOUR_REPOSITORY_DIRECTORY
claude
Claude Code benefits from a VPS when project files, Git branches, build tools, generated output, and terminal sessions should live in a server environment that can be reached over SSH.
Keep project repositories, dependency installs, generated files, terminal history, and build logs on an always-available server workspace.
Use the VPS as a deliberate coding-agent boundary instead of mixing experiments with personal files and local workstation credentials.
Document the packages, runtimes, users, firewall rules, repository paths, and shell setup that make the Claude Code environment work.
Treat the VPS as a clean development machine. Keep SSH access tight, use project-specific repository permissions, and avoid storing more credentials than the workflow requires.
Use SSH keys where possible, keep root login limited, and use a non-root user for project work where practical.
Restrict exposed ports to SSH and the specific project services you intentionally publish.
Store provider keys, deployment keys, and project secrets only in the approved project secret-management path.
Do not commit .env files, provider tokens, deployment keys, Claude authentication artifacts, or local config containing private values.
Review SSH logs, repository access, shell history, package-manager activity, build output, and project-specific secret storage.
Keep operating-system packages, Claude Code, and project dependencies updated through the selected install path.
Take a snapshot before major Claude Code, dependency, or repository changes.
Monitor failed login attempts, rotate exposed keys, and keep experiments separate from production systems.
The VPS can contain Claude access, repositories, project secrets, terminal history, build output, and runtime logs. Harden it before production use.
Use these checks to isolate whether the issue is SSH access, Claude Code installation, authentication, project runtime, firewall exposure, or VPS resources.
Open a new shell, confirm the install completed, and check that the Claude Code binary path is available to the user account running the session.
Follow the diagnostic output first, then check installation method, settings, authentication, MCP configuration, and shell environment.
Confirm the account type, organization access, provider path, supported location, and network path used for the VPS login flow.
Start Docker only if your project, dev container, preview app, or wrapper workflow requires it, then inspect that project’s logs.
Claude Code was started in a normal SSH shell. Use tmux or screen for interactive continuity, or build a secured automation wrapper for reviewed non-interactive execution.
A dev server, tunnel, preview app, queue worker, or wrapper service may already be bound to the port. Run ss -tulpn and move one service to a different port.
Open only the required project-specific port and keep all other ports restricted.
Check df -h, rotate logs, clean caches, prune unused dependencies, and scale storage if logs, build output, dependencies, or repositories have grown.
Reduce parallel builds, test runners, package installs, preview apps, and concurrent coding sessions; scale the VPS if the workload is valid.
You may not need a VPS if you are only testing Claude Code locally, working from one private machine, reviewing a small repository, or experimenting without persistent SSH access.
This setup is not ideal if you do not want to manage Linux updates, SSH access, firewall rules, disk usage, credentials, or repository permissions yourself.
Use a VPS when the workspace, repository state, logs, tools, and coding-agent workflow should stay available in a controlled remote environment.
Deploy a Claude Code VPS and use this guide as your review checklist while you prepare the setup, secure the server, confirm authentication, and test the workflow.