ssh 비밀 번 호 를 자주 입력 하 는 번 뇌 를 없애다

서언
MacBook Pro 를 구입 하기 전에 제 개발 환경 은 주로 Virtual Box 에서 실행 되 는 Mint 발행 판 입 니 다.이 시스템 에 서 는 한 번 git push 을 실행 하고 passphrase (이하 비밀번호) 를 입력 하면 더 이상 입력 할 필요 가 없습니다. ssh 가 원 격 기기 에 로그 인하 더 라 도 마찬가지 입 니 다.
그러나 Mac 을 사용 해 보 니 이곳 의 ssh 는 이러한 편리 한 특성 이 없 었 다. 매번 실행 git push 이나 ssh 할 때마다 비밀 번 호 를 입력 해 야 하기 때문에 매우 불편 했다.
비밀 번 호 를 한 번 또 한 번 입력 하 는 것 을 피하 기 위해 서, 매번 로그 인 한 후에, 나 는 ssh-add 를 실행 하여 문 제 를 영원히 해결 할 것 이다.
ssh-add ~/.ssh/id_rsa

macOS Catalina 로 업그레이드 한 이후 뚜껑 을 닫 고 잠 들 기 전에 로그아웃 하지 않 으 면 다음 뚜껑 을 열 고 깨 우 면 로그 인 화면 에 걸 려 죽 을 가능성 이 높다.어 쩔 수 없 이 나 는 매일 로그아웃 하고 다음날 다시 로그 인해 야 하기 때문에 매일 실행 ssh-add 하고 비밀 번 호 를 입력 해 야 한다.오 랜 시간 이 지나 면 이것 도 매우 번거롭다.
한 번 의 실패 최적화
매번 14 글자 에 달 하 는 비밀 번 호 를 입력 하 는 번 뇌 를 줄 이기 위해 나 는 expect(1) 다른 명령 을 상호작용 적 으로 제어 할 수 있 는 스 크 립 트 언어 라 고 생각 했다.안 타 깝 게 도 고생 끝 에 expect 에 비밀 번 호 를 입력 하 게 하 는 데 성공 하지 못 해 다른 방법 을 계속 찾 을 수 밖 에 없 었 다.
일차 성공 의 최적화
어느 날 ssh-addssh-add 문 서 를 읽 으 면서 원래 man 에 신분 을 추가 ssh-add 할 때 비밀 번 호 를 사용자 의 키 체인 에 저장 할 수 있 는 -K 옵션 이 있다 는 것 을 알 게 되 었 다.키 체인 에서 온 비밀 번 호 를 사용 할 수 있 는 ssh-agent 옵션 도 있 습 니 다. 다시 입력 하지 않 아 도 된다 는 뜻 입 니 다!
그럼 앞으로 해 야 할 일 은 이미 잘 알 고 있 습 니 다.밴드 -A 옵션 을 수 동 으로 실행 하 는 ssh-add
ssh-add -K ~/.ssh/id_rsa

비밀 번 호 를 입력 하 십시오. 이것 은 Mac 에서 마지막 으로 입력 할 것 입 니 다.재 활용 -K 옵션 호출 ssh-add
#!/bin/bash

ssh-add -A ~/.ssh/id_rsa

나 는 위의 이 코드 를 파일 -A 로 저장 하면 곧 사 용 될 것 이다.마지막 으로 Launchd 프로필 쓰기 ssh-add



        
                Label
                com.liutos.tools.sshAdd
                Program
                /Users/liutos/SourceCode/shell/auto_ssh_add/auto_ssh_add.sh
                RunAtLoad
                
                StandardOutPath
                /tmp/auto_ssh_add.log
                StandardErrorPath
                /tmp/auto_ssh_add.err
        

이제 ssh 비밀 번 호 를 한 번 또 한 번 입력 할 필요 가 없습니다. 한 번 도 필요 없습니다.
후기
만약 에 어떤 독자 친구 가 성공 적 으로 /Users/liutos/SourceCode/shell/auto_ssh_add/auto_ssh_add.sh 으로 비밀 번 호 를 자동 으로 입력 하 는 것 을 실현 한다 면 아 낌 없 는 가르침 을 바 랍 니 다.)
원문 을 읽다

좋은 웹페이지 즐겨찾기