No puedo enviar un archivo scp a una instancia EC2 a la que puedo enviar por ssh

No puedo enviar un archivo scp a una instancia EC2 a la que puedo enviar por ssh

Tengo dos instancias EC2 que se crearon a partir de la misma AMI, que se creó a partir de la AMI de Amazon Linux. Estos ejecutan mysql en una configuración maestro-esclavo. El grupo de seguridad ("db") está configurado para permitir el puerto 22 desde instancias que se ejecutan bajo el grupo de seguridad "web".

Entonces, ingreso por ssh a una de las instancias web y luego por ssh o scp a las instancias de la base de datos. Esto ha estado funcionando bien por un tiempo.

Hoy, sin embargo, ya no puedo acceder a una de las instancias (la maestra). Puedo acceder a él sin problemas, y tanto scp como ssh funcionan bien en la instancia esclava.

Ejecutar scp con -vv produce una salida casi idéntica, hasta la línea debug2: a continuación, que es la última salida cuando se conecta al maestro.

debug2: exec request accepted on channel 0
Sending file modes: C0775 77 <filename>

¿Alguna idea de lo que está pasando? Intenté reiniciar la instancia y no hizo ninguna diferencia.

Actualizar:

/var/log/secure:
  Jan 10 19:02:59 <host> sshd[1987]: Accepted publickey for <user> from xx.xxx.xxx.xxx port 33285 ssh2
  Jan 10 19:02:59 <host> sshd[1987]: pam_unix(sshd:session): session opened for user <user> by (uid=0)

Se agregaron alrededor de 20 líneas a /var/log/audit/audit.log, todas terminando enres=success

Respuesta1

Solucioné este problema haciendo lo siguiente:

$ sudo vi /etc/ssh/sshd_config

Cambió esto:

# override default of no subsystems
Subsystem      sftp    /usr/libexec/openssh/sftp-server

A esto:

# override default of no subsystems
Subsystem      sftp    internal-sftp

Luego reinició el servicio sshd:

$ sudo service sshd restart

Respuesta2

Me resulta más fácil ejecutar Python SimpleHTTPServer y ejecutar wget en el otro lado para descargar el archivo.

  • Agregue el protocolo HTTP que se agregará en la configuración de seguridad para todas las fuentes

  • ejecute el siguiente comando en el directorio en el que existe el archivo

    $ sudo python -m SimpleHTTPServer 80

  • en el lado receptor, ejecute el siguiente comando para descargar el archivo

    $ wget http://ec2ip.aws.amaxon.com/file.txt

información relacionada