2 votes

Impossible d'envoyer un fichier scp vers une instance EC2 à laquelle je peux accéder par ssh.

J'ai deux instances EC2 qui ont été créées à partir de la même AMI, qui a été créée à partir de l'AMI Amazon Linux. Elles exécutent mysql dans une configuration maître-esclave. Le groupe de sécurité ("db") est configuré pour autoriser le port 22 des instances fonctionnant sous le groupe de sécurité "web".

Donc, je me connecte à l'une des instances web, puis je me connecte par ssh ou scp aux instances de la base de données. Cela fonctionne bien depuis un certain temps.

Aujourd'hui, cependant, je ne peux plus faire de scp vers l'une des instances (le maître). Je peux y accéder par ssh sans problème, et scp et ssh fonctionnent bien sur l'instance esclave.

L'exécution de scp avec -vv produit une sortie presque identique, jusqu'à la ligne debug2 : ci-dessous, qui est la dernière sortie lors de la connexion au maître.

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

Une idée de ce qui se passe ? J'ai essayé de redémarrer l'instance, mais cela n'a rien changé.

Mise à jour :

/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)

Une vingtaine de lignes ont été ajoutées à /var/log/audit/audit.log, toutes se terminant par res=success

0voto

James redo Points 1

J'ai résolu ce problème en faisant ce qui suit :

$ sudo vi /etc/ssh/sshd_config

J'ai changé ça :

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

A ceci :

# override default of no subsystems
Subsystem      sftp    internal-sftp

Puis redémarrez le service sshd :

$ sudo service sshd restart

0voto

rajeshnair Points 101

Je trouve plus simple d'exécuter un SimpleHTTPServer en Python et d'exécuter wget de l'autre côté pour télécharger le fichier.

  • Ajout d'un procotcol HTTP à ajouter dans la configuration de sécurité pour toutes les sources

  • Exécutez la commande suivante dans le répertoire dans lequel le fichier existe

    $ sudo python -m SimpleHTTPServer 80

  • du côté récepteur, exécutez la commande suivante pour télécharger le fichier

    $ wget [http://ec2ip.aws.amaxon.com/file.txt](http://ec2ip.aws.amaxon.com/file.txt)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X