답변:
시험:
ssh-keygen -t rsa -N "" -f my.key
-N "" 빈 암호를 사용하도록 지시합니다 (대화 형 스크립트에서 두 개의 입력과 동일).
-f my.key 키를 저장하도록 지시합니다. my.key (적절하다고 생각되는대로 변경).
모든 것이 Enter 키를 제공 할 필요없이 실행됩니다. :)
대화 형 스크립트에 엔터를 보내려면 :
echo -e "\n\n\n" | ssh-keygen -t rsa
ssh-keygen가 떨어진 것처럼 보이지만 정상적으로 작동합니다. 다시 추가 했습니까? {edited} 또한-스크립트를 두 번 이상 실행할 수 없습니다. 기존 _rsa키 파일 을 덮어 쓸 것인지 확인하기 위해 질문을 변경 합니다 (따라서 y 또는 n을 제공해야 함)
yes ""대신 사용 하는 것이 좋습니다. echo -e "\n\n\n"( yes기본적으로 "y"가 주어진 인수를 출력 함] 무한대로 사용 하는 것이 좋습니다 . 프로그램이 요구할 수있는 모든 것에 대해 "예"응답을 제공하려는 상황에 적합합니다.) yes더 짧 ssh-keygen으며 질문을 추가 해야하며 자동으로 답변됩니다. :)
암호가있는 버전은 다음과 같습니다.
$ ssh-keygen -t rsa -b 4096 -C "comment" -P "examplePassphrase" -f "desired pathAndName" -q
더 필요하다는 점을 제외하고는 Michel Marro 와 동의합니다 . 파일이 이미 존재하는 경우에도 덮어 써야하는지 묻는 대화 형 상태입니다.
이 질문 의 답을 사용하십시오 .
yes y | ssh-keygen -q -t rsa -N '' >/dev/null
덮어 쓰기 메시지를 차단하려면 null로 리디렉션해야합니다.
echo -e "\n"|ssh-keygen -t rsa -N ""
echo -e다른 것을 방출하는 플랫폼의 하위 집합입니다 ). -essh-keygen
ssh-keygen -N ''자동화 된 설치 절차의 일부로 프로덕션에서 사용 하고 stdin을 전혀 읽지 않으므로 echo( 모든 echo 변형) 파이프를 사용할 . (부여, 나는 표준 입력에 연결되어 믿고 /dev/null, 그것이 TTY에 붙어 잘 때 다른 행동이있을 수 있지만, 더 나은 대답은 내 생산 유스 케이스에서 </dev/null보다는 echo ... |)
$ ssh-keygen -t rsa -N '' Generating public/private rsa key pair. Enter file in which to save the key (/home/dlyons/.ssh/id_rsa):
보안 및 성능 을 위해 ed25519 를 사용하는 것이 좋습니다 .
yes "y" | ssh-keygen -o -a 100 -t ed25519 -C "Bla Bla" -f /mypath/bla -N ""
여기
-o 이전 PEM 대신 OpenSSH 키 형식 (OpenSSH 6.5 이상 필요)
-a DH-GEX 후보자를 선별하는 동안 소수성 테스트의 수
-t 키 유형 (ed25519, RSA, DSA 등)
-f /mypath/bla 출력 파일 경로 및 이름
-N "" 빈 단계 사용
와 yes "y"어떤 상호 작용을위한.
두 개의 파일을 생성합니다
/mypath/bla
/mypath/bla.pub
여기서 bla파일이 개인이며,bla.pub 공공입니다.