특정 포트에 자동으로 로그인하는 SSH 스크립트

특정 포트에 자동으로 로그인하는 SSH 스크립트

현재 SSH를 통해 연결하는 "기존" 방법은 다음 중 하나입니다.

ssh USERNAME@HOST -p PORT

모든 적절한 정보(사용자 이름, 비밀번호, 호스트, 포트)가 포함된 스크립트를 만들고 이를 실행하면 호스트 쉘에 자동으로 연결됩니다.

나는 당신이 어떤 언어를 사용할지는 상관하지 않습니다(예: Python, Perl...). Expect를 사용하여 생성해 보았으나 불행히도 작동하지 않았습니다.

답변1

자동 로그인의 경우 실행 가능한 접근 방식은 키 기반 인증을 사용하는 것입니다.

좋은 튜토리얼여기

그런 다음 기본 키( 에 있는 키)를 사용 하거나 ssh에 매개변수를 전달하는 ~/.ssh/id_rsa다른 키를 사용할 수 있습니다.-i MyKeyFile

답변2

사용sshpass

$ sudo apt-get install sshpass

스크립트 만들기

#!/bin/bash

user="user"
psswd="password"
port="22"
host="domain.com"

sshpass -p $psswd ssh $user@$host -p $port

구현하다

$ bash connect_script.bash
Welcome to Ubuntu ..... LTS (.......)

* Documentation:  https://help.ubuntu.com/
New release '14.04.1 LTS' available.
Run 'do-release-upgrade' to upgrade to it.

You have new mail.
Last login: Thu Jan 21 11:39:35 2016 from x.x.x.x
user@host:~$ 

관련 정보