posso compartilhar minhas chaves SSH entre o WSL e o Windows?

4

Estou tentando migrar do uso do Powershell para o Bash no Windows (Windows Subsystem para Linux ou WSL). Para o propósito de usar o GIT, eu configurei minhas chaves SSH em C:/Users/User/.ssh . Eu então loguei no Bash, e criei um symlink ln -s /mnt/c/Users/User/.ssh/ ~/.ssh/ para (em teoria) usar as mesmas chaves ssh dos dois shells.

Ao executar o git, no entanto, sempre recebo um erro: Bad owner or permissions on /home/user/.ssh/config . O que estou fazendo errado?

    
por bluppfisk 27.02.2017 / 09:45

2 respostas

2

What am I doing wrong?

O SSH requer permissões sãs nas chaves privadas e você não é capaz de conseguir isso enquanto liga simbolicamente a um sistema de arquivos diferente (windows). A página de manual para ssh explica isso claramente:

~/.ssh/id_rsa

Contains the private key for authentication. These files contain sensitive data and should be readable by the user but not accessible by others (read/write/execute). ssh will simply ignore a private key file if it is accessible by others.

É muito provável que você copie as chaves privadas e defina permissões apropriadas, se quiser "compartilhar as chaves".

    
por 27.02.2017 / 12:45
3

Você precisa montar o sistema de arquivos do Windows usando o sistema de arquivos DrvFS com a opção metadata , que permite que as permissões do Linux coexistam com arquivos do Windows, armazenando-os nos metadados do arquivo.

sudo umount /mnt/c sudo mount -t drvfs C: /mnt/c -o metadata

Isso permitirá que você use suas chaves SSH nos dois sistemas operacionais.

Leitura adicional: link

E ainda mais leitura sobre como configurar WSL para aplicar essa configuração toda vez que ela for iniciada: link

    
por 28.06.2018 / 07:19