2019. 3. 6. 10:24
반응형

ssh root@ooo.ooo.ooo.ooo -p22 이런식의 명령어로 ssh 접속을 시도하면 비밀번호를 입력해야 한다.

저기에 비밀번호 옵션도 있어서 같이 넘겨주면 진짜 편할 것 같은 생각이 들 때가 있다.

그래서 찾아보니까 sshpass라는게 있어서 사용법을 간단히 알아봤다.

하지만 어쨌든 이럴 경우 history에 비밀번호 기록이 남기때문에 조심해야한다.


일단 설치한다.

참고로 우분투에서 테스트해봤다.


sudo apt-get install sshpass



설치한 다음 다음 명령어를 통해 한번에 서버 접속이 가능했다.

PASSWORD 부분에 루트 접속 비밀번호를 넣고 접속 포트가 필요하다면 -p22와 같이 옵션을 넣어주면 된다.

비밀번호는 그냥 -pPASSWORD로 해도 되긴하지만 비밀번호에 특수문자가 포함되면 잘 안되는 상황을 본 것 같다.

아마도 비밀번호 첫글자에 특수문자가 있었던 상황인 것 같다.

sshpass -p'PASSWORD' ssh root@ooo.ooo.ooo.ooo -pPORT -oStrictHostKeyChecking=no



마지막에 보이는 oStrictHostKeyChecking=no를 넣어줘야 처음 접속시 다음과 같은 상황에서 yes를 입력해줘야하는 상황을 피할 수 있다.


The authenticity of host '[ooo.ooo.ooo.ooo]:xxxx ([ooo.ooo.ooo.ooo]:xxxx)' can't be established.

ECDSA key fingerprint is SHA256:basdfabasdfasdfwaefsadaba//1231234d32.

Are you sure you want to continue connecting (yes/no)?

반응형