Sem documento na inscrição · VPS de armazenamento de 500 GB a 8 TB · Pague com BTC, USDT, USDC, ETH, SOL, LTC, XMR
Idioma: Português
Contratar armazenamento

restic · rest-server contra SFTP

Restic: REST server ou SFTP para backups em um storage VPS?

Os dois backends armazenam o mesmo repositório criptografado no mesmo layout de pastas. A diferença é quem pode excluir o quê, quantas pessoas compartilham o servidor e quanto o protocolo custa na rede.

Última atualização: · 8 min de leitura

Resposta rápida

Restic: REST server ou SFTP para backups em um VPS?

Para backups do restic em um VPS, use o rest-server quando os clientes não puderem excluir snapshots: o modo --append-only dele recusa exclusões e o --private-repos mantém cada usuário na própria pasta. Use SFTP quando uma única máquina confiável faz o backup e você quer apenas SSH. Em um storage VPS Coffervale, 1 TB custa $1.66 por mês no plano de 12 meses (2 November 2026).

Qual é a diferença entre o REST server do restic e os backends SFTP?

RecursoSFTPrest-server
Software no VPSOpenSSH, já instaladorest-server (pacote do Debian 13 restic-rest-server, ou a imagem Docker restic/rest-server)
TransporteSSHHTTP ou HTTPS, porta 8000 por padrão
LoginChaves SSH por conta UnixUsuário e senha HTTP a partir de um arquivo htpasswd (bcrypt ou SHA)
O cliente pode excluir snapshots antigosSimNão, com --append-only
Usuários separadosContas Unix e permissões de pasta--private-repos: cada usuário apenas em /<user>/
Layout do repositório em discoIgual a um repositório localIgual a um repositório local
Criptografia do repositóriorestic, sempre ativadarestic, sempre ativada

O rest-server é mais rápido que o SFTP?

O projeto rest-server diz que sim: comparado ao SFTP, o backend REST tem desempenho melhor e escala mais. O README explica o motivo: o SFTP transfere dados em blocos de no máximo 32 KiB e o servidor confirma cada pacote, enquanto o REST envia arquivos inteiros via HTTP. O HTTP puro também elimina a sobrecarga do TLS, já que o restic criptografa tudo o que envia; o README acrescenta que o HTTPS então serve principalmente para proteger o login. Essa é a afirmação do próprio projeto, não um benchmark que executamos. Em um VPS de armazenamento com discos rígidos, os discos e seu uplink muitas vezes ditam o ritmo antes do protocolo.

No lado do cliente, o SFTP tem um incômodo conhecido: a documentação do restic observa que servidores SFTP fecham conexões quando ficam um tempo sem receber nada, o que varreduras longas de arquivos inalterados podem acionar.

Quando o SFTP puro é a melhor escolha?

Quando uma máquina em que você confia faz backup para a própria conta e você não quer nenhum serviço extra, nenhuma porta extra e nada novo para aplicar patches. O restic precisa apenas de restic -r sftp:user@host:/path init e de uma chave SSH sem prompt de passphrase, já que um backup automático não pode parar para pedi-la. A fraqueza é a que mais importa contra ransomware: quem controla o cliente também pode executar restic forget --prune e excluir todos os snapshots, porque o SFTP não tem modo append-only.

Para impedir que cada conta SFTP navegue pelo resto do servidor, o OpenSSH pode prendê-la na própria pasta sem shell:

/etc/ssh/sshd_config.d/restic-sftp.conf, then sshd -t && systemctl reload ssh
Match User restic-laptop
    ForceCommand internal-sftp
    ChrootDirectory /srv/restic-sftp/%u
    AllowTcpForwarding no
    X11Forwarding no
Conta, chroot e repositório, como root no VPS; o cliente então usa sftp:[email protected]:/repo
useradd --no-create-home --home-dir /srv/restic-sftp/restic-laptop --shell /usr/sbin/nologin restic-laptop
install -d -m 755 -o root -g root /srv/restic-sftp/restic-laptop
install -d -m 700 -o restic-laptop -g restic-laptop /srv/restic-sftp/restic-laptop/repo
install -d -m 700 -o restic-laptop -g restic-laptop /srv/restic-sftp/restic-laptop/.ssh
echo 'ssh-ed25519 AAAA...client-key... laptop' > /srv/restic-sftp/restic-laptop/.ssh/authorized_keys
chown restic-laptop:restic-laptop /srv/restic-sftp/restic-laptop/.ssh/authorized_keys
chmod 600 /srv/restic-sftp/restic-laptop/.ssh/authorized_keys

