Gerenciar chaves públicas no servidor com a essência

O github oferece uma bela visualização das chaves públicas dos usuários, recurso simples: https://github.com/infoslack.keys .

Pensando nisso criei um script simples para coletar uma lista de usuários iniciando a private giste adicionar suas respectivas chaves públicas a authorized_keys:

#!/bin/sh

URL
="RAW_URL_PRIVATE_GIST"
TMP
="/tmp/authorized_keys_dl"
ERR
="/dev/null 2>&1"

mkdir
-pm 700 ~/.ssh > $ERR

for user in $(curl --silent $URL)
do
curl
-s "https://github.com/"$user".keys" -w "n" >> $TMP
done

mv
-f $TMP ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys > $ERR

O script pode ser adicionado crone gistseria uma lista de permissões contendo a lista de usuários que acessarão o servidor:

user_1
user_2

user_3
...

Feliz Hacking;)