Android终端Termux

文章目录
  1. 1. termux简介
  2. 2. 安装termux
  3. 3. 安装ssh
  4. 4. 配置远程连接
  5. 5. windows端远程连接
  6. 6. 书签

termux简介

termux是个非常强大的终端模拟器,能够在android上模拟linux终端。
接下来,小编就在自己的Honor9上尝试一下termux。

安装termux

1、安装google play
2、google play中搜索“termux”
3、下载安装termux

安装ssh

运维从访问远程服务器开始,这怎么离得开ssh命令。Termux不自带ssh命令,需先安装才能使用。

1、安装openssh
apt install openssh

安装的openssh包括客户端ssh和服务端sshd,也就是说我们既可以使用ssh访问远程设备,也可以在本机上开启ssh服务以方便其他设备远程访问本机。默认情况下,安装openssh不开启服务端。

2、开启sshd服务端
正常启动:sshd
调试模式启动:sshd -d

3、关闭sshd服务端
pkill sshd或者killall sshd

4、使用ssh
termux终端中使用ssh访问远程服务器,与linux终端中使用ssh别无二致。
但要使用ssh访问android设备就不同了,termux终端中sshd服务不支持密码验证,也就是说用户不能期望通过ssh user@server然后输入用户密码的方式从别的终端访问android设备。Termux终端中sshd只支持密钥验证。

5、保持sshd运行
下拉手机顶部状态栏,看到termux,点击“ACQUIRE WAKELOCK”,即可看到1 session(wake lock help)。此时,termux就可以保持后台运行,sshd也不会关闭。

配置远程连接

假设我们有一台linux服务器,ip是192.168.1.25;termux终端的ip地址为192.168.1.58。

1、在termux中生成ssh-key
ssh-keygen

命令完成后,在~/.ssh目录中就生成了id_rsa.pub和id_rsa两个文件。

2、创建authorized_keys
touch ~/.ssh/authorized_keys

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

3、更改权限
chmod 700 ~/.ssh,切记,是700而不是777。

chmod 600 ~/.ssh/authorized_keys

4、termux测试连接
ssh localhost -p 8022,或者 ssh localhost -p 8022 -i ~/.ssh/id_rsa

小编在这里出现错误提示:

1
Permission denied (publickey,keyboard-interactive).

5、termux拷贝密钥到linux,命名为id_rsa_honor
scp ~/.ssh/id_rsa root@192.168.1.25:~/.ssh/id_rsa_honor

6、linux端测试连接
ssh 192.168.1.58 -p 8022 -i ~/.ssh/id_rsa_honor

同样出现错误提示:

1
Permission denied (publickey,keyboard-interactive).

如果第4步和第6步出现错误,那么,关闭ssh服务端后,以调试模式启动。

1
2
killall sshd
sshd -d

然后,在linux端输入ssh 192.168.1.58 -p 8022 -i ~/.ssh/id_rsa_honor

这时就能在termux控制台看到错误的提示信息。小编的错误在于给了.ssh文件夹777权限,修改成700,问题解决。

windows端远程连接

使用xftp登录linux,拷贝id_rsa_honor到windows的~/.ssh文件夹中,比如C:\Users\voidking\.ssh

连接方式一:
右键打开git命令窗口,ssh 192.168.1.58 -p 8022 -i ~/.ssh/id_rsa_honor,连接成功。

连接方式二:
使用xshell,新建连接,主机填入192.168.1.58,端口填入8022。
用户身份验证中,方法选择Public Key,用户密钥浏览导入id_rsa_honor,其他不填。

点击连接后,提示输入登录的用户名,不用填写,直接确定,连接成功。

书签

神器Termux的使用日常

debian ssh 连接android 通过termux

Termux命令行神器初体验

Termux 設定 SSH Server

Run an SSH server on your Android with Termux

The Termux Wiki

Touch Keyboard