AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 519613
Accepted
Stephen Boston
Stephen Boston
Asked: 2019-05-18 16:56:08 +0800 CST2019-05-18 16:56:08 +0800 CST 2019-05-18 16:56:08 +0800 CST

Como fazer uma entrada fstab para sshfs na porta SSH não padrão e usando a chave ssh

  • 772

O servidor está escutando na porta '8765' e requer uma chave SSH para autenticação.

Eu posso montar o diretório remoto usando este comando:

sshfs -o idmap=user,port=8765 stephen@server:/export/usb2T /mnt/usb2T

O servidor reconhece minha chave pública SSH.

Eu vi que, como uma entrada fstab para a porta SSH padrão, será:

stephen@server:/export/inbox /mnt/inbox fuse.sshfs  defaults,_netdev  0  0 

Mas precisarei adicionar a porta de escuta do servidor e a chave pública SSH do usuário cliente.

Como faço isso?

fstab sshfs
  • 2 2 respostas
  • 12336 Views

2 respostas

  • Voted
  1. somethingSomething
    2019-05-18T20:24:48+08:002019-05-18T20:24:48+08:00

    A entrada /etc/fstabque você está procurando é:

    Usando as opções ,port=PORTNUMBERe ,IdentityFile=/root.ssh/id_rsa:

      sshfs#USER@IP-ADDRESS:/export/inbox /mnt/inbox fuse.sshfs delay_connect,_netdev,user,IdentityFile=/root.ssh/id_rsa,idmap=user,allow_other,default_permissions,port=PORTNUMBER,uid=0,gid=0,rw,nosuid,nodev 0 0
    

    Diretório de montagem através sshde SSHFSremoto

    • Ao configurar as chaves SSH (como descrito acima), você não precisa digitar sua senha durante a montagem. Isso tornará a montagem muito mais simples e pode até ser feita usando um script ou automaticamente quando você fizer login no computador local.
    • Assim como no SSH, todo o tráfego entre o computador local e o computador remoto é criptografado.
    • Se você for o administrador do computador local, poderá configurar o sistema para fazer isso quando o computador inicializar para que ele sempre seja montado. Você precisa modificar /etc/fstab adicionando uma linha como esta (tudo em uma linha):
    • Você também precisará configurar as chaves SSH para fazer isso, para não precisar digitar uma senha. Consulte a página man do SSHFS para obter uma explicação das opções. Se você achar que a linha fstab acima não está funcionando corretamente (causando uma mensagem de erro na inicialização), você pode modificá-la para isso (observe a adição de noauto):

    sshfs#USER@IP-ADDRESS: /export/inbox fuse defaults,user,noauto,
    uid=einstein,gid=einstein,allow_other,IdentityFile=/home/alfred/.ssh/id_dsa 0 0 
    

    sshfs#USER@IP-ADDRESS: /export/inbox fuse defaults,user,uid=USER,gid=USER,allow_other,IdentityFile=/home/USER/.ssh/id_dsa 0 0   
    

    Guia do Mead para o Secure Shell (SSH)

    Como montar o diretório remoto sshfs no fstab

    Automount sshfs usando fstab sem mount -a

    O SSHFS aceita muitas opções de linha de comando que você pode querer verificar. Por exemplo, se o servidor SSH no computador remoto estivesse sendo executado na porta 12345 em vez da porta 22, você faria o seguinte:

    sshfs USER@IP-ADDRESS: /export/inbox -p PORTNUMBER
    

    Aqui estão as opções de linha de comando:

    Opções SSHFS:

    -p PORT
        equivalent to '-o port=PORT' 
    -C
    
    equivalent to '-o compression=yes'
    -F ssh_configfile
        specifies alternative ssh configuration file 
    -1
    
    equivalent to '-o ssh_protocol=1'
    -o reconnect
        reconnect to server 
    -o delay_connect
        delay connection to server 
    -o sshfs_sync
        synchronous writes 
    -o no_readahead
        synchronous reads (no speculative readahead) 
    -o sshfs_debug
        print some debugging information 
    -o cache=BOOL
        enable caching {yes,no} (default: yes) 
    -o cache_timeout=N
        sets timeout for caches in seconds (default: 20) 
    -o cache_X_timeout=N
        sets timeout for {stat,dir,link} cache 
    -o workaround=LIST
        colon separated list of workarounds 
        none
    
        no workarounds enabled
    
        all
    
        all workarounds enabled 
        [no]rename 
    
    fix renaming to existing file (default: off)
    
        [no]nodelaysrv 
    
    set nodelay tcp flag in ssh (default: off)
    
        [no]truncate 
    
    fix truncate for old servers (default: off)
    
        [no]buflimit 
    
    fix buffer fillup bug in server (default: on)
    
    -o idmap=TYPE
        user/group ID mapping, possible types are: 
        none
    
        no translation of the ID space (default)
    
        user
    
        only translate UID of connecting user
    
        file
    
        translate UIDs/GIDs based upon the contents of uidfile and gidfile 
    -o uidfile=FILE
        file containing username:uid mappings for idmap=file 
    -o gidfile=FILE
        file containing groupname:gid mappings for idmap=file 
    -o nomap=TYPE
        with idmap=file, how to handle missing mappings 
        ignore
    
        don't do any re-mapping
    
        error
    
        return an error (default) 
    -o ssh_command=CMD
        execute CMD instead of 'ssh' 
    -o ssh_protocol=N
        ssh protocol to use (default: 2) 
    -o sftp_server=SERV
        path to sftp server or subsystem (default: sftp) 
    -o directport=PORT
        directly connect to PORT bypassing ssh -o slave communicate over stdin and stdout bypassing network 
    -o transform_symlinks
        transform absolute symlinks to relative 
    -o follow_symlinks
        follow symlinks on the server 
    -o no_check_root
        don't check for existence of 'dir' on server 
    -o password_stdin
        read password from stdin (only for pam_mount!) 
    -o SSHOPT=VAL
        ssh options (see man ssh_config) 
    

    man/1/sshfs

    • 11
  2. Best Answer
    Stephen Boston
    2019-05-20T09:11:39+08:002019-05-20T09:11:39+08:00

    Eu quero que este sshfs monte para:

    1. acontecer somente após a conexão de rede ser alcançada;
    2. para que os arquivos na montagem sejam executáveis.

    Reunindo as informações fornecidas no excelente post de algo, juntamente com as opções necessárias, temos isso:

    stephen@server:/export/inbox /mnt/inbox fuse.sshfs x-systemd.automount,x-systemd.requires=network-online.target,_netdev,user,idmap=user,transform_symlinks,port=2314,identityfile=/home/stephen/.ssh/id_rsa,allow_other,default_permissions,uid=1000,gid=1000,exec 0 0
    

    As opções adicionais são:

    • x-systemd.automountcria uma unidade de montagem automática para systemd
    • x-systemd.requires=network-online.target tentativas são montadas somente após a conexão de rede ser alcançada
    • exectornar executáveis ​​os arquivos na unidade montada.
    • 4

relate perguntas

  • Como reordenar partições com segurança? É seguro usar a opção 'sort' do gdisk? Editar fstab + grub.cfg necessário?

  • É possível impedir que o sshfs crie arquivos goutputstream?

  • Ignorando a montagem automática no momento da inicialização

  • como identificar conf UUID ou conf dev ordinário de fstab

  • Fsck no momento da inicialização para o dispositivo de loopback

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve