通过ssh登录到手机 Termux

测试环境

电脑: macOS Mojave

手机: Huawei Mate10Pro

Termux是Android上的一个非常强大的终端模拟器。

强大之处在于支持使用apt安装zsh、git、vim、python、ruby、nodejs、openssh、gcc、golang等几乎所有常用的终端软件.

Termux官网:https://termux.com/

安装openssh

安装好Termux后,点击图标进入,依次输入以下命令。

申请读写权限,要不然有时手机会找不到生成的文件

termux-setup-storage

$ ls
storage
$ cd storage/
$ ls
# 这些会链接到手机的相应目录
dcim downloads movies music pictures shared

安装openssh

apt update
apt install openssh

启动sshd服务

sshd

手机端已经安装好后openssh,并已启动服务。

配置登录密钥

  1. 电脑生成过密钥

    ssh-keygen

    然后进入电脑.ssh目录,将id_rsa.pub文件拷贝到手机的storage/shared目录下。

  2. 添加公钥信息

    确保id_rsa.pub存在于storage/shared/目录下,进入手机Termux。依次输入以下命令。

cd 

cp storage/shared/id_rsa.pub ./.ssh

cat id_rsa.pub >> authorized_keys

至此,已添加公钥信息到手机。

手机查看当前用户名

whoami

手机查看当前ip

ifconfig -a

电脑ssh到手机

假设手机使用whoami查看的用户名是u0_a258,手机的ip地址是192.168.1.9

则电脑ssh到手机

ssh u0_a258@192.168.31.9 -p 8022

mac-abeen:~ abeen$ ssh u0_a258@192.168.31.9
ssh: connect to host 192.168.31.9 port 22: Connection refused
mac-abeen:~ abeen$ ssh u0_a258@192.168.31.9 -p 8022
The authenticity of host '[192.168.31.9]:8022 ([192.168.31.9]:8022)' can't be established.
ECDSA key fingerprint is SHA256:odVWNFTp19bl1BJ0LBwKhuBnSVkFNar0ZKWh1gZ4pJ4.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.31.9]:8022' (ECDSA) to the list of known hosts.
Welcome to Termux! Wiki: https://wiki.termux.com
Community forum: https://termux.com/community
IRC channel: #termux on freenode
Gitter chat: https://gitter.im/termux/termux
Mailing list: termux+subscribe@groups.io Search packages: pkg search <query>
Install a package: pkg install <package>
Upgrade packages: pkg upgrade
Learn more: pkg help
$ ls
abeen.txt storage

接下来自由发挥...

通过 ssh 登录到手机 Termux的更多相关文章

  1. 通过ssh登录到手机 Termux

    安装Termux Termux官网:https://termux.com/ 安装openssh 安装好Termux后,点击图标进入,依次输入以下命令. 申请读写权限 termux-setup-stor ...

  2. 阿里云ECS重置磁盘到SSH登录

    1.登录阿里云(www.aliyun.com) -- > 控制台: 2.点击左边的"云服务器ECS": 3.点击上面"第二步",进入页面之后,点击&quo ...

  3. 【Linux】使用Google Authenticator 实现ssh登录双因素认证

    一般来说,使用ssh远程登录服务器,只需要输入账号和密码,显然这种方式不是很安全.为了安全着想,可以使用GoogleAuthenticator(谷歌身份验证器),以便在账号和密码之间再增加一个验证码, ...

  4. 不同路由器下远程ssh登录Beaglebone系统(通过路由器端口转发,配合花生壳的DDNS功能)

    使用场景: 一般家庭设备都是通过路由器中转连上互联网的,而且运营商给家庭宽带分配的IP地址也是动态的.随时可能变动的.所以当程序员们离开家之后,是很难直接和家里的设备进行交互的.但是通过TPLINK路 ...

  5. SSH登录启用Google二次身份验证

    一般来说,使用ssh远程登录服务器,只需要输入账号和密码,显然这种方式不是很安全.为了安全着想,可以使用GoogleAuthenticator(谷歌身份验证器),以便在账号和密码之间再增加一个验证码, ...

  6. Linux下部署SSH登录时的二次身份验证环境记录(利用Google Authenticator)

    一般来说,使用ssh远程登录服务器,只需要输入账号和密码,显然这种方式不是很安全.为了安全着想,可以使用GoogleAuthenticator(谷歌身份验证器),以便在账号和密码之间再增加一个验证码, ...

  7. 为Linux服务器的SSH登录启用Google两步验证

    对于Linux服务器而言使用密钥登录要比使用密码登录安全的多,毕竟当前网上存在多个脚本到处进行爆破. 这类脚本都是通过扫描IP端的开放端口并使用常见的密码进行登录尝试,因此修改端口号也是非常有必要的. ...

  8. ssh登录二次验证,让服务器更安全。

    码云地址 sshdTwoVerification 介绍 ssh登录二次验证 问题:现在很多人的Linux服务器可能会被攻击,只校验一次后台用户名密码登录变得不再保险. 当然大家首先要做的是修改ssh服 ...

  9. Linux下使用Google Authenticator配置SSH登录动态验证码

    1.一般ssh登录服务器,只需要输入账号和密码.2.本教程的目的:在账号和密码之间再增加一个验证码,只有输入正确的验证码之后,再输入密码才能登录.这样就增强了ssh登录的安全性.3.账号.验证码.密码 ...

随机推荐

  1. 利用vw+rem实现移动web适配布局

    基本概念 1.单位 Px(CSS pixels) 像素 (px) 是一种绝对单位(absolute units), 因为无论其他相关的设置怎么变化,像素指定的值是不会变化的 其实是相对于某个设备而言的 ...

  2. 域名解析A记录与CNAME有什么区别?

    A记录是直接将域名指向某个IP,如果您的主机IP不常变动就建议使用A记录.而别名解析是先将域名解析到主机别名再转跳到IP这样主机IP改变了不用重新解析.如果主机IP常变建议用别名解析 A记录正规些.独 ...

  3. GUC-13 生产者消费者案例

    import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.Lock; import java.uti ...

  4. 1391: [Ceoi2008]order

    有N个工作,M种机器,每种机器你可以租或者买过来. 每个工作包括若干道工序,每道工序需要某种机器来完成,你可以通过购买或租用机器来完成. 现在给出这些参数,求最大利润 Input 第一行给出 N,M( ...

  5. D - Round Subset codeforces837d

    D - Round Subset 思路:背包: 代码: #include <cstdio> #include <cstring> #include <iostream&g ...

  6. Ajax的text/plain、application/x-www-form-urlencoded和application/json

    Ajax的text/plain.application/x-www-form-urlencoded和application/json HTTP请求中,如果是get请求,那么表单参数以name=valu ...

  7. LoadRunner FAQ2

    LR中参数的定义和赋值 1.参数的赋值和取值 lr_save_string("hello world","param"); lr_eval_string(&qu ...

  8. ifdown eth0或service network restart

    错误提示信息如下: Shutting down interface eth0:  Error: Device 'eth0' (/org/freedesktop/NetworkManager/Devic ...

  9. 46:求1+2+...+n

    /** * 面试题46:求1+2+...+n * 求1+2+3+...+n,要求不能使用乘除法.for.while.if.else.switch.case等关键字及条件判断语句(A?B:C). */ ...

  10. R语言实战(七)图形进阶

    本文对应<R语言实战>第11章:中级绘图:第16章:高级图形进阶 基础图形一章,侧重展示单类别型或连续型变量的分布情况:中级绘图一章,侧重展示双变量间关系(二元关系)和多变量间关系(多元关 ...