
Costumo errar quando configuro manualmente o .ssh -dir, é fácil esquecer algum sinalizador. Muitas vezes preciso criar um novo usuário e permitir acesso apenas com SSH, como posso fazer isso? Basicamente, quero parar de fazer isso "# mkdir .ssh; cd .ssh; ssh-keygen; cat myKey > authorized_keys; cd ..; chown go-r; scp .ssh/myKey friend@IP' etc"
, tenho certeza de que cometi algum erro em algum lugar - tenho certeza de que algum comando como ssh-copy-id pode ser uma solução aqui, pelo menos corrige as permissões com .ssh quando usado corretamente.
Quer algo assim, talvez com ssh-copy-id?
# adduser tester # ssh-key-gen docs # ssh-copy-id docs /home/tester/ # not working, how to do this easily?
e depois no lado do cliente
$ eval `ssh-agent` $ ssh-add ~/.ssh/docs $ ssh tester@IP
isso deve dar acesso ao repositório com a chave privada.
Talvez relacionado
Responder1
Existe /etc/skel
um diretório que é usado como modelo para a página inicial do novo usuário. Você pode colocar esse .ssh
diretório com as permissões corretas e um pequeno script de shell com comandos necessários para gerar e copiar chaves ssh.
Então tudo que você precisa após a criação do usuário é ir até sua página inicial e executar este script. Bem simples.
Além disso, você pode finalizar o script com string
rm $0
então ele será excluído após a execução.