Como executo o rest-server com repositórios append-only e privados?

No Debian 13, instale o restic-rest-server, aponte-o para uma pasta de dados fora de /home e passe --append-only --private-repos mais TLS no arquivo de defaults. O serviço empacotado roda como o usuário restic-rest-server, lê BACKUP_DIR, LISTEN e ARGS de /etc/default/restic-rest-server, recusa iniciar até que BACKUP_DIR esteja definido e oculta /home do daemon. Com --private-repos, o usuário laptop só pode abrir repositórios em /laptop/, então várias pessoas podem compartilhar um único VPS de armazenamento sem ver os snapshots umas das outras. Um certificado autoassinado basta, porque o cliente o fixa com --cacert.

No VPS de armazenamento, como root (Debian 13)
apt install restic-rest-server apache2-utils openssl
install -d -m 750 -o restic-rest-server -g restic-rest-server /srv/restic

openssl req -x509 -newkey rsa:3072 -nodes -days 3650 \
    -keyout /etc/restic-rest-server/key.pem -out /etc/restic-rest-server/cert.pem \
    -subj '/CN=coffer-backup' -addext 'subjectAltName=IP:203.0.113.10'
chown root:restic-rest-server /etc/restic-rest-server/key.pem
chmod 640 /etc/restic-rest-server/key.pem

cat > /etc/default/restic-rest-server <<'EOF'
BACKUP_DIR=/srv/restic
LISTEN=:8000
ARGS="--htpasswd-file /etc/restic-rest-server/users.htpasswd --append-only --private-repos --tls --tls-cert /etc/restic-rest-server/cert.pem --tls-key /etc/restic-rest-server/key.pem"
EOF

htpasswd -B /etc/restic-rest-server/users.htpasswd laptop
chown root:restic-rest-server /etc/restic-rest-server/users.htpasswd
chmod 640 /etc/restic-rest-server/users.htpasswd
systemctl enable restic-rest-server
systemctl restart restic-rest-server
No cliente: credenciais em um arquivo privado, não na URL
mkdir -p ~/.config/restic
scp [email protected]:/etc/restic-rest-server/cert.pem ~/.config/restic/coffer.pem

cat > ~/.config/restic/coffer.env <<'EOF'
RESTIC_REPOSITORY=rest:https://203.0.113.10:8000/laptop/
RESTIC_REST_USERNAME=laptop
RESTIC_REST_PASSWORD=the-htpasswd-password
RESTIC_PASSWORD_FILE=/home/me/.config/restic/repo-password
RESTIC_CACERT=/home/me/.config/restic/coffer.pem
EOF
chmod 600 ~/.config/restic/coffer.env

set -a; . ~/.config/restic/coffer.env; set +a
restic init
restic backup ~/Documents ~/Pictures

Como faço prune dos snapshots quando o rest-server é append-only?

Execute forget --prune de uma máquina de administração confiável por um caminho que não seja append-only, e escreva a política com --keep-within. O rest-server mantém o repositório no mesmo layout de um repositório local, então o SFTP como root chega à mesma pasta, e a senha do repositório nunca precisa ser digitada no VPS.

A parte do --keep-within importa. A documentação do restic descreve um atacante que adiciona snapshots vazios a um repositório append-only para que uma política como um snapshot por semana descarte os verdadeiros; uma política baseada em tempo mantém tanto o lixo quanto os snapshots genuínos. Ela só ajuda enquanto o relógio do sistema estiver certo quando o forget roda, e não é motivo para deixar de dar uma olhada no restic snapshots primeiro.

Da máquina de administração, nunca do cliente
restic -r sftp:[email protected]:/srv/restic/laptop snapshots
restic -r sftp:[email protected]:/srv/restic/laptop forget --keep-within 90d --prune
restic -r sftp:[email protected]:/srv/restic/laptop check --read-data-subset=5%

Qual backend devo escolher?

Escolha o rest-server sempre que a máquina que recebe backup estiver exposta à internet; escolha o SFTP para uma única máquina bem cuidada, onde a simplicidade vence. Um destino append-only não pode ser esvaziado pelo atacante que criptografa seu servidor, e essa única propriedade supera o daemon extra.

