Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

To install NanoClaw on a self-managed VPS or VDS, first secure SSH access and limit inbound traffic, then run the project’s installer as an unprivileged user. After installation, verify the user service and CLI, and review NanoClaw’s container settings: its documented isolation controls do not automatically enable egress restrictions or resource caps.

What you need before installing

This walkthrough uses the Ubuntu 22.04 or 24.04 amd64 setup described in Bluehost’s VPS/VDS guide. Its suggested starting point is 1 vCPU, 4 GB RAM, and 10 GB SSD; it recommends 2 vCPUs and 25 GB disk when running multiple agent groups. These are that guide’s recommendations, not official NanoClaw minimum requirements.

NanoClaw’s official site lists Linux, Docker, Node.js 20 or later, pnpm 10 or later, and a provider credential among the requirements. The installer may prepare missing dependencies, but check the prompts and prerequisites for the project version you are installing.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Harden SSH access before changing authentication settings

Begin with the root account supplied for the server. Create a separate deployment account with sudo access, configure its public key, and test a fresh SSH login as that user before disabling root or password authentication. Keep the original root session open until the new connection succeeds; otherwise, a key or SSH configuration mistake can lock you out.

  1. Connect to the server using its provisioned root login.
  2. Create an unprivileged deployment user and grant it sudo access, following the Ubuntu account-management commands appropriate to the server.
  3. Add the user’s public key to that account’s authorized SSH keys. Open a second terminal and confirm that key-based login works.
  4. Only after the test succeeds, set PermitRootLogin no, PasswordAuthentication no, and PubkeyAuthentication yes in the SSH server configuration.
  5. Restart the SSH service and test another fresh connection. Retain the existing session until you have verified the new login.

The Bluehost guide recommends this sequence to avoid cutting off access. Exact service names and configuration-file handling can vary by Linux image, so use the server’s current distribution documentation if a command differs.

Restrict inbound network access

Configure the host firewall to allow SSH before enabling it, deny other unsolicited inbound traffic by default, and allow outbound traffic by default unless your own policy requires otherwise. The guide uses UFW for this setup. Confirm the SSH rule reflects the port you actually use; enabling a default-deny firewall without an SSH allowance can disconnect you.

A default NanoClaw setup does not provide a web dashboard that requires opening a web port. Do not open ports speculatively. If you add Slack webhook handling, plan its ingress separately: the guide notes that webhook access may require an inbound route and TLS termination, such as through a reverse proxy. This is not a requirement for every channel.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The same guide suggests Fail2Ban as an additional host control. It complements rather than replaces key-based authentication, updates, firewall rules, and monitoring of account access.

Install NanoClaw as the deployment user

Switch to the unprivileged deployment account and run the project’s documented installation entry point from its repository:

git clone https://github.com/nanocoai/nanoclaw.git nanoclaw-v2
cd nanoclaw-v2
bash nanoclaw.sh

The official README says the installer handles missing Node.js, pnpm, and Docker, sets up the credential gateway, builds the agent container, and pairs the first channel. Provide the required provider credential when prompted, and follow the current installer’s prompts; setup details may differ by project version and provider.

If Docker reports a permission error

Bluehost’s guide reports a possible issue when an installer adds the deployment user to the Docker group: an already-open SSH session may not yet have that group membership. Check the current session’s groups and whether the current installer still uses this approach before applying the guide’s suggested workaround, newgrp docker. Then confirm Docker access with docker info. This is a version-dependent troubleshooting possibility, not a universal NanoClaw step.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Verify the service and CLI

Use the checks in the Bluehost guide to confirm that the user-level service is running, the CLI socket exists, and a chat command responds:

  • Check the user service with systemctl --user and inspect its status.
  • Confirm that data/cli.sock exists in the deployment’s data directory.
  • Run a CLI chat command using the syntax provided by the installed version and confirm it can reach the configured agent.

If provider sign-in was skipped, a credentials error during the CLI test is expected until you complete sign-in. Service names and CLI commands can change; consult the installed project’s current instructions rather than assuming a command from another version applies.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Understand NanoClaw’s container and credential boundaries

NanoClaw’s Security Model documentation describes Docker containers as the primary isolation boundary. It says agents run as non-root in per-session containers, with explicitly scoped filesystem mounts. The project root and host .env file are not mounted into the agent. Additional mounts are managed through an operator-controlled allowlist, with path checks and restrictions on writable access.

The document states: “Real API credentials never enter containers.” Treat that as a description of NanoClaw’s documented architecture, not an independent security audit or a guarantee against every compromise. A container boundary does not replace securing the host, its SSH access, or the credentials stored outside the containers.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Egress lockdown is opt-in

The security documentation describes egress lockdown as an optional setting: NANOCLAW_EGRESS_LOCKDOWN=true. When enabled, agent containers use an internal Docker network intended to force traffic through the configured runtime gateway. The documented trade-off is that direct internet calls that do not use the proxy may fail by design. Decide whether that behavior suits your agents and test their required integrations before relying on it.

Resource caps are not automatic

NanoClaw’s security document says CPU and memory caps are unset unless configured. If multiple agents or groups will run on the same VPS/VDS, assess resource use and configure limits appropriate to your workload rather than assuming the container defaults impose them.

Choose a VPS or VDS by operational fit

The available hosting guidance gives one set of suggested resources, not a comparative provider test. Compare prospective servers on the features that affect this installation and its recovery:

  • Ubuntu image availability and amd64 architecture.
  • CPU, memory, and disk capacity for your expected number of agent groups.
  • A recovery console or equivalent access if SSH configuration fails.
  • Provider-level firewall controls, backup or snapshot options, and control over network ingress.

These features help determine whether you can maintain access and recover the host; they do not establish that one provider is inherently more secure than another.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.