fuse.sshfs: não pode usar 'SHOPT = val' em / etc / fstab

3

man sshfs diz:

-o SSHOPT=VAL
       ssh options (see man ssh_config)

No entanto, se eu tentar:

$ sudo mount -t fuse.sshfs [email protected]:/ /home/ravi/mnt/ravidroid -o port=2222,identityfile=/home/ravi/.ssh/id_4096rsa_20kdf,SSHOPT='KexAlgorithms diffie-hellman-group1-sha1'

Eu recebo:

fuse: unknown option 'SSHOPT=KexAlgorithms diffie-hellman-group1-sha1'

Como eu uso arbitrárias ssh opções em uma entrada sshfs em /etc/fstab ?

    
por Tom Hale 03.04.2017 / 07:31

2 respostas

2

Se você estiver usando uma versão de ssh antes de essa solicitação de pull foi mesclada, não Há duas maneiras de passar opções arbitrárias para ssh por meio de uma linha sshfs mount em /etc/tab :

Diretamente

Nas opções /etc/fstab mount (ou após -o usando montagem na linha de comando), adicione ssh_command= e especifique o comando ssh com a (s) opção (ões) da linha de comando, por exemplo:

ssh_command=ssh0-oKexAlgorithms=+diffie-hellman-group1-sha1

Por meio de um arquivo de configuração

A maneira mais inteligente é provavelmente especificar um arquivo de configuração:

ssh_command=ssh0-F/home/USER/.ssh/config

O arquivo de configuração provavelmente já tem as opções necessárias, e usá-lo tornará a entrada /etc/fstab muito mais curta.

Nota:

  • O ssh adicional é necessário
  • O 0 escapa do caractere de espaço
  • Se você tiver um , na linha de comando, cite-o assim: \,
  • As versões de sshfs após este bugfix foram mescladas não devem exigir o acima, mas% co_de O truque% ainda pode ser usado para brevidade ou para uma única configuração consistente entre muitos pontos de montagem.

Exemplo:

ravidroid:  /ssh/ravidroid  fuse.sshfs  ssh_command=ssh0-F/home/ravi/.ssh/config,reconnect,follow_symlinks,auto_cache,allow_other,default_permissions,uid=ravi,gid=ravi,noauto,users,x-systemd.automount,_netdev 0 0

Teste / Depuração

Como -F sem root , digite ssh-agent e verifique se funciona com êxito.

Para obter verbose mount <mountpoint> output: adicione ssh , por exemplo:

ssh_command=ssh0-vvF/home/USER/.ssh/config

Você também pode tentar as seguintes opções de montagem:

  • -vv
  • sshfs_debug (saída de fusível extremamente detalhada)
por 03.04.2017 / 07:45
1
-o SSHOPT=VAL

é apenas false = valor, em que SSHOPT precisa ser substituído pela opção SSH que você deseja definir (no seu caso KexAlgorithms ). Portanto, o comando correto deve se parecer com

$ sudo mount -t fuse.sshfs [email protected]:/ /home/ravi/mnt/ravidroid -o port=2222,identityfile=/home/ravi/.ssh/id_4096rsa_20kdf,KexAlgorithms=diffie-hellman-group1-sha1
    
por 03.04.2017 / 08:45