link (Web Archive) me ajudou muito. Acabei usando root
nas máquinas remotas, e também na minha máquina local (via sudo
).
A idéia é ter várias chaves e restringir as chaves a certos comandos. Por exemplo, eu configurei meu host remoto de uma maneira que não permite root
login, mas permite executar um determinado comando (no meu caso eu acho que é rsync, eu tenho que admitir que eu usei o script validate-rsync
como sugerido no documento vinculado sem pensar muito) se autenticado com chave pública. Então, mesmo que alguém tivesse acesso à minha conta root
local, o não poderia logar diretamente (sim, ele talvez pudesse rsyncar arquivos corrompidos e outros, também corromper o allowed_keys
e assim por diante).
No momento, acho que esse é o melhor compromisso entre usabilidade e segurança.