Jaeseo's Information Security Story

Termux를 이용한 컴퓨터에서 핸드폰 SSH 원격 접속 본문

Coding and Linux Study/Linux

Termux를 이용한 컴퓨터에서 핸드폰 SSH 원격 접속

Jaeseokim 2019. 11. 25. 18:45

Termux를 이용한 컴퓨터에서 핸드폰 SSH 원격 접속

termux 사용법에 대한 조회수가 잘 나오는 것 같아 termux가지고 무엇을 할 수 있을까 고민을 하다 핸드폰을 linux 원격 서버로 사용하는 건 어떨까 라는 생각이 들어 글을 작성하게 되었습니다.

일단 TermuxGoogle Play Store 에서 설치를 한 다음 아래의 명령어를 실행합니다.

$pkg update
$pkg upgrade

그 다음 이제 ssh서버를 열기위한 openssh를 설치 합니다.

$pkg install openssh

설치가 완료가 되면 sshd 서버를 구동 합니다. (termux에서는 기본 ssh port가 8022로 설정되어 있습니다.)

$sshd

이제 SSH 원격접속을 위해 ifconfig를 사용합니다.

$ ifconfig
dummy0: flags=195<UP,BROADCAST,RUNNING,NOARP>  mtu 1500
        inet6 ******************  prefixlen 64  scopeid 0x20<link>
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 1000  (UNSPEC)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2768  bytes 442914 (432.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 1  (UNSPEC)
        RX packets 170823  bytes 1039896338 (991.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 170823  bytes 1039896338 (991.7 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

p2p0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 3000  (UNSPEC)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

rmnet_data1: flags=65<UP,RUNNING>  mtu 1400
        inet6 ******************  prefixlen 64  scopeid 0x0<global>
        inet6 ******************  prefixlen 64  scopeid 0x20<link>
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 1000  (UNSPEC)
        RX packets 1903784  bytes 2483044552 (2.3 GiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 962439  bytes 100938382 (96.2 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

rmnet_ipa0: flags=65<UP,RUNNING>  mtu 2000
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 1000  (UNSPEC)
        RX packets 836399  bytes 3286046805 (3.0 GiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1254337  bytes 137040881 (130.6 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.30.1.49  netmask 255.255.255.0  broadcast 172.30.1.255
        inet6 ***************  prefixlen 64  scopeid 0x20<link>
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 3000  (UNSPEC)
        RX packets 1141414  bytes 1485486029 (1.3 GiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 904386  bytes 146798359 (139.9 MiB)
        TX errors 0  dropped 2 overruns 0  carrier 0  collisions 0

$

일단 여기서 현재 접속한 와이파이에 해당하는 wlan0의 ipv4의 ip를 봅니다. 172.30.1.49라는 것을 확인할 수 있는데 이것을 가지고 접속을 합니다.

만약 서버를 종료하고 싶다면 pkill sshd를 사용하면 됩니다.

여기서 접속할때 사용할 수 있는 방법이 2가지가 있는데 두가지 방법 전부 알려드리겠습니다.


id,passwd를 이용한 ssh 접속

일단 whoami명령어를 통해 현재 사용중인 id를 확인 합니다. 그리고 passwd를 통해 password를 설정 합니다.

$ whoami
u0_a395
$ passwd
New password:
Retype new password:
New password was successfully set.

그리고 이제 ssh 접근을 시도합니다. MobaXTerm를 사용했습니다.

위와 같이 id와 서버 ip 그리고 port는 8022로 사용합니다.

그리고 전에 설정한 passwd를 입력해주면 아래와 같이 연결이 된것을 볼 수 있습니다.


ssh 공개키를 이용한 접속 방법

ssh-keygen를 이용하여 키를 발급합니다.

$ ssh-keygen -t rsa -b 2048 -f id_rsa
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in id_rsa.
Your public key has been saved in id_rsa.pub.
The key fingerprint is:
SHA256:??????????????????
The key's randomart image is:
+---[RSA 2048]----+
???????????????????
+----[SHA256]-----+

이제 아래의 경로에 있는 파일을 복사하여 host PC로 복사해줍니다.

/data/data/com.termux/files/usr/etc/ssh/id_rsa.pub

이제 PC로 돌아와 ip, id, port 번호를 입력후 Use public key옵션을 체크하여 복사한 공개키를 선택 합니다.

이제부터는 접속 핸드폰에 ssh로 원격 접속후 사용하시면 됩니다.


이제 MobaXTerm를 이용해서 파일 관리 linux에서 필요한 작업을 하시면 됩니다.

$cd /storage/emulated/0

위의 명령어를 통해 휴대폰 저장소로 이동하여 작업도 가능합니다.

또한 파일을 직접 다운 받거나 열어보는 작업도 가능합니다.

Comments