![scp 전송: 권한이 거부되었습니다. [닫음]](https://linux55.com/image/148298/scp%20%EC%A0%84%EC%86%A1%3A%20%EA%B6%8C%ED%95%9C%EC%9D%B4%20%EA%B1%B0%EB%B6%80%EB%90%98%EC%97%88%EC%8A%B5%EB%8B%88%EB%8B%A4.%20%5B%EB%8B%AB%EC%9D%8C%5D.png)
지금까지 시도한 모든 것이 작동하지 않았습니다. 한 서버에서 다른 서버로 파일을 전송하려고 할 때마다 비밀번호를 요청하고 항상 권한 거부 메시지가 표시됩니다. 요청하기 전에 비밀번호를 확인했습니다.많은번(루트 계정의 비밀번호가 다를 수도 있음)). 파일이 루트 디렉터리에 있기 때문인 것은 확실하지만 어떻게 수정해야 할지 모르겠습니다. 파일이 들어가야 합니다. 파일을 루트로 전송하는 방법을 아는 사람이 있습니까? 제가 사용하고 있는 코드입니다. (IP와 컴퓨터 이름이 변경되었습니다.)
scp -r /home/server/EasyRSA-v3.0.6/pki/reqs/client1.req [email protected]:/tmp
답변1
모든 것을 시도했다고 말했지만 제공한 예제에서는 파일 경로가 매우 깁니다.
첫 번째 단계는 원본 서버의 파일에 액세스할 수 있는지 확인하는 것입니다.
cat /home/server/EasyRSA-v3.0.6/pki/reqs/client1.req > /dev/null
실패할 경우 현재 로그인되어 있는 사용자로 이전할 수 없습니다. 사용자를 파일 또는 루트의 소유자로 변경할 수 있다면 더 나은 행운을 누릴 수 있습니다.
두 번째 단계는 대상 위치에 쓸 수 있는지 확인하는 것입니다.
ssh [email protected] ': > /tmp/client1.req; ls -l /tmp/client1.req'
대상 사용자로 해당 위치에 쓸 수 없으면 해당 위치에 파일을 복사할 수 없습니다. 파일로의 리디렉션이 실패했지만 ls
파일이 계속 나열되는 경우 이 새 파일을 해당 위치에 복사하기 전에 파일을 삭제해야 할 수도 있습니다. 아니면 새 이름을 지정해야 할 수도 있습니다. 왜 중복됩니까?
위의 두 테스트가 모두 성공했지만 scp는 여전히 실패했다고 가정하고 출력을 살펴보세요.
ssh -v /home/server/EasyRSA-v3.0.6/pki/reqs/client1.req [email protected]:/tmp
이것이 명백한 문제를 나타내지 않는 경우, debug1: Authentication succeeded (password).
비밀번호(즉, 그 이후의 모든 항목)가 추가 정보로 허용되었음을 나타내는 출력을 질문에 추가하면 도움이 될 수 있습니다.