Como instalar e usar SSHFS no CentOS

Importante: prefira autenticação por chave SSH e teste a montagem manualmente antes de automatizar no boot.
O que é SSHFS
SSHFS é um sistema de arquivos que usa o protocolo SSH File Transfer (SFTP) para montar diretórios remotos no seu sistema local. Em uma linha: permite acessar arquivos remotos via SSH como se estivessem em uma pasta local.
Intentos principais
- Instalar SSHFS (via yum ou compilando a partir do código-fonte).
- Montar e desmontar diretórios remotos.
- Configurar montagem persistente e segura.
Instalar SSHFS com yum
Use este comando para instalar o pacote SSHFS pelo repositório CentOS:
yum install fuse-sshfs
Alt da imagem: Tela do terminal mostrando o comando yum install fuse-sshfs e a instalação concluída.
Após a instalação com yum, passe para a seção Montar um diretório remoto com SSHFS.
Instalar SSHFS a partir do código-fonte
Se você precisa da versão mais recente, pode compilar do código-fonte. Exemplo usando a versão 2.8 publicada no GitHub.
cd /tmp
wget https://github.com/libfuse/sshfs/releases/download/sshfs_2.8/sshfs-2.8.tar.gz
Alt da imagem: Terminal com wget baixando o arquivo sshfs-2.8.tar.gz do repositório GitHub.
Extraia e compile:
tar xvf sshfs-2.8.tar.gz
cd sshfs-2.8
./configure
make && make install
Após a instalação, verifique a presença do binário sshfs (por exemplo, which sshfs
ou sshfs --version
).
Preparar um diretório local
Crie a pasta que vai servir de ponto de montagem. No exemplo usamos /var/mnt:
mkdir -p /var/mnt
Montar um diretório remoto com SSHFS
Exemplo: montar a raiz (/) do servidor remoto 192.168.0.10 como o usuário root na máquina cliente:
sshfs [email protected]:/ /var/mnt/
Substitua user
por um usuário com acesso SSH no servidor remoto e ajuste o caminho remoto se não quiser montar a raiz.
Verifique a montagem com mount
ou ls /var/mnt
.
Notas sobre montagem temporária
Esta montagem é temporária. Ao reiniciar o cliente, a montagem desaparece. Para tornar persistente, use /etc/fstab ou um script de inicialização (veja abaixo).
Desmontar um diretório remoto
Desmonte usando um dos comandos abaixo:
umount /var/mnt
ou, para FUSE especificamente:
fusermount -u /var/mnt
Use o mesmo ponto de montagem que você criou; não misture /var/mnt
com /var/tmp
.
Montagem persistente com /etc/fstab
Montar via /etc/fstab exige cuidado com autenticação. Recomenda-se usar chaves SSH sem senha ou ssh-agent
para fornecer a chave. Exemplo de linha em /etc/fstab:
# Formato: : fuse.sshfs 0 0
[email protected]:/ /var/mnt fuse.sshfs defaults,_netdev,allow_other 0 0
Notas:
- A opção
_netdev
indica que é uma montagem de rede (evita tentativas antes da rede pronta). allow_other
permite que outros usuários leiam o ponto de montagem; use com cautela.- Se usar chave privada não-padrão, gerencie-a via
~/.ssh/config
ou um agente SSH. Colocar senhas claras em fstab é inseguro.
Segurança e boas práticas
- Use autenticação por chave SSH com passphrase protegida por ssh-agent.
- Restrinja o usuário remoto ao mínimo necessário (usar sudo apenas quando preciso).
- Evite
allow_other
a menos que confie nos usuários locais. - Controle permissões com
umask
,uid
egid
nas opções do FUSE quando apropriado. - Monitore logs SSH no servidor para detectar acessos incomuns.
Alternativas ao SSHFS
- NFS: melhor para desempenho em LAN e para integração com permissões do sistema.
- Samba (SMB/CIFS): ideal para interoperabilidade com Windows.
- rsync: sincronização ponto a ponto quando não precisa de montagem em tempo real.
- SFTP / FTP: transferência de arquivos sem montagem direta.
Quando SSHFS não é a melhor escolha
- Cargas de I/O intensivas e latência sensível: NFS ou soluções bloqueadas podem ser mais rápidas.
- Necessidade de ACLs finas ou atributos estendidos específicos do sistema local.
- Ambientes multiusuário com necessidades complexas de separação e performance.
Checklists por função
Administrador:
- Instalar fuse-sshfs e verificar versão
- Criar chaves SSH e desabilitar senha quando possível
- Testar montagem manual e operações de leitura/gravação
- [ ] Configurar /etc/fstab ou unit systemd com
_netdev
- Documentar rollback e pontos de contato
Usuário final:
- Conhecer o ponto de montagem local
- Evitar operações que saturam a rede
- Reportar erros de permissão ou lentidão
Exemplos de solução rápida (cheat sheet)
- Montar:
sshfs [email protected]:/caminho/remoto /var/mnt
- Desmontar:
fusermount -u /var/mnt
- Forçar desligamento se o processo travar (use com cautela):
umount -l /var/mnt
Mini metodologia para implantação segura
- Teste localmente com uma conta de teste.
- Configure chaves SSH e verifique acessos.
- Automatize em /etc/fstab ou systemd somente após validação.
- Monitore logs e uso após o deploy.
Resolução de problemas comum
- Erro: “fusermount: failed to open /dev/fuse: No such file or directory” — verifique se o módulo FUSE está carregado e se o pacote fuse está instalado.
- Problemas de permissão: reveja
allow_other
,uid
,gid
e permissões no servidor. - Montagem falha no boot: use
_netdev
ou uma unit systemd que dependa de network-online.target.
Diagrama de decisão (simples)
flowchart TD
A[Precisa montar remoto?] --> B{Rede confiável e baixa latência?}
B -- Sim --> C[NFS ou SSHFS 'testar desempenho']
B -- Não --> D[rsync ou SFTP para sincronização]
C --> E{Multiusuários e permissões complexas?}
E -- Sim --> F[usar NFS ou Samba]
E -- Não --> G[usar SSHFS com chaves]
Glossário (1 linha cada)
- FUSE: camada que permite sistemas de arquivos implementados por espaço de usuário.
- SFTP: Subconjunto do SSH para transferência de arquivos seguros.
- _netdev: Opção de montagem que indica dependência de rede.
Perguntas frequentes
Posso usar senhas em /etc/fstab para SSHFS?
Não é recomendado. Use chaves SSH e ssh-agent. Senhas em arquivos de configuração expõem risco de segurança.
Posso montar vários diretórios remotos simultaneamente?
Sim. Crie pontos de montagem distintos e adicione linhas separadas em /etc/fstab ou monte manualmente múltiplas vezes.
SSHFS funciona entre diferentes distribuições e Windows?
Entre distribuições Linux/Unix sim. Em Windows, há portas e ferramentas (ex.: WinFsp + SSHFS-Win) que permitem comportamento semelhante.
Resumo final
SSHFS é prático para acessar arquivos remotos com a segurança do SSH. Instale via yum para facilidade ou compile para versões mais novas. Teste montagens manuais, use chaves SSH, configure persistência com cuidado e prefira alternativas (NFS, Samba, rsync) quando a carga ou requisitos de permissão exigirem.
Aprenda, teste e use com segurança. Aproveite!