다른 로컬 ID를 사용하여 SSH를 통해 원격 시스템에 연결

다른 로컬 ID를 사용하여 SSH를 통해 원격 시스템에 연결

저는 "user1"로 로그인했습니다.

Host A:
  user1
  user2

Host B:
  remoteuser.

user2on Host A과 on remoteuser사이에 신뢰 관계가 설정됩니다 Host B.

그러나 스크립트는 user1on 에 의해 실행 됩니다 Host A.

user2실행 중인 스크립트에 설정된 신뢰 관계를 어떻게 활용할 수 있습니까 ?user1Host A

user1나는 와 신뢰 관계를 구축 하고 싶지 않습니다 remotehost.

답변1

user2의 개인 키를 user1에 복사합니다.

cp /home/user2/.ssh/id_rsa     /home/user1/.ssh/id_rsa.user2
cp /home/user2/.ssh/id_rsa.pub /home/user1/.ssh/id_rsa.user2.pub
chown user1:group1 /home/user1/.ssh/id_rsa.user2{,.pub}

user1로서 다음 대체 ID를 사용하여 연결합니다.

ssh -i /home/user1/.ssh/id_rsa.user2

또는 /home/user1/.ssh/config에 호스트 항목을 추가하십시오.

Host B
  IdentityFile /home/user1/.ssh/id_rsa.user2

답변2

"신뢰 관계"는 유닉스 세계에서는 알려져 있지 않습니다. 우리는 비밀번호를 알고 있거나 sudo모릅니다 ssh.

3단계 "신뢰"(user1@A -> user2@A -> Remoteuser@B)를 쉽게 가질 수 없습니다.

누구나

  1. 스크립트를 user2로 이동
  2. user1이 user2에게 비밀번호 없이 sudo를 수행하도록 허용
  3. user1이 비밀번호 B 없이 원격 사용자로 로그인하도록 허용

/etc/sudoers.confUser2의 개인 키를 User1의 개인 키로 편집하거나 복사해야 합니다 .

관련 정보