SSH를 사용하여 AWS 서버에서 파일을 다운로드하는 방법은 무엇입니까?

SSH를 사용하여 AWS 서버에서 파일을 다운로드하는 방법은 무엇입니까?

환경: 원격: AWS - RHEL 7.2 로컬: Ubuntu 16.04

인증을 위해 .pem 파일을 사용하여 AWS 상자에 직접 SSH를 통해 다음과 같이 연결합니다.

ssh -i /home/<user>/<path>/<serverkey>.pem ec2-user@ec2-<awsserver>.us-west-2.compute.amazonaws.com

내가 하고 싶은 것은 단순히 루트 사용자가 소유하지 않은 파일을 다운로드하는 것입니다. 그러나 다른 사용자가 소유하므로 일반적인 scp 마법이 쉽게 작동하지 않습니다.

어떤 제안이 있으십니까?

답변1

sftp개인적으로 나는 왜 또는 scp작동하지 않는지 조사할 것입니다 .

기술적으로 다음을 수행할 수 있습니다.

ssh -t user@host 'cat /path/to/file' > out.file

이건 아마아니다동일한 파일을 생성하지만 원하는 것에 충분할 수도 있습니다.

예를 들어, 내 테스트 케이스 전송에서는 CRLF(dos) 줄 종결자가 있는 파일이 생성되었고 원본에는 LF(unix)가 있었습니다. 솔직히 말해서 왜 그런지 모르겠습니다. 나머지 파일은 동일했습니다. 바이너리 파일도 테스트되지 않았습니다.

테스트는 Linux에서 FreeBSD로 수행되었습니다.

답변2

 ssh — OpenSSH SSH client (remote login program)
 scp — secure copy (remote file copy program)
 sftp — secure file transfer program

scp나 sftp를 사용하세요. 예제 사용법;

scp [email protected]:/home/ec2-user/.bashrc download-bashrc.txt

세 가지 모두 ssh 데몬과 함께 작동합니다.

ps. 다른 사용자의 파일을 얻으려면 사용자에게 파일에 대한 읽기 액세스 권한이 있는지 확인하십시오(chmod/chown 또는 파일을 사용자의 홈에 복사).

관련 정보