Cryptocalypse!

Procedimento emergencial de rotação de chaves. Ou, como sobreviver a brechas do tipo Heartbleed!

Começando

Proceda com a configuração do ambiente de trabalho administrativo.

Atualizando

Se for possível e desejável, faça upgrade geral

hydra $HYDRA mass-upgrade

Gerando novas chaves SSH

Na máquina do/a administrador:

hydra $HYDRA newkeys all-ssh

Para cada nodo usado no git público:

cp $FOLDER/puppet/keys/ssh/$nodo/"$nodo"_id_rsa.pub $FOLDER/git/public/keydir/root@$nodo.$DOMAIN.pub

( cd $FOLDER/puppet     && git add . && git commit -m "Gerando chaves ssh" && git push )
( cd $FOLDER/git/public && git add . && git commit -m "Gerando chaves ssh" && git push )

Chaves do Puppet

Reset da infra de CA do puppet.

Certificados SSL

Gere novos certificados SSL.

Chaves SSH dos ikiwikis

WIKIS="lista de ikiwikis"
NODE="aziz"

for wiki in $WIKIS; do
  ssh-keygen -t rsa -P '' -b 4096 -f $FOLDER/puppet/keys/ssh/$NODE/ikiwiki/"$wiki"_id_rsa -C "$wiki@$wiki.$DOMAIN"
  cp $FOLDER/puppet/keys/ssh/aziz/ikiwiki/"$wiki"_id_rsa.pub $FOLDER/git/public/keydir/$wiki@$wiki.$DOMAIN.pub
done

( cd $FOLDER/puppet     && git add . && git commit -m "Gerando chaves para ikiwiki" && git push )
( cd $FOLDER/git/public && git add . && git commit -m "Gerando chaves para ikiwiki" && git push )

Tor

A parte fácil:

hydra $HYDRA mass-web /etc/init.d/tor stop
hydra $HYDRA mass-web rm -rf /var/lib/tor/hidden
hydra $HYDRA mass-web mkdir /var/lib/tor/hidden
hydra $HYDRA mass-web chown debian-tor. /var/lib/tor/hidden
hydra $HYDRA mass-web /etc/init.d/tor start

Isso precisa ser feito manualmente para outros serviços (por exemplo email e ssh):

cd `hydra $HYDRA folder`/puppet
grep -R onion hiera
grep -R onion manifests
grep -R onion modules/site_*

Monte uma lista de servidores e proceda com a regeneração:

SERVERS="galdino satanito magaiver"

for server in $SERVERS; do
  hydra $HYDRA exec $server /etc/init.d/tor stop
  hydra $HYDRA exec $server rm -rf /var/lib/tor/hidden
  hydra $HYDRA exec $server mkdir /var/lib/tor/hidden
  hydra $HYDRA exec $server chown debian-tor. /var/lib/tor/hidden
  hydra $HYDRA exec $server /etc/init.d/tor start
done

Em seguida, colete os novos hostnames e atualize os ServerAlias dos sites e outras referências:

hydra $HYDRA mass-web hydractl hidden-services

Senhas de usuário

O procedimento deve variar de aplicação para aplicação. Por exemplo, para o drupal há o Force password change.