두 개의 다른 서버가 있습니다.
- 젠킨스
- EC2 인스턴스(내 vuejs 애플리케이션)
그래서 Jenkins SSH 플러그인을 사용하여 vuejs 애플리케이션을 원격 서버에 배포하려고 하면
하지만 연결할 수 없습니다
통나무:
[SSH] executing...
ERROR: Failed to authenticate with public key
com.jcraft.jsch.JSchException: invalid privatekey: [B@482626ec
개인 키(dev.pem 파일 콘텐츠) 나는 무엇이 잘못되었는지 모른다.
따라서 명령줄을 통해 연결하려고 하면 다음과 같습니다.
ssh -i dev.pem ec2-user@ec2-ip -p 22
연결되었습니다. 도와주세요. 어떻게 해야 하나요?
답변1
티켓에서 같은 문제를 발견하고 해결했습니다.
문제는 개인 키 파일 형식입니다.
개인 키 헤더와 관련이 있습니다. 이는 Puttygen이 아닌 Macbook의 ssh-keygen에서 가져온 것입니다. Jenkins와 플러그인은 이 형식을 읽을 수 없습니다. 그래서 새로운 pem 파일을 생성했습니다. EC2 서버에 연결이 잘 작동합니다
개인 키는 다음과 같습니다.
-----BEGIN RSA PRIVATE KEY-----
MIIE....