La mejor manera de proteger sus pares de claves EC2, que son solo claves SSH, es cifrarlos con una frase de contraseña (y seguir el proceso normal de administración de contraseña para esa frase de contraseña). Suponiendo que está utilizando Linux, puede usar ssh-keygen -p -f $file
para cifrar la clave. Debe mantener una copia de seguridad, preferiblemente protegida físicamente (es decir, una memoria USB en una caja de seguridad o algo). Supongo que está hablando de la mitad privada de la clave, ya que la clave pública es obviamente pública.
Teóricamente, sería mejor almacenar la clave en un TPM en su estación de trabajo o en una tarjeta inteligente, pero generalmente hay problemas prácticos con esta solución cuando se trata de claves SSH.
Si es malo almacenar la clave en la PC de su hogar depende de si se trata de una violación de la política. Si no es así, sinceramente, hay pocas razones para ver esto como algo peor que almacenarlo en una computadora portátil que usa para el trabajo.
Ciertamente puede mantener una copia de seguridad de la clave en S3 (en lugar de una copia de seguridad física). El modelo de amenaza es tal que ya está teniendo un mal día (en términos de fugas de datos e interrupción del servicio, entre otras cosas) si alguien puede acceder a su cuenta de AWS. Pero, a menos que haya algún director de seguridad que pueda tener acceso al bucket S3 con su clave pero no se le permita iniciar sesión en las máquinas, necesitaría encontrar otra forma. Si almacena una copia en S3, al menos asegúrese de que esté encriptada con una frase de contraseña.