acrescenta outra coisa antes de ssh-copy-id

3

Estou usando este comando ssh-copy-id , mas antes de adicionar a chave pública, gostaria de adicionar algumas coisas como nova linha e nome. Por exemplo:

new line    
#Name of the person
pub.key here ..asdadsdad

Porque isso está passando por script com loop em muitos servidores, como posso colocar isso para ir com ele. Por enquanto eu tenho isso:

for i in $( cat file_servers ) do 
ssh-copy-id -i keyfile root@$i 

Mas eu não sei como posso adicionar uma nova linha e o "#nome da pessoa" antes que a chave seja anexada na última linha.

    
por user3523605 10.08.2014 / 18:43

2 respostas

3

ssh-copy-id basicamente copia o keyfile (ou identity , ou chave pública) local para o servidor remoto, para que você possa editar seu keyfile e adicionar o que quiser nele.

Edite seu keyfile e adicione o que você deseja:

#
# Name of the person
ssh-rsa  NF username@host

Agora, quando você executar ssh-copy-id -i keyfile <host> , essas linhas serão anexadas ao .ssh/authorized_keys do servidor remoto.

    
por 10.08.2014 / 22:38
-1

Você pode adicionar uma substituição in-line com sed, assim:

sed -i '1s/^/\nName of person\n/' $i

Isso substitui a primeira linha no início do arquivo por uma linha branca (\ n), o nome da pessoa e um retorno de carro (\ n).

Isso vai entre as duas linhas do seu script.

    
por 10.08.2014 / 19:03

Tags