连接服务器

首先需要在Termux上安装openssh

1
pkg install openssh

安装完成后,在服务器控制台中找到服务器的IP地址,以127.0.0.1为例,在termux中键入

1
ssh root@127.0.0.1

  其中root是用户名,127.0.0.1是服务器IP地址。到时候直接替换就行了,然后根据提示输入密码就可以了

设置免密登录

  通过设置服务器以公钥方式进行身份验证,我们可以简化登录流程,实现免密码登录。
所以Termux输入

1
ssh-keygen -t rsa

  遇到任何选项都回车,生成的密钥文件会保存在termux的home目录下的.ssh文件夹中(这个文件夹不可以对group组开放权限),使用cd命令进入该文件夹 [label color=”pink”]/data/data/com.termux/files/home/.ssh[/label]

  之后使用vi或者vim打开id_rsa.pub(或者使用cp将id_rsa.pub文件拷贝到其他可读文件夹用txt格式打开),将里面的内容全部复制。

  登录服务器,进入用户目录(如果是root就进入/root),之后cd进入.ssh目录,ls后找到其中的authorized_keys文件,使用vim打开,然后把复制的内容全部粘贴进去,保存退出(不懂使用vim的可以点我了解vim基础使用)。

再次使用ssh root@127.0.0.1登录服务器就不需要密码了。

设备互联

条件:两台设备都在同一局域网下

输入命令查看局域网

1
ifconfig

然后换到要被连接的手机上操作,使用下面命令打开Termux的ssh连接。其中的-p 1234指定了ssh连接的端口,这个可以根据需求选,不添加改参数则将默认使用8022端口:

1
sshd -p 1234

之后使用下面命令为被连接设备创建一个密码。根据提示键入两次密码即可:

1
passwd

之后,在另一台设备上使用:

1
ssh -p 端口(默认8022) user@ip地址

  根据提示键入密码即可连接。

  同样的,我们可以在被连接设备上设置ssh公钥实现免密连接。

  在被连接设备上使用vim打开并编辑位于~/.ssh/authorized_keys文件,将之前获取到的id_rsa.pub中的内容粘贴进去保存即可。注意authorized_keys文件权限必须是600。

  上述操作也可以实现其他设备连接手机上的Termux终端。

SSH的简单配置文件

  如果没有zsh或者其他的命令行插件,每次重新复制粘贴或者找ip,找密码确实是个麻烦的事。我们可以通过配置ssh文件来实现快捷登录。

  首先,在用户的.ssh文件夹下新建一个名称为config的文件,注意不需要扩展名。Termux的.ssh文件夹一般在~/.ssh。

在config文件里的配置可以这样写:

1
2
3
4
Host 任何你想要的缩写类型,如ut,rt
Hostname 指定连接的ip地址
user 指定连接的用户名
port 指定连接的端口

之后就可以通过缩写快捷ssh登录(搭配ssh密钥使用更佳):

1
ssh ut