在Linux Mint21上使用KDEconnect
前言
自从开始把越来越多的工作生活需求在Gnu/Linux发行版下实现,我一直想要一个可以通过WIFI直连(WIFI Direct)实现PC和安卓的点对点高速协同的软件包,但是网上找了找没找到,绝大多数都是需要局域网实现的,想了想平时经常手机给PC开热点,那其实也就没那么重要了。
昨天折腾了半天,但是PC一直连不上安卓客户端,跑了个Nodejs web服务测试发现局域网也打不开但是ICMP Ping的通,我刚开始以为是自己路由器配置有问题导致出现AP隔离的情况,可是切换到Windows10用KDE-Connect反而能连接上,那显然就不是R3G的OpenWrt配置错了。
顿悟
今天晚上安装OpenShot给室友剪视频,折腾过程中无意间看见设置里有个防火墙,打开一看默认防火墙开着,而且默认传入是拒绝,瞬间就意识到为什么昨天晚上扫描不出来设备,也连不上......
首先把防火墙先关了,接着重新运行昨天的web项目测试,不出意外的正常访问了,那么肯定昨天晚上因为防火墙拦截了传入的流量。
安装KDE-Connect
还好昨天晚上没卸载安卓端....现在apt install kdeconnect即可
经过测试,因为是我的手机开热点,还是扫不出来,可能是客户端默认不会扫描请求路由器的地址,通过host名称也无法识别,但是安卓端写好IP地址马上就出来PC了。
现在我可以愉快的实现文件互传和剪切板内容发送了。
保证安全
显然,我不能总是关闭防火墙,在不安全的网络环境下相当危险。所以去查询以下完成通信需要哪些端口吧,在KDE UserBase Wiki里提到:KDE Connect 在 1714-1764 内的动态端口使用UDP和TCP协议 。
接着我发现,Mint21自带的Gufw Firewall已经内置包括KDE connect在内的超多应用的规则,只需要搜多KDE connect即可选择启用。还能快速选择“语音服务和P2P”以及“全部服务”这样的常用大范围规则,真是人性化:)
防火墙有的时候真的会崩溃 例如开了防火墙屏蔽了cdn 排查半天一关就好了…