Comment savoir quand une clé entropique est surchargée?

10

J'ai plusieurs clés d'entropie avec egd en face d'eux, puis toutes les charges sont équilibrées par haproxy. J'ai ensuite de nombreuses machines clientes utilisant l'IP du service haproxy comme source réseau d'entropie. Je n'ai aucune idée de la quantité d'entropie qu'ils demandent.

Les clés d'entropie peuvent produire une quantité limitée d'entropie utilisable. Les spécifications indiquent environ 30 kilobits / sec minimum. Pour autant que je puisse voir, la clé d'entropie n'a pas de moyen de demander combien elle est demandée. Le protocole EGD semble assez difficile à renifler pour trouver ces informations. Les clients peuvent demander une quantité d'entropie variable, et ils pourraient ne pas récupérer la même quantité.

Quelqu'un a-t-il trouvé un moyen simple de mesurer la quantité demandée à une clé entropique?

Il serait bon de savoir, afin de pouvoir planifier quand des clés supplémentaires sont nécessaires, et de repérer les clients détraqués.

grifferz
la source
Qu'est - ce que la clé entropique? Est-ce un RNG matériel?
Hubert Kario
@HubertKario Oui . Il est fabriqué par Simtec Electronics au Royaume-Uni.
James O'Gorman

Réponses:

4

Les deux seules choses qui me viennent à l'esprit sont d'essayer de mesurer le temps de réponse de votre serveur d'entropie (il devrait y avoir une augmentation significative de la latence s'il ne peut pas suivre) ou de regrouper /proc/sys/kernel/random/entropy_availet de surveiller la quantité d'entropie dont vous disposez (je suppose qui egdutilise /dev/randomet non le matériel directement).

Hubert Kario
la source
ekeyd-egd-linux accède directement au matériel (et AFAIK cela ne peut fonctionner que de cette façon). Malheureusement, je n'ai pas accès à de nombreux clients, donc je ne peux pas dire combien d'entre eux n'obtiennent pas l'entropie qu'ils demandent. Je pense que je devrais pouvoir demander une certaine entropie directement à partir de la clé individuelle et vérifier le temps qu'il faut pour la fournir comme vous le suggérez. Cela devrait me donner une indication quant à savoir s'il est au moins surchargé.
grifferz
2

Il semble que l'archive tar source ekeydpossède un plugin munin pour fournir des statistiques ekey.

Même si vous n'utilisez pas munin, je suppose qu'il serait possible d'extrapoler le script en quelque chose utilisable pour votre infrastructure.

Je pense que nous connaissons tous les deux les auteurs de l'appareil et du logiciel, donc cela pourrait valoir la peine de les inciter. :-)

James O'Gorman
la source
AFAIK, cela ne révèle que ce que vous pouvez obtenir et ekeydctl statsque simtec a déjà confirmé ne me dira pas ce que je dois savoir - je leur ai déjà demandé. :( Je me demandais juste ce que les autres ont fait.
grifferz
0

Essayer:

dd if=/dev/random of=/dev/null bs=1K count=1M

Une fois terminé, ddil indiquera la bande passante lue, vous saurez ainsi la quantité d'entropie fournie. Vous pouvez l'exécuter sur le serveur (déconnecté de ses clients) pour mesurer la production d'entropie, et sur les clients, pour mesurer la quantité qu'ils reçoivent.

Tuer le ddprocessus en cours avec un SIGUSR1signal lui demandera de rapporter ses statistiques d'E / S, vous n'avez donc pas besoin d'attendre qu'il se termine (voir man dd).

En outre, les clients doivent exposer une augmentation de leur consommation de bande passante de téléchargement, en raison de la lecture de l'entropie sur le serveur (par exemple: nethogsplus netstat).

Luchostein
la source