
내 안드로이드 4.4.2(오래되었지만 업그레이드할 수 없음) 휴대폰은 SimpleSSHD 앱을 통해 SSH 서버를 실행합니다. 로그인할 때마다 다른 임의의 비밀번호가 생성되므로 클라이언트 사용자로서 매우 불편합니다. 그래서 공개키 인증을 사용하고 싶습니다.
이전에는 SSH 서버에 액세스하기 위해 공개 키와 개인 키 쌍을 생성했습니다. 키 쌍을 재사용해도 괜찮을 것 같아서 공개 키 파일을 Android 휴대폰에 복사합니다.
$ ssh-copy-id -p 2222 192.168.1.87
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/t/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:
restorecon: invalid option -- F
usage: restorecon [-nrRv] pathname...
그 후에도 로그인하려면 서버에서 생성된 임의의 비밀번호를 입력해야 합니다.
공개키 파일을 안드로이드폰에 복사하면 작동하지 않나요?
공개 키 파일은 Android 휴대전화의 어느 디렉터리로 이동해야 합니까?
감사해요.
답변1
이것은 안드로이드의 문제가 아닙니다. 나는 키를 넣는 규칙이 ~/.ssh/authorized_keys
OpenSSH에서 나온 것이라고 생각합니다. 나는 그것이 표준(RFC)의 일부라고 생각하지 않습니다. 단순SSHD다른 규칙이 있습니다:
빠른 시작
- SimpleSSHD를 설치합니다.
Android 장치에 연결할 컴퓨터에서 포트를 2222로 설정합니다. OpenSSH를 사용하면 ~/.ssh/config에 다음 줄을 입력하여 이 작업을 수행할 수 있습니다.
Host myphone Port 2222
SimpleSSHD를 실행하고 설정에서 "부팅 시 시작"을 활성화한 다음 처음으로 수동으로 시작합니다.
authorized_keys
홈 디렉토리에 생성 ( 사용하지 않음ssh-copy-id
)- 선택적으로 .profile 만들기
이에 따르면 인증된 키 파일 ~/authorized_keys
은 ~/.ssh/authorized_keys
.
ssh-copy-id
모든 서버가 OpenSSH 서버라고 가정하는 것 같습니다. 이미 를 사용하여 공개 키를 설정했으므로 ssh-copy-id
로그인하여 다음을 실행하겠습니다.
mv ~/.ssh/authorized_keys ~