다른 시스템 루트에 스크립트 파일을 배치하는 방법

다른 시스템 루트에 스크립트 파일을 배치하는 방법

다른 컴퓨터 루트에 스크립트 파일을 배치하고 싶습니다. 여기 내 터미널 명령이 있습니다

scp /var/www/html/script.sh [email protected]:script.sh

루트 비밀번호를 묻습니다. 올바른 루트 비밀번호를 입력했는데 이렇게 뜹니다

Permission denied, please try again.

누구든지 도와줄 수 있나요?

답변1

기본적으로 openssh는 루트 로그인 시도를 거부합니다. 그러나 이는 /etc/ssh/sshd_config서버 측에서 수정하여 허용할 수 있습니다.

이 행이 yes로 설정되고 주석 처리되지 않았는지 확인하십시오.

PermitRootLogin yes

그런 다음 sshd를 다시로드하십시오.

그러나 위의 설정은 좋은 보안 방법이 아닙니다. 대신 pubkey 로그인을 사용하세요.

구성 줄은 다음과 같아야 합니다.

PermitRootLogin without-password.

  1. 소스 머신 생성 키에서 마법사를 따르십시오.
    ssh-keygen -t rsa

  2. 위 명령은 공개 키와 개인 키 쌍을 생성 .ssh/id_rsa.pub하고 포함합니다. 콘텐츠를 대상 컴퓨터에 .ssh/id_rsa복사해야 합니다 . 존재하지 않는 경우 디렉터리와 파일을 만들고 Authorized_keys의 소유권이 인지 확인하세요 ..ssh/id_rsa.pub/root/.ssh/authorized_keys600

  3. 이제 scp 시도를 시도하면 1단계에서 입력한 비밀번호를 묻는 메시지가 표시됩니다.

답변2

비밀번호 없는 sudo 액세스 권한이 있다고 가정하면 다음이 작동합니다.

$ echo "My test file" > test 
$ scp test [email protected]:/tmp/
test
$ ssh [email protected] "sudo mv /tmp/test /"
$ ssh [email protected] "cat /test"
My test file
  1. 테스트 파일을 만듭니다.
  2. 임시 디렉터리에 파일을 복사합니다.
  3. 파일을 루트 디렉터리로 이동합니다.
  4. 파일이 루트 디렉터리에 있는지 테스트합니다.

관련 정보