2016-10-11 15 views
0

Ich habe die Dokumentation gelesen, um lokale Dateien in ein Verzeichnis innerhalb der ec2-Instanz zu übertragen, aber ich bekomme immer einen Permission denied mit dem Pfad und der Datei in meiner ec2-Instanz vorangestellt der Fehler.AWS Ec2 - Scp-Dateiübertragungszugriff verweigert

Dies sollte kein Problem mit Anmeldeinformationen sein, weil ich ssh mit den gleichen Befehlen ohne irgendein Problem. Was mich interessiert, sind möglicherweise die Datei- und Ordnerberechtigungen innerhalb meiner ec2-Instanz oder lokal und wenn das die Übertragung verhindert.

Nebenbei bemerkt: Nicht sicher, ob dies wichtig ist, aber wenn ich ssh mit gleichen Zugangsdaten, ich gebracht /home/ec2-user und wenn ich ls -a laufen sehe ich nicht /var/app aufgeführt, kann aber cd in sie ohne Probleme und meine app .

Vollfehlermeldung:

scp: /var/app/current/config/pk-cfappkey.pem: Permission denied 

Hier ist mein Befehl scp:

scp -vvv -i /Users/user/.ssh/app-key-pair /Users/user/Desktop/Projects/node/project/config/pk-cfappkey.pem [email protected][id].compute-1.amazonaws.com:/var/app/current/config 

Hier sind meine Ordner und Dateiberechtigungen

EC2-Instanz Ordnerpfad :

/var/app/current/config 
drwxr-xr-x 2 nodejs nodejs 4096 Oct 9 14:35 config 

lokale Datei (pk-cfappkey.pem):

[email protected] 1 user staff 1706 Sep 24 15:09 pk-cfappkey.pem 

Detaillierte Fehlermeldung (zusammengefasst):

debug1: Connecting to ec2-[id].compute-1.amazonaws.com [id] port 22. 
debug1: Connection established. 
debug1: Requesting [email protected] 
debug1: Entering interactive session. 
debug2: callback start 
debug1: Sending command: scp -v -t /var/app/current/config 
debug2: channel 0: request exec confirm 1 
debug2: callback done 
debug2: channel 0: open confirm rwindow 0 rmax 32768 
debug2: channel 0: rcvd adjust 2097152 
debug2: channel_input_status_confirm: type 99 id 0 
debug2: exec request accepted on channel 0 
Sending file modes: C0644 1706 pk-cfappkey.pem 
debug2: channel 0: rcvd ext data 45 
Sink: C0644 1706 pk-cfappkey.pem 
debug2: channel 0: written 45 to efd 8 
scp: /var/app/current/config/pk-cfappkey.pem: Permission denied 
debug2: channel 0: read<=0 rfd 6 len 0 
debug2: channel 0: read failed 
debug2: channel 0: close_read 
debug2: channel 0: input open -> drain 
debug2: channel 0: ibuf empty 
debug2: channel 0: send eof 
debug2: channel 0: input drain -> closed 

Antwort

3
scp: /var/app/current/config/pk-cfappkey.pem: Permission denied 

Ihre Benutzer ec2-user keinen Schreibzugriff hat zum Verzeichnis /var/app/current/config/. Sie sollten die Datei an anderer Stelle kopieren:

scp -vvv -i /Users/user/.ssh/app-key-pair \ 
    /Users/user/Desktop/Projects/node/project/config/pk-cfappkey.pem \ 
    [email protected][id].compute-1.amazonaws.com: 

dann mit dem Server verbinden:

ssh [email protected][id].compute-1.amazonaws.com 

und an der richtigen Stelle mit den entsprechenden sudo Zugang verschieben:

sudo cp pk-cfappkey.pem /var/app/current/config/