Android

Como usar sshfs para montar diretórios remotos sobre ssh

Cómo usar SSHFS para montar sistemas de archivos remotos sobre SSH

Cómo usar SSHFS para montar sistemas de archivos remotos sobre SSH

Índice:

Anonim

SSHFS (SSH Filesystem) é um cliente de sistema de arquivos baseado no FUSE para montar diretórios remotos por uma conexão SSH. O SSHFS está usando o protocolo SFTP, que é um subsistema do SSH e é ativado por padrão na maioria dos servidores SSH.

Quando comparado a outros protocolos de sistema de arquivos de rede, como NFS e Samba, a vantagem do SSHFS é que ele não requer nenhuma configuração adicional no lado do servidor. Para usar o SSHFS, você só precisa de acesso SSH ao servidor remoto.

Como o SSHFS usa SFTP, todos os dados transmitidos entre o servidor e o cliente devem ser criptografados e descriptografados. Isso resulta em um desempenho ligeiramente degradado em comparação com o NFS e em um maior uso da CPU no cliente e no servidor.

Este tutorial mostrará como instalar o cliente SSHFS no Linux, macOS e Windows e como montar um diretório remoto.

Instalando SSHFS

Os pacotes SSHFS estão disponíveis para todos os principais sistemas operacionais e a instalação é bem simples.

Instalando o SSHFS no Ubuntu e Debian

O SSHFS está disponível nos repositórios padrão do Ubuntu e Debian. Atualize o índice de pacotes e instale o cliente sshfs digitando:

sudo apt update sudo apt install sshfs

Instalando o SSHFS no CentOS

No CentOS e outros derivados da Red Hat, execute o seguinte comando para instalar o sshfs:

sudo yum install sshfs

Instalando o SSHFS no macOS

Os usuários do macOS podem instalar o cliente SSHFS baixando os pacotes FUSE e SSHFS do site osxfuse ou via Homebrew:

brew cask install osxfuse brew install sshfs

Instalando o SSHFS no Windows

Os usuários do Windows precisam instalar dois pacotes, WinFsp e SSHFS-Win.

  • WinFsp.SSHFS-Win.

Montando o sistema de arquivos remoto

As instruções a seguir são aplicáveis ​​a todas as distribuições Linux e macOS.

Para montar um diretório remoto, o usuário SSH precisa poder acessá-lo. O comando mount SSHFS assume o seguinte formato:

sshfs host: mountpoint

O comando sshfs lerá o arquivo de configuração SSH e será usado por configurações de host. Se o diretório remoto não for especificado, o padrão será o diretório inicial do usuário remoto.

Por exemplo, para montar o diretório inicial de um usuário chamado "linuxize" em um host remoto com endereço IP "192.168.121.121", primeiro crie um diretório que servirá como ponto de montagem, pois pode ser qualquer local que você desejar:

mkdir ~/linuxizeremote

Em seguida, use o comando sshfs para montar o diretório remoto:

sshfs [email protected]:/home/linuxize /home/linuxize/linuxizeremote

Você será solicitado a inserir a senha do usuário. Para evitar digitar a senha toda vez que você montar o diretório remoto, gere chaves SSH e configure o Login SSH sem senha.

Agora você pode interagir com os diretórios e arquivos localizados em um servidor remoto da mesma maneira que faz com os arquivos locais. Por exemplo, você pode editar, excluir, renomear ou criar novos arquivos e diretórios.

Se você deseja montar permanentemente o diretório remoto, edite o arquivo /etc/fstab da máquina local /etc/fstab adicione uma nova entrada de montagem. Dessa forma, quando o sistema inicializar, ele montará automaticamente o diretório remoto.

Para montar um diretório remoto sobre SSHFS em /etc/fstab , use fuse.sshfs como o tipo de sistema de arquivos.

/ etc / fstab

user@host:/remote/dir /local/mountpoint fuse.sshfs defaults 0 0

Ao criar uma montagem persistente, verifique se você pode conectar o host remoto usando a autenticação baseada em chave SSH.

Montando o sistema de arquivos remoto no Windows

Os usuários do Windows podem usar o Windows Explorer para mapear uma unidade de rede para o diretório remoto no servidor SSH.

Abra o Windows Explorer, clique com o botão direito do mouse em “Este PC” e selecione “Mapear unidade de rede”. Escolha uma unidade para montar no campo "Pasta" e digite o usuário, servidor e caminho remotos no seguinte formato:

\\sshfs\user@host

No momento da redação deste artigo, o SSHFS-Win não suporta autenticação baseada em chave; portanto, o servidor ssh remoto precisa ser configurado para aceitar a autenticação baseada em senha.

Para informações mais detalhadas, consulte o manual SSHFS-Win.

Desmontando o sistema de arquivos remoto

Para desconectar um sistema de arquivos montado, use o comando umount ou fusermount seguido pelo diretório em que foi montado (ponto de montagem):

fusermount -u /local/mountpoint

umount /local/mountpoint

Conclusão

Neste guia, você aprendeu como usar o SSHFS para montar um diretório remoto sobre SSH. Isso pode ser útil quando você deseja interagir com os arquivos remotos usando os aplicativos da máquina local.

Para obter uma lista completa das opções sshfs, digite man sshfs no seu terminal.

Você também pode restringir o acesso do usuário ao diretório inicial configurando um ambiente SFTP Chroot Jail e alterando a porta SSH padrão para adicionar uma camada extra de segurança ao servidor.

terminal de montagem ssh sftp