Termux安装ssh和设置sshd自启

最近手机重置了,Termux 也得重新装,所有配置都得从头弄。说实话,在 Termux 客户端里用微信输入法敲命令确实别扭,我还是习惯用 JuiceSSH 来连——它会调起密码键盘,输命令顺畅多了。

索性写篇文章当备忘录,主要是不想下次重装或者在其他设备上配置时,又得四处找教程。统一存在这里,到时候直接上来 copy 步骤就行


在 Termux 中安装并启用 OpenSSH 服务,可以方便地在其他设备上远程连接并进行操作。以下是详细步骤:

安装 SSH 和远程登录

1. 安装 OpenSSH

执行以下命令安装:

1
pkg install openssh -y

2. 查询用户名

获取用于 SSH 登录的用户名:

1
whoami

输出示例

1
u0_a123

3. 设置登录密码

为当前用户设置 SSH 登录密码:

1
passwd

注意: 需要输入两次密码(设置和确认),两次输入必须一致。

输出示例

1
2
3
New password: 
Retype new password:
New password was successfully set.

4. 启动 SSH 服务

1
sshd

5. 远程连接

确保远程设备与手机处于同一局域网且网络互通,在远程设备上执行:

1
ssh [你的用户名]@[手机IP地址] -p 8022

输入步骤 3 设置的密码即可成功连接。

连接成功示例

1
2
3
4
$ ssh u0_a123@192.168.1.100 -p 8022
u0_a123@192.168.1.100's password:
Welcome to Termux!
$

设置 Termux 启动时自动运行 SSH

1. 创建状态检查脚本

创建并编辑脚本文件.start_sshd.sh

1
nano ~/.start_sshd.sh

粘贴以下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/bin/bash

# 显示SSH连接信息
echo "═══════════════════════════════════════"
echo "用户: $(whoami)"
echo "SSH端口: 8022"
echo "═══════════════════════════════════════"

# 检查SSHD状态
check_sshd() {
if pgrep -x "sshd" >/dev/null; then
echo -e "🔵 sshd状态: \033[32m运行中 (PID: $(pgrep -x "sshd"))\033[0m"
return 0
else
echo -e "🟡 sshd状态: \033[33m未运行\033[0m"
return 1
fi
}

# 主逻辑
if ! check_sshd; then
echo -n "▶ 尝试启动sshd..."
if sshd >/dev/null 2>&1; then
sleep 1 # 等待进程启动
if check_sshd; then
echo -e "\033[32m 成功\033[0m"
else
echo -e "\033[31m 失败 (可能端口冲突或权限问题)\033[0m"
fi
else
echo -e "\033[31m 启动命令执行失败\033[0m"
fi
fi

保存退出 (Ctrl+O回车Ctrl+X),并赋予执行权限:

1
chmod +x ~/.start_sshd.sh

2. 配置开机自启

编辑 Termux 的启动配置文件:

1
nano ~/.bashrc

在文件末尾添加:

1
2
# 启动时自动检查/运行SSHD
~/.start_sshd.sh

保存退出,并赋予执行权限:

1
chmod +x ~/.bashrc

3. 验证效果

重启 Termux 应用后,系统将自动执行脚本,检查并启动 SSH 服务。

启动后输出示例

1
2
3
4
5
6
7
═══════════════════════════════════════
用户: u0_a123
SSH端口: 8022
═══════════════════════════════════════
🟡 sshd状态: 未运行
▶ 尝试启动sshd... 成功
🔵 sshd状态: 运行中 (PID: 12345)

当SSH已运行时输出示例

1
2
3
4
5
═══════════════════════════════════════
用户: u0_a123
SSH端口: 8022
═══════════════════════════════════════
🔵 sshd状态: 运行中 (PID: 12345)


Termux安装ssh和设置sshd自启
https://blog.qfmy.vip/termux-sshd-auto-start-guide/
作者
Harrison
发布于
2025年6月21日
许可协议