# Ligar via SFTP: FileZilla, Cyberduck e Linha de Comandos

Source: https://support.kapsulehost.com/pt-pt/sftp-access

SFTP (Secure File Transfer Protocol) dá-lhe acesso direto aos ficheiros do seu site no servidor. Este guia cobre tudo o que precisa para se ligar com sucesso, desde encontrar as suas credenciais até à resolução de erros.

## O que é o SFTP e quando usá-lo

O gestor de ficheiros integrado no KPanel é conveniente para edições rápidas: renomear um ficheiro, ver uma configuração ou carregar um único recurso. O SFTP é a ferramenta certa quando precisa de mais:

- Carregar ou descarregar um grande número de ficheiros de uma só vez (migrar um site, carregar imagens em massa).
- Transferir ficheiros grandes que excederiam o tempo limite num carregamento feito pelo navegador.
- Trabalhar no âmbito de um fluxo de desenvolvimento em que edita ficheiros localmente e envia alterações.
- Usar um cliente gráfico que lhe permite manter uma pasta local e uma remota sincronizadas.
- Aceder a registos (logs) ou ficheiros de configuração que não estão expostos através do gestor de ficheiros do KPanel.

O SFTP encripta todos os dados em trânsito, o que o torna mais seguro do que o FTP simples. A KapsuleHost não oferece ligações FTP não encriptadas.

