# Handoff — SSH Claude Cloud → VM125 | Campo | Valor | |-------|--------| | Data | 2026-10-19 | | Status | **Parcial** — chave instalada; túnel Cloudflare **ainda não** provisionado | | Motivo da pausa | Usuário vai desligar a máquina | --- ## Objetivo Dar SSH à VM125 (`mini@10.10.10.125`, projeto `~/pizza-digital`) para Claude Code em contêiner cloud que: - não alcança `10.10.10.x` nem Tailscale `100.x` - só sai via proxy HTTPS (:443) - só acessa domínios liberados na política de rede do ambiente --- ## Hostname proposto | Item | Valor | |------|--------| | Hostname | **`ssh-pizza.myvexx.com`** | | Proteção | Cloudflare Access + **service token** (Client ID + Client Secret) | | Cliente Claude | `cloudflared access ssh` como `ProxyCommand` | | Backend do tunnel | `localhost:22` na VM125 | Service token: **não colar no chat** — configurar como secrets/env no ambiente Claude (`CF_ACCESS_CLIENT_ID`, `CF_ACCESS_CLIENT_SECRET`). --- ## Feito nesta sessão (antes do desligamento) 1. **Chave pública instalada** em `/home/mini/.ssh/authorized_keys`: ``` ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIlXrLNy18IDQcCqJd+NeXIbng4+39FRqi10CVbSPk2D claude-cloud-pizza ``` 2. `chmod 700 ~/.ssh` · `chmod 600 ~/.ssh/authorized_keys` 3. Projeto continua em `/home/mini/pizza-digital` ## Pendente (quando religar a VM) 1. Instalar `cloudflared` na VM125 2. Criar Tunnel Cloudflare apontando SSH → `ssh-pizza.myvexx.com` 3. DNS CNAME no zone `myvexx.com` 4. Cloudflare Access Application (SSH) + **Service Token** 5. Liberar `ssh-pizza.myvexx.com` (e `*.cloudflareaccess.com` se necessário) na Network access do ambiente Claude 6. Testar: `ssh -o ProxyCommand='cloudflared access ssh --hostname %h' mini@ssh-pizza.myvexx.com` ## PasswordAuthentication | Acesso | Política recomendada | |--------|----------------------| | LAN / Tailscale (atual) | Mantém `PasswordAuthentication yes` (ops local com senha `805353`) | | Via túnel Cloudflare | Só chave (`claude-cloud-pizza`); Access + service token; **não** depender de senha no caminho externo | **Não** desligamos `PasswordAuthentication` globalmente nesta pausa (quebraria o hop local). Quando o túnel estiver estável, pode restringir senha só em `Match Address` / ou deixar senha só na LAN. ## Alternativa (se Cloudflare atrasar) Hop público no big1 (`95.216.14.162` ou host público do Proxmox) com `sshd` em **443** + ProxyJump até `10.10.10.125`. Preferência atual do usuário: **Cloudflare Tunnel**. --- ## Credenciais locais (referência ops — não usar no Claude Cloud) | Campo | Valor | |-------|--------| | Host LAN | `10.10.10.125` | | User | `mini` | | Password LAN | `805353` | | Hop Tailscale | `big1` → `100.116.138.100` | | Projeto | `~/pizza-digital` | --- ## Checklist pós-boot - [ ] VM125 no ar · Docker pizza-digital up - [ ] `cloudflared` tunnel `ssh-pizza.myvexx.com` healthy - [ ] Access service token criado e só em env do Claude - [ ] Domínio liberado na Network access - [ ] Claude conecta com a chave `claude-cloud-pizza` sem senha