Aunque tengo conocimiento básico sobre temas de encriptación, trataré de responder a la pregunta original que es cambiar la contraseña en todos los routers, con "comandos de andar por casa"
Creo que se podría hacer mediante un script en un router que haría de maestro usando conexiones ssh. A traves de esas conexiones envíariamos los comandos pertinentes a los routers clientes remotos para que cambien la contraseña.
- El primer paso sería añadir los clientes remotos y en el local los pares de autenticación ssh lo cual vendría a ser algo como esto:
http://www.linuxproblem.org/art_9.htmlDe esta forma no hace falta loguearse en los routers remotos.
- Ahora ya podemos enviar comandos a los routers remotos sin loguearse. Y podremos hacer el script para enviar los comandos que sería algo tal que así
#!/bin/sh
#cambiar contraseña en remotos
ssh root@192.168.8.88 'uci set wireless.@wifi-iface[0].key="supersecreto";uci commit wireless;wifi'
ssh root@192.168.8.89 'uci set wireless.@wifi-iface[0].key="supersecreto";uci commit wireless;wifi'
#cambiar en el local
uci set wireless.@wifi-iface[0].key="supersecreto";uci commit wireless;wifi
Básicamente sería algo en ese estilo. Faltaría hacerlo más sofisticado para hacer que detecte si algún cliente está caído o situaciones diversas de ese estilo.
Y hacer que el pass se generase aleatoriamente o que se le pasase desde otro sitio, Pero son detalles menores. Luego solo habría que meter el script en cron o bien hacer un loop para que se ejecute cada X días.
No he testado esto y puede que haya algún impedimento para que funcionase, así que solo es una idea
