AWS Ec2 - SCP 文件传输权限被拒绝
AWS Ec2 - Scp File Transfer Permission Denied
我已按照提供的文档将本地文件传输到在 ec2 实例中找到的目录,但我不断收到一个 Permission denied
,其中我的 ec2 实例中的路径和文件被添加到错误前面.
这不应该是凭据的问题,因为我ssh
使用相同的命令没有任何问题。我很好奇的可能是我的 ec2 实例或本地的文件和文件夹权限,如果这会阻止传输。
旁注:不确定这是否重要,但是当我 ssh
具有相同的凭证时,我被带到 /home/ec2-user
而当我 运行 ls -a
我不没有看到 /var/app
列出,但可以 cd
毫无问题地进入它并找到我的应用程序。
完整错误信息:
scp: /var/app/current/config/pk-cfappkey.pem: Permission denied
这是我的 scp 命令:
scp -vvv -i /Users/user/.ssh/app-key-pair /Users/user/Desktop/Projects/node/project/config/pk-cfappkey.pem ec2-user@ec2-[id].compute-1.amazonaws.com:/var/app/current/config
这是我的文件夹和文件权限
EC2实例文件夹路径:
/var/app/current/config
drwxr-xr-x 2 nodejs nodejs 4096 Oct 9 14:35 config
本地文件(pk-cfappkey.pem):
-rw-r--r--@ 1 user staff 1706 Sep 24 15:09 pk-cfappkey.pem
详细错误消息(摘要):
debug1: Connecting to ec2-[id].compute-1.amazonaws.com [id] port 22.
debug1: Connection established.
debug1: Requesting no-more-sessions@openssh.com
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
scp: /var/app/current/config/pk-cfappkey.pem: Permission denied
您的用户 ec2-user
没有目录 /var/app/current/config/
的写入权限。您应该将文件复制到其他地方:
scp -vvv -i /Users/user/.ssh/app-key-pair \
/Users/user/Desktop/Projects/node/project/config/pk-cfappkey.pem \
ec2-user@ec2-[id].compute-1.amazonaws.com:
然后连接到服务器:
ssh ec2-user@ec2-[id].compute-1.amazonaws.com
并使用适当的 sudo
访问权限将其移动到正确的位置:
sudo cp pk-cfappkey.pem /var/app/current/config/
将目标文件夹权限更新为
chmod 777 -R /destination/folder/location
我已按照提供的文档将本地文件传输到在 ec2 实例中找到的目录,但我不断收到一个 Permission denied
,其中我的 ec2 实例中的路径和文件被添加到错误前面.
这不应该是凭据的问题,因为我ssh
使用相同的命令没有任何问题。我很好奇的可能是我的 ec2 实例或本地的文件和文件夹权限,如果这会阻止传输。
旁注:不确定这是否重要,但是当我 ssh
具有相同的凭证时,我被带到 /home/ec2-user
而当我 运行 ls -a
我不没有看到 /var/app
列出,但可以 cd
毫无问题地进入它并找到我的应用程序。
完整错误信息:
scp: /var/app/current/config/pk-cfappkey.pem: Permission denied
这是我的 scp 命令:
scp -vvv -i /Users/user/.ssh/app-key-pair /Users/user/Desktop/Projects/node/project/config/pk-cfappkey.pem ec2-user@ec2-[id].compute-1.amazonaws.com:/var/app/current/config
这是我的文件夹和文件权限
EC2实例文件夹路径:
/var/app/current/config
drwxr-xr-x 2 nodejs nodejs 4096 Oct 9 14:35 config
本地文件(pk-cfappkey.pem):
-rw-r--r--@ 1 user staff 1706 Sep 24 15:09 pk-cfappkey.pem
详细错误消息(摘要):
debug1: Connecting to ec2-[id].compute-1.amazonaws.com [id] port 22.
debug1: Connection established.
debug1: Requesting no-more-sessions@openssh.com
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
scp: /var/app/current/config/pk-cfappkey.pem: Permission denied
您的用户 ec2-user
没有目录 /var/app/current/config/
的写入权限。您应该将文件复制到其他地方:
scp -vvv -i /Users/user/.ssh/app-key-pair \
/Users/user/Desktop/Projects/node/project/config/pk-cfappkey.pem \
ec2-user@ec2-[id].compute-1.amazonaws.com:
然后连接到服务器:
ssh ec2-user@ec2-[id].compute-1.amazonaws.com
并使用适当的 sudo
访问权限将其移动到正确的位置:
sudo cp pk-cfappkey.pem /var/app/current/config/
将目标文件夹权限更新为
chmod 777 -R /destination/folder/location