Sua situaçãoBackendPor quê
Um laptop ou desktop, uma contaSFTPNada para instalar, nenhuma porta nova
Servidores públicos que podem ser invadidosrest-server --append-onlyUm cliente roubado não consegue excluir o histórico
Várias pessoas ou máquinas em um VPSrest-server --private-reposCada login vê apenas a própria pasta
Apenas HTTP ou HTTPS permitidos saindo da rederest-serverFunciona onde o SSH está bloqueado
Ambos: clientes append-only, admin faz prunerest-server para clientes, SFTP como root para o adminMesma pasta, dois níveis de acesso

Quanto custa um destino restic por TB?

Segundo o levantamento da Coffervale de 2 de novembro de 2026, o Backblaze B2, um object store que o restic suporta nativamente, custava $6.95 por TB por mês, enquanto os planos de VPS de armazenamento de provedores que aceitam cripto sem documento de identidade tinham uma mediana de $4.00 por TB. Um object store não exige servidor para manter, mas não oferece nenhum dos dois backends discutidos aqui; um VPS de armazenamento roda os dois. Não fazemos backup do seu servidor e não guardamos cópia dos seus dados em nenhum outro lugar, então o que fica em um storage VPS da Coffervale deve ser uma das suas cópias, nunca a única: o VPS é a sua cópia off-site, como explica Como uso um VPS para backups off-site?. Se você preferir usar o Borg, siga Como configuro um servidor de backup Borg em um VPS?; para criptografar o disco por baixo, veja Como monto e formato o disco de armazenamento em um VPS Linux?. Planos e termos estão em Quanto custa um VPS de armazenamento por mês?.

Perguntas sobre restic em um VPS

O restic via SFTP é criptografado?

Duas vezes. O restic criptografa cada arquivo que armazena com AES-256 e o autentica com Poly1305-AES antes do upload, e o SSH criptografa a conexão. O VPS só guarda texto cifrado.

O rest-server precisa de HTTPS se o restic já criptografa os dados?

Sim, para o login. Sem TLS, o usuário e a senha HTTP trafegam pela rede em texto claro, e qualquer um que os capture pode gravar no seu repositório. Use --tls, ou mantenha o rest-server em localhost e acesse-o por um túnel SSH.

O rest-server e o SFTP podem servir o mesmo repositório?

Sim. Ambos usam o mesmo layout de pastas de um repositório local, então os clientes podem gravar por um rest-server em modo append-only enquanto um administrador faz prune da mesma pasta via SFTP.

Em qual porta o rest-server escuta?

Porta 8000 em todos os endereços por padrão. Abra-a no firewall apenas para os endereços que fazem backup, ou vincule-a a um endereço privado, como uma interface WireGuard.

Qual versão do restic devo usar?

A versão mais recente em 2 de novembro de 2026 era o restic 0.19.1, de 5 de julho de 2026; o Debian 13 traz a 0.18.0. O formato de repositório versão 2, o padrão atual, exige restic 0.14.0 ou mais novo em toda máquina que o abrir.

Fontes (10)
  1. README do Rest Server: por que usá-lo, modo append-only, repositórios privados, htpasswd, TLS — restic project (read 2026-11-02)
  2. Documentação do restic: Preparando um novo repositório (SFTP, REST Server, B2) — restic project (read 2026-11-02)
  3. Documentação do restic: Removendo snapshots de backup, considerações de segurança no modo append-only — restic project (read 2026-11-02)
  4. Documentação do restic: Scripting, variáveis de ambiente — restic project (read 2026-11-02)
  5. Documentação do restic: References, repository encryption — restic project (read 2026-11-02)
  6. Releases do restic (0.19.1 de 5 de julho de 2026) — restic project on GitHub (read 2026-11-02)
  7. Pacote restic-rest-server 0.13.0-2 do Debian trixie: service unit e padrões — Debian (read 2026-11-02)
  8. Busca de pacotes do Debian trixie: restic 0.18.0 — Debian (read 2026-11-02)
  9. sshd_config(5): Match, ChrootDirectory, ForceCommand — OpenBSD project (OpenSSH) (read 2026-11-02)
  10. Preços do B2 Cloud Storage backblaze.com/cloud-storage/pricing — Backblaze (read 2026-11-02)

A partir de $1.24/mês · sem KYC

Contratar armazenamento