본문 바로가기

리눅스

sshpass 명령어

728x90

sshpass 명령어

sshpass는 SSH 패스워드를 자동으로 제공하여 SSH 접속을 허용하는 명령어입니다. 일반적으로 스크립트나 자동화 작업에서 사용되며 SSH 패스워드를 직접 입력하지 않고 SSH 접속을 자동화할 때 유용합니다.

sshpass 설치

  • CentOS/RHEL
sudo yum install -y sshpass
  • Debian/Ubuntu
sudo apt-get install sshpass

기본 구문

sshpass -p 'PASSWORD' ssh USER@HOST
  • PASSWORD: SSH 패스워드
  • USER: SSH로 접속할 사용자 이름
  • HOST: SSH로 접속할 호스트 주소 또는 IP 주소

주요 옵션

  • sshpass의 일부 주요 옵션은 다음과 같습니다:
  • -p 'PASSWORD': SSH 패스워드를 명시적으로 지정합니다.
  • -e: 패스워드를 환경 변수 SSHPASS에서 읽어옵니다.
  • -f: 비밀번호가 포함된 파일을 사용하여 패스워드를 지정합니다.
728x90

사용 예시

1. sshpass를 사용하여 SSH 패스워드를 직접 지정

sshpass -p 'YourPassword' ssh username@hostname

 

2. sshpass를 사용하여 비밀번호가 저장된 파일을 사용

sshpass -f /path/to/passwordfile ssh username@hostname

 

3. sshpass를 사용하여 환경 변수에서 패스워드 읽기

export SSHPASS='YourPassword'
sshpass -e ssh username@hostname

4. sshpass를 사용하여 ssh 접속하기

sshpass -p'PASSWORD' ssh [email protected] -oStrictHostKeyChecking=no
$ sshpass -p'PASSWORD' ssh [email protected] -oStrictHostKeyChecking=no
user@bvm111:~$

 

sshpass를 사용하면 비밀번호를 직접 입력하지 않고 SSH 접속을 자동화할 수 있으며, 자동화 스크립트 또는 배치 작업에서 유용합니다. 단, 보안상 주의가 필요하며, 패스워드가 외부에 노출되지 않도록 적절한 보안 절차를 따르는 것이 중요합니다.

 

728x90