Não é possível montar o diretório inicial do usuário do SSHFS

2

Eu estou tentando configurar um servidor de diretório base centralizado por meio de sshfs e pam-mount.

Atualmente estou preso neste momento:

Ao tentar montar o diretório inicial remoto, o sshfs fica preso:

d_inevitable@laptop:~$ sshfs -o nonempty,debug server: .
FUSE library version: 2.9.0
nullpath_ok: 0
nopath: 0
utime_omit_ok: 0

Congela neste momento.

Isso parece ser porque o diretório base inclui ~/.ssh . Então, quando eu tento sshfs -o nonempty server:.ssh .ssh , a mesma coisa acontece.

Suponho que o fusível de alguma forma inicialize a montagem, mas o ssh precisa de algo do diretório de configuração para tentar ler a partir dele. O fusível apenas bloqueará a leitura, resultando em um impasse.

De que tipo de coisas o sshfs precisa de ~/.ssh ?

Eu tentei remover todas as permissões de leitura / gravação de ~/.ssh e, em seguida, montei em outro diretório. Isso funcionou bem. A saída de depuração apenas reclamou da gravação em .ssh/known_hosts .

    
por d_inevitable 08.05.2013 / 02:15

1 resposta

1

Você está certo, o fusível inicia a montagem primeiro, depois inicia o processo ssh. Isso causa um problema para você, já que, por padrão, o ssh lê os arquivos ~/.ssh/ssh_config , ~/.ssh/known_config , ~/.ssh/id_* do usuário home. Esse comportamento pode ser alterado:

  1. ~/.ssh/ssh_config é o arquivo de configuração padrão por usuário. Um arquivo de configuração alternativo por usuário pode ser especificado usando a opção -F ou use -F /dev/null para especificar nenhum arquivo de configuração por usuário.
  2. ~/.ssh/known_config é usado para armazenar e verificar as chaves do host. Você pode usar -o UserKnownHostsFile=/dev/null e adicionar manualmente a chave do host a /etc/ssh/ssh_known_hosts ou usar -o StrictHostKeyChecking=no .
  3. ~/.ssh/id_* files são arquivos de identidade por padrão usados para autenticação de cliente. Se você deseja autenticar usando um arquivo de identidade, é necessário mantê-lo fora do diretório inicial e usar -o IdentitiesOnly=yes -o IdentityFile=<path to private key> . Ou então você pode autenticar interativamente se você usa -o IdentitiesOnly=yes -o IdentityFile=/dev/null -o PubkeyAuthentication=no .

Por exemplo, para montar em casa usando sshfs, autenticando usando senha, sem verificação de chave de host, execute

sshfs user@server: ~/ -o nonempty -F /dev/null -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -o IdentityFile=/dev/null -o PubkeyAuthentication=no
    
por Ishan Arora 06.05.2015 / 20:46