
He estado ejecutando una instancia Amazon EC2 por un tiempo y recientemente cambié accidentalmente los permisos/propiedad de las carpetas de forma recursiva. Ya no puedo acceder mediante SSH a la instancia. No recuerdo cuál fue la orden exacta. Luego recuperé el acceso básico utilizando la técnica proporcionada en la respuesta a esta pregunta:https://serverfault.com/questions/234061/re-gaining-root-access-to-an-ec2-ebs-boot-image
Sin embargo, no sé qué hacer con el Paso 3 ("Modificarlo"). No sé qué modificar y, en mis intentos por establecer los permisos correctos, ¡también perdí el acceso a varias instancias EC2 de recuperación!
Como referencia, estoy usando Win7 y Putty/WinSCP para conectarme a la instancia. Putty muestra los siguientes 2 errores cuando intento iniciar sesión en la instancia a través de SSH:
El servidor rechazó nuestra clave
No hay métodos de autenticación compatibles disponibles (servidor enviado: clave pública)
Estoy seguro de que estoy utilizando el nombre de usuario, la dirección IP y la clave privada correctos para mi instancia.
Cualquier ayuda sería muy apreciada.
Respuesta1
La solución,como describe la publicación de Server Fault, es montar su EBS en otra instancia (nueva) a la que pueda conectarse. El EBS será solo una unidad allí y podrá conectarse de forma remota a la instancia ya que es nueva. Luego podrá recuperar sudo chown
los directorios que rompió en primer lugar.
Detenga (NO finalice) su primera instancia desde la consola de AWS
Cree una nueva instancia de Linux desde la consola de AWS
Separe el EBS de la primera instancia y conéctelo a la nueva instancia, nuevamentedesde la consola de AWS. Asígnele el nombre: /dev/sdm (en la consola de EBS, verá que el volumen adjunto se llama sdm pero está asignado a xvdm en Linux, por lo que coincide con los siguientes comandos. Pero siéntase libre de usar otra letra y ajustar el siguientes comandos.)
SSH a la nueva instancia y ejecute:
sudo mkfs -t ext4 /dev/xvdm sudo mkdir /old-ebs # optional, in case this is a bit more permanent sudo echo "/dev/xvdm /old-ebs auto noatime,noexec,nodiratime 0 0" >> /etc/fstab sudo mount /dev/xvdm /old-ebs
Ahora tiene acceso (sudo) a su antiguo EBS y puede encontrar
chown
el directorio que necesita. Un consejo aquí, si está perdido, sería copiar los derechos de la nueva instancia.Una vez que haya terminado, puede detener la nueva instancia, desconectar su EBS y volver a conectarlo a la primera instancia, luego iniciarla.
El tercer comando de consola anterior, para agregar el volumen montado en el archivo /etc/fstab
para que se monte automáticamente en cada reinicio, es opcional.