debian ssh 连接android 通过termux

Introducation

termux是个非常强大的终端模拟器。
官方网站
酷安网下载地址

高级终端Termux组合了强大的终端模拟和拓展Linux包收集支持。

  • 享受bash 和 zsh。
  • 使用nano 和 vim编辑文件。
  • 通过ssh访问服务器。
  • 使用gcc和clang编译代码。
  • 使用python控制台来作为口袋计算器。
  • 使用git 和 subversion检查项目。
  • 使用frotz运行基于文本的游戏。

使用openssh从桌面连接安卓

由于termux甚至支持apt命令,所以从他建立。
官方英文ssh连接说明比较简陋,这里详细描述一下。

安装termux

安装完成后,第一次打开会需要下载一些包库。
下载安装包库完成进入后,先跟普通的debian一样,注意是apt,手机上执行:

apt update

再安装openssh

apt install openssh

会自动生成keygen。并给出路径地址。

设置keygen

生成key

在电脑上运行

ssh-keygen -t rsa

交互式地生成一个key,默认保存在~/.ssh/下,两个文件id_rsaid_rsa.pub,pub是公钥,另一个是私钥。ssh登录的原理不再赘述,自行谷歌。

连接adb

通过各种方式(直接usb或者通过网络adb)adb连接到手机上,将公钥adb push到手机上

adb push ~/.ssh/id_rsa.pub /data/data/com.termux/files/home/.ssh/id_rsa.pub

设置授权key

通过adb shell进入手机,cd到data/data/com.termux/files/home/.ssh/,将公钥内容添加到ssh的授权文件里

cat ./id_rsa.pub >> authorized_keys

注意权限问题

在手机上执行

whoami

得到用户名,比如得到的是u0_a97
要求.ssh文件夹的权限是700(即rwx------),且用户都是termux的用户才可以。
在电脑上执行:
home文件夹下执行ll -a,输出类似:

root@libra:/data/data/com.termux/files/home # ll -a
-rw------- u0_a97   u0_a97        635 2016-03-06 11:20 .bash_history
drwx------ u0_a97   u0_a97            2016-03-06 12:20 .ssh

如果.ssh文件夹不是如图权限,则

chmod 700 .ssh

所属用户和组修改:

chown u0_a97:u0_a97 .ssh

同样查看authorized_keys文件权限是否是600(即rw-------)和其owner即所属组。不是的话按上述方法修改。
此时我们的授权已经做好了

ssh连接

在手机上的termux里输入sshd开启ssh服务器,
在电脑上

ssh u0_a97@192.168.1.100 -p 8022

ip地址是手机的ip,端口默认是8022,可以通过sshd -p 9000来指定ssh服务器的端口。如果普通登录ssh一样,第一次连接会问你是否继续,输入yes继续,看到$符,ok,登录成功。
这里用户是普通用户,root用户如何ssh我还不清楚,但是由于我给小米刷了cm,cm官方wiki里有个说明,然而我没有配置成功
cm官方wiki说明ssh登录

修改源

由于是termux自己建的一个模拟用户,有homeusr两个主要的文件,默认系统的文件都在usr下,如源等。默认linux的源是/etc/apt/sources.list,则此时就变成了/data/data/com.termux/files/usr/etc/apt/sources.list
清华有termux的源,可将源内容改成如下:

# The main termux repository:
deb [arch=all,arm] http://mirrors.tuna.tsinghua.edu.cn/termux/ stable main

通过apt update就可以更新源啦。

手机电脑不处于同一个局域网

手机必然至少连接路由器,在路由器里设置端口转发即可。

tips

其实也有一些独立的ssh应用,但是termux不只是包括ssh,这里只是简单记录自己使用termux的一些经验。

路漫漫其修远兮,吾将上下而求索

文章若未注明转载皆为原创,如需转载请注明出处FindHao博客及文章链接,文章markdown格式源码现已开放,欢迎转载。文章源码地址:

分享到:

You may like..(由于采用了谷歌的推荐系统,需要对本站关闭广告过滤~)

Find

新浪微博(FindSpace博客)QQ群:不安分的Coder(375670127) 不安分的Coder

9 条回复

  1. Spe11说道:

    博主您好, 我现在想安装一个 guile 解释器, 但貌似 https://github.com/termux/termux-packages/tree/master/disabled-packages 在这里是默认关闭的, 并且 build.sh 里没有编译脚本, 请问该如何强制开启这里的源并编译?

  2. 王小明说道:

    windows ssh怎么连接termux呢?

  3. L-Lawliet说道:

    小米怎么装不了啊

  4. 习近平说道:

    建议写一篇如何用termux来装逼的教程

  5. 王岐山说道:

  6. 王尼玛说道:

    还是不太懂,,,不太会用这些

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*