I tend to store authorized ssh public keys in a database then configure all servers with the appropriate AuthorizedKeysCommand in sshd_config to fetch them on the fly.<p>I also tend to include some form of caching in case the connection to the database is broken.<p>With this I can maintain keys for an entire cluster centrally.<p>This is all in place with open source configuration and tooling on <a href="https:&#x2F;&#x2F;hashbang.sh" rel="nofollow">https:&#x2F;&#x2F;hashbang.sh</a> (<a href="https:&#x2F;&#x2F;github.com&#x2F;hashbang" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;hashbang</a>). It is implemented with LDAP+sssd there. Feel free to pop in as we love discussing this stuff.<p>We have done similar with etcd as the backing database at my employer.