04月09, 2025

解决安卓手机基于Termux用SSH端口映射+RD Client远程桌面无法连接的问题

背景

我的电脑开启了远程桌面,使用frp,并通过一台服务器做内网穿透。但是我没有直接把3389端口通过服务器暴露在公网,而是在每次连接时,需要通过SSH连接到服务器,将服务器上通过frp穿透上去的RDP端口,映射到当前机器上。然后当前机器直接通过mstsc连接到localhost:[端口映射的端口]即可连接。通过这种方式保证了安全性,即必须有条件SSH到我的服务器才能连接到我的电脑。

以上方式如果是用电脑来连接,一直都没有什么问题。我在电脑上用的是MyEnTunnel来在后台自动建立SSH端口映射隧道,在我的这篇文章中有一些描述。

在手机上其实可以用类似方式+软件实现。我使用的是Termux通过执行ssh -L命令连接到服务器进行端口映射,然后使用RD Client(当前最新版已经改名为Windows APP)进行RDP连接。

image.png

Screenshot_2025-04-09-20-29-19-114_com.microsoft..jpg

问题

以前我用这种方式一直没什么问题,但是后来突然发现基本连不上去,只有一次偶然连上去了,但连上去也经常断。

解法

一个偶然的机会发现,进程刚从Termux切换到RDP的时候,有一定机会能直接连上。突然想到会不会是Termux在后台的话,SSH连接就会断。于是尝试了一下,确实刚切换进程到RDP立刻进行连接,有很大概率能连上。

想到小米手机针对进程有个设置是省电策略,把省电策略改成无限制之后,就没问题了。

Screenshot_2025-04-09-20-39-01-376_com.miui.secur.jpg

本文链接:https://debug.fanzheng.org/post/jie-jue-an-zhuo-shou-ji-ji-yu-Termux-yong-SSH-duan-kou-ying-she-+RD Client-yuan-cheng-zhuo-mian-wu-fa-lian-jie-de-wen-ti.html

-- EOF --

Comments

评论加载中...

注:如果长时间无法加载,请针对 disq.us | disquscdn.com | disqus.com 启用代理。