电脑通过ssh连接android手机上的termux
termux是非常强大的终端模拟器,这里不再做过多介绍。
注:手机和电脑在同一局域网下
1. 安装termux
安装完成后,第一次打开会需要下载一些包库。
下载安装包库完成进入后,先跟普通的debian一样,注意是apt,手机上执行
1 |
apt update |
再安装openssh
1 |
apt install openssh |
2. 设置keygen
生成key
在电脑上运行
1 |
ssh-keygen -t rsa |
交互式地生成一个key,默认保存在~/.ssh/下,两个文件id_rsa和id_rsa.pub,pub是公钥,另一个是私钥。ssh登录的原理不再赘述,自行google。
3. 发送id_rsa
通过各种方式将id_rsa(直接usb或者通过网络adb)发送到手机上
目的位置: /data/data/com.termux/files/home/.ssh/id_rsa.pub
4. 设置授权key
cd到data/data/com.termux/files/home/.ssh/,将公钥内容添加到ssh的授权文件里
1 |
cat ./id_rsa.pub >> authorized_keys |
5. 注意权限问题
在手机上执行
1 |
whoami |
得到用户名,比如得到的是u0_a256。
要求.ssh文件夹的权限是700(即rwx——),且用户都是termux的用户才可以。
在home文件夹下执行ls -al,输出类似:
如果.ssh文件夹不是
1 |
drwx------ u0_a256 u0256 .ssh |
如图权限,则
1 |
chmod 700 .ssh |
所属用户和组修改:
1 |
chown u0_a256:u0_a256 .ssh |
同样查看authorized_keys文件权限是否是700(即rwx——)和其owner即所属组。不是的话按上述方法修改。
此时我们的授权已经做好了
ssh连接
在手机上的termux里输入sshd开启ssh服务器,
在电脑上
ssh u0_a256@192.168.123.81 -p 8022
ip地址是手机的ip,端口默认是8022,可以通过sshd -p 9000来指定ssh服务器的端口。如果普通登录ssh一样,第一次连接会问你是否继续,输入yes继续,看到$符,ok,登录成功。
作者:浅斟低唱qingfeng
链接:https://www.jianshu.com/p/2e6c8152a2ba
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
微信赞赏支付宝赞赏