저는 세 가지 시스템을 운영하고 있습니다.
- 일부 파일을 저장하는 원격 Unix 시스템(Unix1이라고 함)
- 다음을 저장하는 로컬 Windows 컴퓨터(win1이라고 부르겠습니다)사적인Unix1의 핵심
- 프로세스가 저장되는 원격 Unix 시스템입니다(Unix2라고 하겠습니다).
Unix2의 프로세스는 Unix1에 설치할 수 없습니다. 이상적으로는 다음을 수행하려고 합니다.
- Unix2에서 Unix1에 연결합니다(win1의 개인 키 사용).
- Unix1에서 Unix2로 일부 파일 가져오기
- Unix2에서 프로세스 실행
- Unix2에서 Unix1로 출력 파일 푸시(win1에서 개인 키 사용)
여기서 따라야 할 구문은 무엇입니까? 개인 키의 위치로 인해 많은 문제가 발생합니다.
답변1
Windows에서 UNIX로 키 가져오기
Windows의 개인 키에서 공개 키를 생성하고 둘 다 unix2에 복사합니다.
Putty를 사용한다면 puttygen을 사용한 후 변환하고,openssh 키 내보내기
개인 키는 다음과 같습니다. (RSA는 키 유형입니다.)
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCUAEAzrtuUOEMAN1vaX1GFBLoBiDba/AiIdfFkTFJeZtaKtiuIpS7
(...)
----END RSA PRIVATE KEY-----
공개 키는 다음과 같습니다.
ssh-rsa AAAAB3....abc user@hosts
unix1에서 user2 승인
user1/user2가 unix2의 unix1/unix2에 있다고 가정합니다.
공개 키 내용을 authorized_keys
( ~user1/.ssh
unix1에서) 에 추가합니다.
id_rsa
unix2 에 개인 키를 넣습니다 ~user2/.ssh
.
파일 복사
scp /some/file1.txt /some/file2.cmd user1@unix1:/distant/place
실행 중인 프로세스
ssh -l user1 unix1 /distant/place/file2.cmd
결과를 다시 가져오다
scp user1@unix1:/distant/place/result.txt /some