나는 원격 서버에서 작업을 수행하기 위해 일련의 스크립트를 작성해 왔지만 비밀번호 입력을 자동화할 수 없기 때문에 ssh mid 스크립트를 통해 로그인하는 방법에 대해 막혔습니다. 이를 수행할 수 있는 방법이 있습니까?
echo "로그인 중..\n" ssh 사용자 이름@IP가 비밀번호 nextCommand에 어떻게든 하드코딩되어 있습니다.
답변1
매개변수를 통해 비밀번호를 보낼 수 없습니다. SSH 키를 사용할 수 있습니다. 클라이언트 컴퓨터에서:
ssh-keygen -t rsa
그러면 공개 SSH 키를 사용하여 ~/.ssh/에 id_rsa.pub라는 파일이 생성되고 다음을 추가해야 합니다.id_rsa.pub서버 컴퓨터에 파일을 만들고(scp 또는 ftp를 통해 복사할 수 있음) 다음과 같은 명령을 실행합니다.
cat id_rsa.pub >> ~/.ssh/.authorized_keys
이것은 나에게 효과적입니다.
답변2
@MichaelKjörling이 말했듯이 공개 키 인증을 설정하십시오.
ssh-copy-id user@host
이제 ssh
비밀번호 없이도 할 수 있습니다.user@host