Si j'utilise quelque chose comme gitolite pour gérer le contrôle d'accès, à quel point les touches authorisées évoluent-elles? Ce qui signifie si j'ai dit 50 000 utilisateurs à quoi ressemblerait la performance (je suppose que ce n'est pas très bon). Quelles sont les alternatives?
Mise à jour: j'ai décidé de faire quelques tests moi-même (ce que j'aurais dû faire en premier lieu). J'ai écrit un script simple pour générer des clés SSH et les ajouter à un fichier authorized_keys. Mon ordinateur n'est pas si rapide, donc je n'ai généré que 8 061 clés, puis j'ai ajouté les miennes à la fin, le fichier a fini par faire 3,1 Mo. J'ai ensuite ajouté un référentiel git avec un fichier et j'ai exécuté git clone trois fois:
With 8,061 keys (Mine is at the end of the file)
real 0m0.442s
real 0m0.447s
real 0m0.458s
With just a single key:
real 0m0.248s
real 0m0.264s
real 0m0.255s
Les performances sont bien meilleures que ce que je pensais. Je suis toujours très intéressé par des alternatives qui pourraient être plus rapides et plus efficaces pour un grand groupe de clés 50 000+.
authorized_keys
fichier avec des clés de 50 Ko ne fait que 25 Mo environ. Cela sera sûrement complètement mis en cache dans les tampons du système de fichiers. J'imagine que le temps pour trouver la clé dans le fichier serait éclipsé par le temps pour réellement utiliser cette clé pour authentifier l'utilisateur.Réponses:
Vous pouvez réellement voir l'efficacité sur GitHub quant à la vitesse à laquelle cela est. Vous n'allez pas provoquer un goulot d'étranglement significatif avec autant de clés.
Bien que documenté dans leur blog de 2009 , ils ont changé la façon dont les clés ssh sont récupérées, à partir d'une base de données. Astuce chapeau: @Jeremey
Mais, vous avez créé plus de 8 000 clés, vous pouvez tester à nouveau avec 50 000 clés.
Ces clés n'ont pas besoin d'être des clés valides, écrivez simplement un générateur et écrivez le fichier, puis ajoutez le vôtre à la fin.
la source