You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Android TV开机自动后台运行带端口转发的SSH连接?

Android TV上让Termux开机自动运行SSH端口转发

1. 先搞定SSH免密登录(必须步骤)

自动执行命令没法手动输入密码,所以得先配置免密登录:

  • 在Termux中生成SSH密钥对:
    ssh-keygen -t ed25519
    
    全程按回车就行,别设置密码,否则自动运行时还是会卡在输密码环节。
  • 将公钥上传到远程服务器:
    ssh-copy-id myuser@example.com
    
    这一步需要手动输入一次服务器密码,完成后后续SSH登录就无需再验证密码了。

2. 安装Termux开机自启插件

Termux本身没有开机启动权限,需要安装官方提供的termux-boot插件:

pkg install termux-boot

3. 创建开机启动脚本

  • 先创建Termux的开机启动目录:
    mkdir -p ~/.termux/boot
    
  • 新建启动脚本文件(比如命名为ssh-forward.sh):
    nano ~/.termux/boot/ssh-forward.sh
    
  • 在编辑器中输入以下内容:
    #!/data/data/com.termux/files/usr/bin/bash
    source ~/.bashrc
    
    # 后台运行SSH端口转发,日志输出到文件方便排查问题
    ssh -N myuser@example.com -L 445:localhost:445 > ~/ssh-forward.log 2>&1 &
    
    说明:-N参数表示仅建立连接不执行远程命令,刚好适配端口转发场景;日志输出和后台运行是可选配置,出现问题时可以通过日志定位原因。
  • 给脚本添加执行权限:
    chmod +x ~/.termux/boot/ssh-forward.sh
    

4. 测试开机自启效果

重启Android TV,等待系统启动完成后,进入Termux查看日志确认是否成功:

cat ~/ssh-forward.log

如果日志没有报错,且能通过本地445端口访问远程服务器的对应服务,就说明配置生效了。

额外小贴士

  • 确保Android TV开机后能正常连接网络,否则SSH连接会失败。
  • 担心SSH连接意外断开的话,可以用autossh实现自动重连:
    pkg install autossh
    
    然后把脚本中的SSH命令替换为:
    autossh -M 0 -N myuser@example.com -L 445:localhost:445 > ~/ssh-forward.log 2>&1 &
    
    -M 0表示禁用监控端口,依赖SSH内置的心跳机制维持连接。

内容的提问来源于stack exchange,提问作者David Alsh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 03:31:03