[[!toc levels=4]] Repositório de chaves ===================== Configuração ------------ A maior parte dos procedimentos a seguir depende de uma configuração do tipo # Configuracao project="exemplo" domain="exemplo.org" admin="nodo_admin" admin_port="porta_ssh" base="$HOME/coletivos/$project/conf/puppet" Inicializando um repositório ---------------------------- # Inicializando keyringer $project init $HOME/coletivos/$project/conf/keyring Gerando chaves https -------------------- # Gerando chaves para https keyringer $project genpair ssl cert $domain Gerando chaves para novos nodos ------------------------------- # Gerando chaves ssh e gpg para novos nodos # A importacao das chaves gpg nos nodos deve ser feita manualmente for class in `ls $base/manifests/nodes`; do node="`basename $class .pp`" privkey="$base/files/keys/"$node"_id_dsa" pubkey="$privkey.pub" if [ ! -e "$privkey" ] || [ ! -e "$pubkey" ]; then keyringer $project genpair ssh $node/ssh/id_dsa $node.$domain $privkey keyringer $project genpair gpg $node/gpg/key $node.$domain fi done Submetendo mudanças ------------------- # Submetendo keyringer $project git remote add origin ssh://gitosis@$admin.$domain:$admin_port/keyring.git keyringer $project git push origin master Importação de chaves GPG ------------------------ Importando chaves nos seus respectivos nodos: gpg --import # colar a chave privada gpg --edit-key # ajustar confiabilidade dessa chave para 5 com o comando "trust" gpg --list-keys # atualizar o trust db Chaves pessoais =============== Para gerar uma chave SSH pessoal, use um comando do tipo ssh-keygen -t dsa -f ~/.ssh/id_dsa -C "seu@email" Esse comando irá gerar uma **chave privada** em `~/.ssh/id_dsa` e uma respectiva **chave pública** em `~/.ssh/id_dsa.pub`. Se você já possui uma chave em `~/.ssh/id_dsa` e quiser mantê-la, escolha outro nome para a nova chave, como por exemplo `~/.ssh/id_dsa_aplicacao`. Referências ----------- * [Using ssh-agent with ssh](http://mah.everybody.org/docs/ssh). * [Using Rsync and SSH ](http://troy.jdmz.net/rsync/index.html). * [SSH and ssh-agent](http://www.securityfocus.com/infocus/1812).