SSH 연결을 위한 Android 휴대폰의 호스트 이름을 어떻게 알 수 있나요? [폐쇄]

SSH 연결을 위한 Android 휴대폰의 호스트 이름을 어떻게 알 수 있나요? [폐쇄]

내 Android 휴대폰의 SimpleSSHD 서버에서 공개 키 인증을 설정할 때 다음을 통해http://www.galexander.org/software/simplesshd/

빠른 시작

  • SimpleSSHD를 설치합니다.
  • Android 기기에 연결하려는 컴퓨터에서 포트를 2222로 설정하세요. OpenSSH를 사용하면 ~/.ssh/config에 다음 줄을 입력하여 이 작업을 수행할 수 있습니다.

    Host myphone
    Port 2222
    
  • SimpleSSHD를 실행하고 설정에서 "시작 시 시작"을 활성화한 다음 처음으로 수동으로 실행합니다.

  • 홈 디렉토리에 생성 authorized_keys( 사용하지 않음 ssh-copy-id)
  • 선택적으로 .profile 만들기

myphone내 Android 휴대폰의 호스트 이름을 어떻게 찾나요 ?

내 전화기에 다른 IP 주소가 할당되는 경우가 있습니다. 예를 들어 랩톱과 휴대폰을 다른 LAN으로 이동할 수 있으며 휴대폰을 동일한 LAN에 다시 연결할 수 있습니다.

내 노트북에서 몇 가지 시도:

첫 번째 시도(실패):

$ ssh -p 2222 192.168.1.87
user@C6730:/data/data/org.galexander.sshd/files $ hostname
sh: hostname: not found

두 번째 시도(실패):

user@C6730:/data/data/org.galexander.sshd/files $ ^D
Connection to 192.168.1.87 closed.
t@ocean:/home/t$ ssh -p 2222 C6730
ssh: Could not resolve hostname c6730: No address associated with hostname

세 번째 시도(추측에 성공):

나는 LAN에서 모든 호스트를 찾고 sudo nmap -sP 192.168.1.0/24출력에서 ​​어떤 호스트가 전화일 가능성이 가장 높은지 추측하여 이를 수행합니다. android-c0f659b6548c28b2(실제 호스트 이름이 아님) 과 같습니다 .

  • 특정 상황에서 변경이 발생합니다 android-c0f659b6548c28b2. 예를 들어 전화기가 재부팅되거나, 다른 LAN으로 이동하거나, 다른 IP 주소가 할당되거나...?

  • 그게 무슨 뜻인지 아는 사람 있나요 c0f659b6548c28b2? 휴대폰의 Mac 주소가 아닙니다.

  • 내 Android 휴대폰의 호스트 이름을 맞춤설정할 수 있나요?

감사해요.

답변1

특정 상황에서 변경이 발생합니다 android-c0f659b6548c28b2. 예를 들어 전화기가 재부팅되거나, 다른 LAN으로 이동하거나, 다른 IP 주소가 할당되거나...?

휴대폰을 공장 초기화한 경우에만 변경됩니다(부트로더 잠금 해제의 부작용일 수도 있음).

명령줄에서는 명령을 통해 쿼리할 수 있습니다 getprop net.hostname.

아래 문자열 android-ANDROID_ID에서 Settings.Secure, 즉무작위로전화기를 처음 사용할 때 생성되어 /data파티션 [1]에 저장됩니다.

- 이전 버전에서는 /data/data/com.android.providers.settings/databases/settings.dbsqlite3 데이터베이스에 있습니다.

- 최신 버전에서는 /data/system/users/USERID/settings_secure.xml파일 에서 USERID이는 유닉스 uid와 아무 관련이 없음을 참고하세요.

심지어 최신 버전(>8.0)는 장치/사용자/응용 프로그램 서명 키 조합을 고유하게 만들고 dhcp 클라이언트가 더 이상 이를 사용하지 않을 ANDROID_ID필요성을 완전히 제거합니다 .net.hostname

c0f659b6548c28b2가 무슨 뜻인지 아는 사람 있나요? 휴대폰의 Mac 주소가 아닙니다.

무작위여야 합니다.

내 Android 휴대폰의 호스트 이름을 맞춤설정할 수 있나요?

루트 권한[2]이 없는 것은 아닙니다. 이 경우 setprop net.hostname preferred_hostname올바른 권한[3]이 있으면 문제가 해결됩니다.

[1] 공장 설정으로 복원한 후 삭제됩니다.

[2] 일부 장치에는 설정/개발자 옵션에 옵션이 있지만 내 장치에서는 해당 옵션을 찾을 수 없습니다.

[3] 최신 버전의 Android에서는 기능이 중단되고 SELinux를 광범위하게 사용하므로 단순히 루트 권한만으로는 충분하지 않을 수 있습니다.

관련 정보