내 안드로이드 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 ~