Shaw0xyz 发表于 2024-5-23 13:58:12

公网使用SSH远程连接安卓手机Termux

本帖最后由 Shaw0xyz 于 2024-5-23 14:00 编辑

1. 前言

随着移动设备的普及和功能的增强,使用安卓手机进行远程开发和服务器管理变得越来越常见。Termux是一款强大的安卓终端模拟器,它可以将安卓设备变成一个功能强大的Linux环境。本文将介绍如何通过SSH在公网远程连接安卓手机上的Termux。

2. 准备工作

2.1 安装Termux

首先,在安卓手机上安装Termux应用。可以通过Google Play或Termux官方网站下载并安装。

2.2 安装OpenSSH

打开Termux,输入以下命令安装OpenSSH:

pkg update && pkg upgrade
pkg install openssh

3. 配置Termux中的OpenSSH

3.1 设置SSH服务器

在Termux中启动SSH服务器前,需要配置SSH。使用以下命令生成SSH密钥对:

ssh-keygen -t rsa

可以一路回车,使用默认设置。接着,启动SSH服务器:


sshd


3.2 检查SSH服务器状态

确保SSH服务器已成功启动:

ps aux | grep sshd


如果看到sshd进程在运行,说明SSH服务器已经启动成功。

3.3 设置密码

为了安全起见,需要为Termux设置一个密码:

passwd

输入并确认新的密码。

4. 配置路由器和公网IP

4.1 获取手机的局域网IP地址

在Termux中输入以下命令获取手机的局域网IP地址:

ip addr show wlan0

查找inet后的IP地址,例如`192.168.1.5`。

4.2 路由器端口转发

登录到路由器管理界面,找到端口转发设置(Port Forwarding),将路由器的22端口(SSH默认端口)转发到手机的局域网IP地址和22端口。例如,将`192.168.1.5:22`转发到路由器的外部IP的22端口。

4.3 获取公网IP地址

在浏览器中访问(https://www.whatismyip.com)或类似网站,获取你的公网IP地址。例如,`203.0.113.1`。

5. 使用SSH连接Termux

5.1 安装SSH客户端

在你的电脑上安装SSH客户端。如果使用Linux或macOS,可以直接使用终端中的`ssh`命令;如果使用Windows,可以安装PuTTY或使用Windows 10内置的OpenSSH。

5.2 连接到Termux

打开终端或PuTTY,使用以下命令连接到Termux:

ssh <a href="mailto:username@203.0.113.1">username@203.0.113.1</a>

其中,`username`是Termux中设置的用户名,`203.0.113.1`是你的公网IP地址。输入在Termux中设置的密码即可连接。

6. 安全建议

6.1 使用非默认端口

为了提高安全性,可以在Termux中配置SSH使用非默认端口。编辑`sshd_config`文件:

nano $PREFIX/etc/ssh/sshd_config

找到`#Port 22`,取消注释并更改为其他端口号,例如`Port 2222`。保存并退出后,重新启动SSH服务器:


pkill sshd
sshd


在路由器端口转发设置中相应更改端口。

6.2 使用密钥认证

密钥认证比密码认证更安全。首先,在电脑上生成SSH密钥对:


ssh-keygen -t rsa


将公钥复制到Termux:


ssh-copy-id <a href="mailto:username@203.0.113.1">username@203.0.113.1</a>


编辑Termux中的`sshd_config`文件,确保启用密钥认证:


nano $PREFIX/etc/ssh/sshd_config

确保以下行未被注释:


PubkeyAuthentication yes

保存并重启SSH服务器。

7. 结论

通过本文的步骤,你可以在公网使用SSH远程连接安卓手机上的Termux,享受随时随地进行远程开发和服务器管理的便利。为了确保连接的安全性,建议使用非默认端口和密钥认证。

页: [1]
查看完整版本: 公网使用SSH远程连接安卓手机Termux