Tutoriais de VPS
Implantar o Claude Code em uma VPS (2026): instalação do ambiente de desenvolvimento remoto, autenticação, isolamento de permissões e tmux persistente
Implante o Claude Code em uma VPS Ubuntu ou Debian: configuração do servidor, instalação oficial, login sem desktop, autenticação com ANTHROPIC_API_KEY, isolamento de permissões entre usuário comum e projeto, tmux persistente e recuperação após quedas de SSH, além de comandos de diagnóstico para command not found, 403, falhas de autenticação e OOM, e uma lista de verificação de segurança para produção.

Implantar o Claude Code em uma VPS (2026): instalação do ambiente de desenvolvimento remoto, autenticação, isolamento de permissões e tmux persistente
Executar o Claude Code em uma VPS é adequado para desenvolvimento remoto, diagnóstico de servidores e scripts de automação que precisam ficar online por muito tempo. Após entrar por SSH, você executa claude diretamente dentro do repositório Git, de modo que o código, as dependências e o ambiente de build permanecem no servidor, enquanto o seu computador local só cuida da conexão de terminal.
Este artigo usa Ubuntu 22.04/24.04 e Debian 12 como exemplos para montar uma configuração reutilizável: usuário comum, instalação oficial, autenticação sem desktop, restrições de permissão por projeto e recuperação de sessões tmux. Os requisitos oficiais de sistema do Claude Code são 4 GB ou mais de memória, processador x64 ou ARM64 e um ambiente de rede capaz de acessar os serviços da Anthropic.
| Caso de uso | Configuração recomendada | Observações |
|---|---|---|
| Ler código, editar scripts pequenos | 2 núcleos / 4 GB / 40 GB SSD | Atende ao requisito mínimo oficial de memória, adequado para um único repositório |
| Compilar projetos Node.js e Python | 4 núcleos / 8 GB / 80 GB NVMe | Deixa folga para instalação de dependências, testes e compilação |
| Vários repositórios, Docker e bancos de dados em paralelo | 4-8 núcleos / 16 GB / 120 GB NVMe | Evita que tarefas de build disputem memória e IO |
Mesmo que uma VPS de 1 GB ou 2 GB consiga iniciar o instalador, é fácil sofrer OOM durante npm install, a compilação de TypeScript ou builds de Docker. Com orçamento limitado, comece com 4 GB e reserve pelo menos 10 GB de disco para o sistema.
Primeiro entre por SSH e atualize o sistema:
ssh root@YOUR_SERVER_IP
apt update && apt full-upgrade -y
apt install -y ca-certificates curl git tmux ripgrep sudo
Não deixe ferramentas de IA rodarem como root por muito tempo. Crie uma conta e um diretório de trabalho dedicados:
adduser coder
usermod -aG sudo coder
mkdir -p /srv/workspaces
chown -R coder:coder /srv/workspaces
su - coder
Em seguida, confirme que a rede e o horário estão corretos:
curl -I https://code.claude.com
timedatectl status
Se o próprio SSH retornar Permission denied, verifique primeiro as chaves, os usuários e as permissões de diretório com a lista de verificação para Permission denied de SSH em VPS e depois continue a instalação.
Execute o comando oficial de instalação para Linux como o usuário coder:
curl -fsSL https://claude.ai/install.sh | bash
Recarregue a configuração do shell e verifique a versão:
export PATH="$HOME/.local/bin:$PATH"
claude --version
claude doctor
A instalação nativa oficial se atualiza automaticamente. Se o servidor precisar de uma versão fixa ou de um canal estável, você pode instalar a stable:
curl -fsSL https://claude.ai/install.sh | bash -s stable
Não salve o download de curl no repositório do projeto nem use sudo para instalar o Claude Code no diretório do usuário root. Se aparecer claude: command not found, verifique primeiro echo $PATH e ls -l ~/.local/bin/claude.
Inicie o Claude Code no diretório do projeto:
mkdir -p /srv/workspaces/demo
cd /srv/workspaces/demo
claude
Na primeira execução, ele exibe uma URL de autorização. Copie-a para um navegador local para concluir o login com uma conta Claude Pro, Max, Team, Enterprise ou Console e depois volte à sessão SSH. Uma VPS sem desktop não precisa de navegador instalado; o essencial é manter a conexão de terminal ativa até a autorização terminar.
Tarefas de automação podem usar ANTHROPIC_API_KEY. Não escreva a chave diretamente no histórico de comandos nem no Git:
read -s ANTHROPIC_API_KEY
export ANTHROPIC_API_KEY
claude
unset ANTHROPIC_API_KEY
Para uso em scripts fixos, crie um arquivo de credenciais legível apenas pelo usuário atual:
install -m 600 /dev/null ~/.config/claude.env
printf 'ANTHROPIC_API_KEY=replace-me\n' > ~/.config/claude.env
set -a
. ~/.config/claude.env
set +a
Adicione ~/.config/claude.env à lista de exclusão de backup e ao .gitignore do projeto. Ao trocar a chave, sobrescreva o arquivo e execute chmod 600 ~/.config/claude.env.
Coloque o repositório onde coder possa escrever e outros serviços não possam:
cd /srv/workspaces
git clone YOUR_REPOSITORY_URL demo
sudo chown -R coder:coder demo
cd demo
Você pode criar .claude/settings.json dentro do projeto para exigir confirmação em comandos de alto risco e negar a leitura do diretório de segredos:
{
"permissions": {
"allow": [
"Read(./**)",
"Edit(./**)",
"Bash(git status)",
"Bash(git diff)",
"Bash(npm test)"
],
"ask": [
"Bash(git push*)",
"Bash(docker *)",
"Bash(rm *)"
],
"deny": [
"Read(~/.ssh/**)",
"Read(~/.config/claude.env)",
"Bash(curl * | bash*)"
]
}
}
As regras devem ser ajustadas aos comandos reais do projeto. Não ative um modo totalmente automático de altos privilégios só para pular etapas de confirmação; em uma VPS de produção, mantenha ao menos a confirmação manual para commits do Git, exclusões, Docker e downloads de rede.
O desenvolvimento interativo funciona melhor no tmux:
tmux new -s claude-demo
cd /srv/workspaces/demo
claude
Pressione Ctrl+b e depois d para se desvincular da sessão; após reconectar à VPS, restaure-a:
tmux ls
tmux attach -t claude-demo
Para continuar a conversa anterior, execute claude --continue no diretório do repositório ou use claude --resume para selecionar uma sessão. O tmux só evita que o processo de terminal se desconecte; ele não resolve por você a recuperação automática após reiniciar a VPS nem é adequado para aprovar mudanças de alto risco sem supervisão.
Verifique o DNS do servidor, o horário do sistema e o firewall de saída:
curl -v https://claude.ai/install.sh
getent hosts claude.ai
Se um proxy corporativo substituir os certificados, importe a CA conforme a documentação oficial de configuração de rede; não use curl -k para contornar a verificação TLS.
command -v claude
ls -l ~/.local/bin/claude
echo $PATH
Adicione export PATH="$HOME/.local/bin:$PATH" a ~/.bashrc e entre novamente. Confirme que a instalação e a execução usam o mesmo usuário Linux.
Verifique o usuário atual e as variáveis de ambiente:
whoami
env | grep '^ANTHROPIC_API_KEY=' | cut -c1-12
claude doctor
root e coder têm diretórios de configuração diferentes, então não dá para entrar como root e depois trocar de usuário para executar.
free -h
dmesg -T | grep -i -E 'oom|killed process'
Primeiro pare serviços não relacionados e reduza o número de builds em paralelo; se ainda ocorrer OOM, aumente para 8 GB de memória. O swap só alivia picos; não substitui a memória real.
- O Claude Code roda com um usuário comum, e o diretório de trabalho não contém chaves privadas SSH, backups de banco de dados nem segredos de produção.
- O arquivo da API Key tem permissões
600, não foi enviado ao Git nem gravado no histórico do shell. - O SSH permite apenas login por chave, o firewall abre somente as portas necessárias e as portas de administração não ficam totalmente abertas para a internet.
- O
.claude/settings.jsondo projeto mantém a confirmação paragit push,rm, Docker e downloads externos. - Antes de cada mudança importante, crie uma branch ou um ponto de commit no Git e, ao terminar, verifique
git diffe os resultados dos testes. - Monitore disco, memória e tráfego de saída; projetos com Docker também devem configurar healthcheck e limites de recursos, conforme a lista de verificação de configuração de produção do VPS Docker Compose.
Se você já usa um ambiente de desenvolvimento remoto com Codex CLI na VPS, a abordagem de implantação do Claude Code é basicamente a mesma: usuário comum, limites claros de autenticação e sessões tmux são o núcleo da estabilidade; as diferenças estão principalmente no sistema de contas, no nome da API Key e no formato do arquivo de configuração de permissões.
Uma VPS Linux a partir de 4 GB já sustenta o fluxo de desenvolvimento remoto do Claude Code. Comece com o instalador oficial e um usuário comum para concluir a configuração mínima e depois adicione regras de permissão, sessões tmux e monitoramento conforme a necessidade do projeto. Isolar as informações de autenticação dos diretórios de produção importa muito mais do que simplesmente buscar uma CPU maior.