![Os detalhes de ligação SSH e SFTP de um site no KPanel](https://support.kapsulehost.com/help/screenshots/sftp-access.df4a2e3e.webp)

## Pré-requisitos

Antes de poder ligar-se, precisa de ter duas coisas prontas.

**1. Uma chave SSH adicionada ao seu site no KPanel.**

O SFTP na KapsuleHost usa autenticação por chave SSH. A autenticação por palavra-passe está desativada por motivos de segurança. Se ainda não adicionou a sua chave pública SSH, siga primeiro o guia [Adicionar Chaves SSH ao Seu Site](https://support.kapsulehost.com/pt-pt/adding-ssh-keys) e depois volte aqui.

**2. O nome de utilizador do seu site.**

Cada site na KapsuleHost tem um utilizador de sistema dedicado. Este não é o seu endereço de email do KPanel. É um nome de utilizador curto associado especificamente a esse site.

Para o encontrar:
1. Inicie sessão no KPanel em [kpanel.kapsulehost.com](https://kpanel.kapsulehost.com).
2. Clique em **Websites** na barra lateral esquerda.
3. Clique no site ao qual pretende ligar-se.
4. Vá à página **SSH / SFTP**.
5. O nome de utilizador do seu site é apresentado no topo deste separador. Normalmente tem o aspeto de `mysite_com` ou `myexamplesite_net`.

**Detalhes de ligação num relance:**

| Campo | Valor |
|---|---|
| Anfitrião | `cp1-kapsule.kapsulehost.com` |
| Porta | `22` |
| Protocolo | SFTP (não FTP, não FTPS) |
| Autenticação | Apenas chave SSH |
| Nome de utilizador | O nome de utilizador do seu site (em KPanel > Websites > [site] > Settings > SFTP) |

---

## Ligar com o FileZilla

O FileZilla é um cliente SFTP gratuito e multiplataforma disponível para Windows, macOS e Linux. Descarregue-o em [filezilla-project.org](https://filezilla-project.org) caso ainda não o tenha.

### Configuração passo a passo

1. Abra o FileZilla.
2. Vá a **File > Site Manager** (ou prima `Ctrl+S` no Windows / `Cmd+S` no Mac).
3. Clique em **Adicionar Website** e dê-lhe um nome (por exemplo, "O Meu Site KapsuleHost").
4. No separador **General**, configure os seguintes campos:

   | Campo | Valor |
   |---|---|
   | Protocolo | **SFTP - SSH File Transfer Protocol** |
   | Anfitrião | `cp1-kapsule.kapsulehost.com` |
   | Porta | `22` |
   | Tipo de início de sessão | **Key file** |
   | Utilizador | O nome de utilizador do seu site (por exemplo, `mysite_com`) |
   | Ficheiro de chave | Clique em **Browse** e navegue até ao seu ficheiro de chave privada |

5. Para o ficheiro de chave, selecione a chave privada correspondente à chave pública que adicionou no KPanel. No macOS e no Linux, as chaves privadas são normalmente guardadas em `~/.ssh/` (por exemplo, `~/.ssh/id_ed25519` ou `~/.ssh/id_rsa`). No Windows, estão frequentemente em `C:\Users\YourName\.ssh\`.

> **Note:** Se a sua chave privada tiver uma frase-passe, o FileZilla irá pedir-lhe que a introduza ao ligar-se. Isto é normal. A frase-passe protege o seu ficheiro de chave privada e é independente de qualquer palavra-passe da KapsuleHost.

6. Clique em **Connect** para testar a ligação, ou clique em **OK** para guardar e ligar-se mais tarde.

### Guardar e voltar a ligar

Depois de guardado no Site Manager, pode voltar a ligar-se a qualquer momento indo a **File > Site Manager** e clicando em **Connect**. O FileZilla também apresenta os seus sites guardados na lista pendente da barra de ferramentas, para acesso rápido.

> **Tip:** No Site Manager do FileZilla, assinale a caixa **Always trust this host** na primeira vez que se ligar, para evitar o aviso da chave do anfitrião em ligações futuras.

---

## Ligar com o Cyberduck

O Cyberduck é um cliente SFTP gratuito para macOS e Windows. Descarregue-o em [cyberduck.io](https://cyberduck.io).

### Configuração passo a passo

1. Abra o Cyberduck.
2. Clique em **Open Connection** (o ícone do globo na barra de ferramentas).
3. Na lista pendente de protocolos no topo da caixa de diálogo, selecione **SFTP (SSH File Transfer Protocol)**.
4. Preencha os campos de ligação:

   | Campo | Valor |
   |---|---|
   | Servidor | `cp1-kapsule.kapsulehost.com` |
   | Porta | `22` |
   | Nome de utilizador | O nome de utilizador do seu site (por exemplo, `mysite_com`) |
   | Palavra-passe | Deixe em branco |
   | Chave privada SSH | Clique em **Choose** e selecione o seu ficheiro de chave privada |

5. Clique em **Connect**.

Na primeira ligação, o Cyberduck irá pedir-lhe que verifique a impressão digital (fingerprint) da chave do servidor. Clique em **Allow** para prosseguir. Se vir este aviso numa ligação posterior com uma impressão digital diferente, não o aceite e contacte o apoio ao cliente, pois pode indicar uma alteração de configuração.

### Guardar como marcador

Para guardar a ligação para uso futuro:
1. Depois de ligar com sucesso, vá a **Bookmark > New Bookmark** (ou prima `Cmd+Shift+B` no Mac).
2. Dê um nome ao marcador e feche a caixa de diálogo. O marcador aparece na sua lista de marcadores do Cyberduck.

---

## Ligar a partir do terminal (Mac, Linux ou WSL)

Se preferir a linha de comandos, o comando `sftp` está disponível no macOS, Linux e Windows Subsystem for Linux (WSL).

### Ligação básica

```bash
sftp mysite_com@cp1-kapsule.kapsulehost.com
```

Substitua `mysite_com` pelo nome de utilizador real do seu site. Se a sua chave privada não estiver na localização predefinida (`~/.ssh/id_rsa` ou `~/.ssh/id_ed25519`), especifique-a com a opção `-i`:

```bash
sftp -i ~/.ssh/your_private_key mysite_com@cp1-kapsule.kapsulehost.com
```

Na primeira ligação, ser-lhe-á pedido que confirme a impressão digital do servidor. Escreva `yes` e prima Enter. Isto só acontece uma vez por chave e por dispositivo.

### Comandos SFTP úteis

Depois de ligado, verá uma linha de comandos `sftp>`. Use estes comandos para navegar e transferir ficheiros:

| Comando | O que faz |
|---|---|
| `ls` | Lista os ficheiros no diretório remoto atual |
| `lls` | Lista os ficheiros no diretório local atual |
| `cd [dir]` | Muda de diretório no servidor remoto |
| `lcd [dir]` | Muda de diretório na sua máquina local |
| `pwd` | Mostra o caminho do diretório remoto atual |
| `lpwd` | Mostra o caminho do diretório local atual |
| `get [file]` | Descarrega um ficheiro do remoto para o local |
| `get -r [dir]` | Descarrega um diretório de forma recursiva |
| `put [file]` | Carrega um ficheiro do local para o remoto |
| `put -r [dir]` | Carrega um diretório de forma recursiva |
| `rm [file]` | Elimina um ficheiro no servidor remoto |
| `mkdir [dir]` | Cria um diretório no servidor remoto |
| `quit` | Fecha a ligação SFTP |

**Exemplo: descarregar um ficheiro**
```bash
sftp> cd htdocs/wp-content/themes
sftp> get my-theme.zip
```

**Exemplo: carregar um ficheiro**
```bash
sftp> lcd ~/Desktop
sftp> cd htdocs/wp-content/uploads
sftp> put my-image.jpg
```

---

## Onde estão os seus ficheiros

Depois de se ligar, chegará ao diretório pessoal do utilizador do seu site: `/home/[siteuser]/`.

A estrutura de diretórios tem este aspeto:

```
/home/mysite_com/
├── htdocs/              ← Your web root (main location for site files)
│   ├── index.php
│   ├── wp-config.php
│   ├── wp-content/
│   │   ├── themes/
│   │   ├── plugins/
│   │   └── uploads/
│   └── ...
├── logs/                ← PHP and access logs
└── tmp/                 ← Temporary files
```

A raiz web onde reside o seu WordPress (ou outra aplicação) é `htdocs/`. Este é o diretório onde passará a maior parte do seu tempo. Em algumas configurações de site, pode chamar-se `public_html/`. Se, ao ligar-se, vir `public_html/` em vez de `htdocs/`, utilize esse.

> **Note:** Só pode aceder a ficheiros pertencentes ao utilizador do seu site. Não pode navegar acima de `/home/[siteuser]/` nem aceder a diretórios de outros clientes. Isto é propositado.

---

## Resolução de problemas de ligação

### "Connection refused"

A ligação foi ativamente rejeitada antes de ser estabelecida.

**Verifique:** Confirme que está a usar o anfitrião `cp1-kapsule.kapsulehost.com` e a porta `22`. Um erro comum é introduzir a porta `21` (que é FTP, não SFTP) ou um erro de digitação no nome do anfitrião.

### "Permission denied (publickey)"

O servidor aceitou a tentativa de ligação mas rejeitou a sua autenticação.

**Verifique cada um dos seguintes pontos:**
- A sua chave pública SSH está adicionada em **KPanel > Websites > [site] > Settings > SSH Keys**. Se não estiver lá listada, o servidor não tem registo dela.
- Selecionou a chave privada correta no FileZilla/Cyberduck, especificamente a chave privada que corresponde à chave pública que adicionou ao KPanel.
- Se a sua chave tiver uma frase-passe, certifique-se de que a está a introduzir corretamente.
- Se tiver várias chaves, confirme que não está acidentalmente a selecionar a errada.

### "Host key verification failed"

O seu cliente SFTP viu anteriormente uma chave de anfitrião diferente para este nome de anfitrião e está a avisá-lo de uma incompatibilidade.

**Na primeira ligação:** Ser-lhe-á pedido que aceite a impressão digital. Isto é normal. Clique em Accept ou escreva `yes`.

**Numa ligação posterior com uma impressão digital nova:** Isto pode indicar uma alteração de configuração no servidor. Contacte o apoio ao cliente em [support@kapsulehost.com](mailto:support@kapsulehost.com) antes de aceitar, e mencione o que observou.

Para limpar uma chave de anfitrião antiga no terminal, edite `~/.ssh/known_hosts` e remova a linha referente a `cp1-kapsule.kapsulehost.com`.

### "Could not read from remote repository" ou diretório errado

Pode ter usado o seu endereço de email do KPanel como nome de utilizador em vez do nome de utilizador do seu site.

**Verifique:** O nome de utilizador tem de ser o nome de utilizador do seu site (por exemplo, `mysite_com`), e não o seu endereço de email. Encontre o nome de utilizador correto em **KPanel > Websites > [site] > Settings > SFTP**.

### A ligação excede o tempo limite

A tentativa de ligação fica suspensa e depois excede o tempo limite sem qualquer erro.

**Possíveis causas:**
- O seu endereço IP pode estar temporariamente bloqueado pela firewall da KapsuleHost devido a tentativas de início de sessão falhadas repetidas. Contacte o apoio ao cliente em [support@kapsulehost.com](mailto:support@kapsulehost.com) e peça-lhes que verifiquem o registo da firewall.
- Uma firewall local ou uma VPN na sua rede pode estar a bloquear ligações de saída na porta 22. Experimente a partir de uma rede diferente (por exemplo, um ponto de acesso móvel) para descartar esta hipótese.

---

## Artigos relacionados

- [Adicionar Chaves SSH ao Seu Site](https://support.kapsulehost.com/pt-pt/adding-ssh-keys)
- [Usar o Gestor de Ficheiros no KPanel](https://support.kapsulehost.com/pt-pt/file-manager)
- [Ligar à Sua Base de Dados através de Túnel SSH](https://support.kapsulehost.com/pt-pt/database-ssh-tunnel)
