Android에서 원격 서버에 연결할 수 있도록 SSH 키를 어디에 추가해야합니까?


10

루팅 된 맞춤 Android 커널 (Gingerbread)을 사용하고 있으며 busybox 및 터미널 에뮬레이터 앱을 사용하여 비밀번호 인증을 사용하여 원격 SSH 서버에 연결할 수 있습니다. 자동 로그인에 SSH 키를 사용할 수 있기를 원합니다. 이것이 가능한가? 그렇다면 개인 키를 어디에 두어야합니까?

답변:


10

완벽하지는 않지만 sshbusybox (최소한도)가 제공 하는 바이너리는 -i플래그를 지원 하므로 원하는 위치에 키를 넣고 사용할 수 있습니다.

ssh -i /path/to/key_file joeuser@somehost.com

관련 맨 페이지 항목 -i(기본 경로에 대한 정보가 Android에서 동일하지 않을 수 있다는 경고) :

-i identity_file

         Selects a file from which the identity (private key) for public
         key authentication is read.  The default is ~/.ssh/identity for
         protocol version 1, and ~/.ssh/id_dsa, ~/.ssh/id_ecdsa and
         ~/.ssh/id_rsa for protocol version 2.  Identity files may also be
         specified on a per-host basis in the configuration file.  It is
         possible to have multiple -i options (and multiple identities
         specified in configuration files).  ssh will also try to load
         certificate information from the filename obtained by appending
         -cert.pub to identity filenames.

고마워, 나는 그것을 생각했지만 그것을 시도하지 않았다. ssh 명령이 .ssh 디렉토리를 찾을 장소가 없다는 것이 이상하게 보입니다. 아마도 $ HOME 세트가 없기 때문일까요?
yuttadhammo

2
@Yuttadhammo : 이상한 것은 $HOME(루트 용)이 /data내 전화 ssh에 설정되어 있지만 거기에 설정하려고하는 디렉토리를 무시하는 것 같습니다. 나는 그것이 왜 그런지 실제로 알지 못했지만 실제로 그것을 파헤칠 필요도 없었습니다.
eldarerathis

@Yuttadhammo 내 전화에서 echo $HOME아무 것도 반환하지 않습니다 (루트에서도). 귀하의 경우에도 SSH 클라이언트가 기본적으로 키를 볼 수없는 이유입니다. 그러나 -i플래그를 사용하면 기본 경로를 무시할 수 있으므로 $ HOME을 찾을 필요가 없습니다. 잘린 SSH 클라이언트가 지원하는 경우 이것이 올바른 솔루션입니다. 따라서 sdcard에 키를 넣은 후에 사용해보십시오. 실패하면 SSH 클라이언트를 변경하지 않으면 다른 방법이 없습니다.
안드로이드 Quesito

큰. 나를 위해 일했다.
user20203293928832

6

ConnectBot (전용 SSH 클라이언트)를 설치하고 실행하십시오 . 메뉴 키를 탭하거나 누릅니다. 메뉴에서을 누릅니다 Manage Pubkeys. 다음 화면에서 다시 메뉴 키를 누르거나 누릅니다. 메뉴에서을 누릅니다 Import.


고맙습니다. 실제로 방금 했어요 – 멋진 앱; 단순히 열쇠를 어딘가에 놓고 busybox가 그것을 집어들 수있는 방법이 있습니까?
yuttadhammo

@Yuttadhammo Busybox의 기본 패키징이 SSH 클라이언트를 제공하지 않는다고 생각합니다. SSH 클라이언트 (외부 유틸리티 일 수 있음)에 대해보다 구체적으로 설명 할 수 있습니까?
Android Quesito

또한 busybox 애플릿이 원래 버전의 애플릿을 다듬 었으므로 명령 행 SSH 클라이언트는 키 인증을 지원하지 않을 수 있지만 그럴 가능성은 거의 없습니다. SSH 클라이언트에 대해 알려주십시오.
Android Quesito

고맙게도 ConnectBot은 내가 사용할 솔루션이지만 -i 플래그는 실제로 질문에 대답하는 데 더 가깝습니다.
yuttadhammo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.