SSH 키 쌍을 생성해야하는 Ruby/Rack 응용 프로그램에서 작업 중입니다. 응용 프로그램에서 ssh-keygen
이라고 부르는만큼 Heroku에서 실행되도록 설계되었으므로 명령을 호출 할 수 없으므로 실행할 수 없습니다. , ssh-keygen없이 SSH 키 쌍 (개인/공개) 생성
key = OpenSSL::PKey::RSA.generate(2048)
# => -----BEGIN RSA PRIVATE KEY----- ....
key.public_key
# => -----BEGIN RSA PUBLIC KEY----- ....
불행하게도 RSA 공개 키와 SSH 공개 키가 동일한 것이 아니다 :
나는 다음과 같은 루비 표준 라이브러리에는 OpenSSL을 사용하여 공개/개인 RSA 키는 일을 얻을 수있었습니다 동일한 RSA 키로 생성 할 수 있습니다. SSH를 공개 키는 다음과 같은 :
ssh-rsa AAAAB3NzaC1yc2EAAAABIwA.....
는 SSH 키를 생성하거나 ssh-keygen
를 사용하지 않고 루비에 SSH를 RSA 키를 변환 할 수 있습니까?
OpenSSL :: PKey :: RSA # to_pem은 SSH 공개 키 형식으로 변환하지 않고 문자열 출력을 제공하는 것 같습니다. – bensie
또한 단순히 "ssh-rsa"를 추가하고 문자열에 주석 구문을 추가하려고 시도했지만 동일한 것이 아니며 유효한 공개 키로 인식되지 않습니다. – bensie