Automatizando uma operação de montagem que requer entrada do usuário

4

Eu quero montar um diretório em um servidor de arquivos na inicialização. Esta é a minha entrada / etc / fstab :

# mount the fileserver
https://fsrv.company/ /mnt/fileserver davfs user,auto 0 0

Montá-lo manualmente com mount /mnt/fileserver funciona bem. No entanto, devido a um certificado desatualizado, isso emite um aviso que sempre tenho que responder com yes:

/sbin/mount.davfs: the server certificate does not match the server name
/sbin/mount.davfs: the server certificate is not trusted
[...]
Accept certificate for this session? [y,N] y

Este dispositivo deve ser montado ao iniciar o Ubuntu (devido à opção auto ). No entanto, o dispositivo não está montado, provavelmente devido à entrada necessária. O proprietário do servidor de arquivos não atualizará seu certificado.

Como posso automatizar esse processo, de modo que o dispositivo seja montado na inicialização, com a resposta sendo sempre y\n ?

EDIT: Eu fiz o download e coloquei o certificado em .davfs2 / certs / e editei a entrada em .davfs2 / davfs2.conf (como sugerido abaixo por @Oli ), mas a entrada interativa permanece.

    
por jotrocken 27.06.2014 / 12:23

4 respostas

5

No meu caso, usei o código destacado por Oli acima e usei o trust_server_cert opção na configuração dav2fs.

  

Útil quando o certificado do servidor não pode ser verificado ou é                 mesmo inválido, mas você sabe que pode confiar neste certificado.

Então, edite /etc/davfs2/davfs2.conf e adicione uma linha parecida com a seguinte:

trust_server_cert        /etc/davfs2/certs/my.selfsigned.cert.pem

Isso me permitiu montar um webdav OwnCloud auto-assinado mesmo quando o host do certificado não correspondia.

    
por James 19.01.2015 / 14:43
2

Não seria mais fácil corrigir o problema de confiança e instalar o certificado?

  1. Faça o download do certificado (graças a elec3647 no superusuário )

    openssl s_client -connect HOSTNAME:443 -showcerts </dev/null 2>/dev/null | openssl x509 -outform PEM > certificate.pem
    
  2. Copie o certificado para /etc/davfs2/certs/

    sudo cp certificate.pem /etc/davfs2/certs/
    

Isso deve lidar diretamente com o problema.

    
por Oli 27.06.2014 / 12:32
0

A maneira correta de resolver isso seria alterar o CN (identidade) do certificado do servidor para defini-lo em seu domínio (neste caso, fsrv.company ).

No entanto, você pode contornar isso fazendo o caminho do gueto, adicionar um comando ao boot (no Ubuntu que seria Startup Applications, por exemplo) com o seguinte:

echo y | mount /mnt/fileserver

Isso basicamente "aceita automaticamente" o erro no certificado para você.

    
por brickmasterj 13.12.2014 / 19:46
0

Encontrei o mesmo problema, mas encontrei uma solução diferente. Eu simplesmente instalei o pacote ca-certificates porque meu certificado foi assinado por uma CA oficial: Terena.

/sbin/mount.davfs: the server certificate is not trusted
  issuer:      TERENA, Amsterdam, Noord-Holland, NL
  subject:     Domain Control Validated
  identity:    owncloud-mshe.univ-fcomte.fr
  fingerprint: 0e:5f:b4:02:c2:a7:d7:7f:8b:ef:9c:06:25:0c:c0:1f:d4:38:83:1d

A solução é:

apt install ca-certificates
    
por MaxiReglisse 18.10.2016 / 16:01