V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
azev
V2EX  ›  宽带症候群

关于 frp 内网穿透能不能实现这一点

  •  
  •   azev · 217 天前 · 2203 次点击
    这是一个创建于 217 天前的主题,其中的信息可能已经有所发展或是发生改变。

    就是能通过其提供的 api 接口让一个公开端口停止或者重启接收请求
    因为那个通过该端口出来的内网机器使用不频繁,不想长期暴漏在公网上

    第 1 条附言  ·  216 天前
    尽量要简单,不要启停 frps ,因为还有其他端口需要长期公开
    我的设想是服务器上放一个页面,后端进行启停,前端页面在 iPhone 中访问,存好密码,直接面容进入,点一下即可切换。
    18 条回复    2024-05-20 16:36:36 +08:00
    iamobj
        1
    iamobj  
       217 天前
    我觉得需要自己写个 api ,然后通过修改配置重启服务就行
    guisheng
        2
    guisheng  
       217 天前 via iPhone
    我现在的做法是需要用的时候开启端口映射
    kkk9
        3
    kkk9  
       217 天前   ❤️ 1
    我觉得这是个伪需求,直接公网服务器( frps )上操作 firewall 放行/阻止对应端口就好了,完全不要改造 frp 。
    vishun
        4
    vishun  
       217 天前
    貌似没提供多少 api ,但是它有个 web 界面,可以参考这个 web 界面怎么实现动态配置的,或者是更简单的自己写个脚本,触发来替配置或注释配置,然后调用应用重启来生效。
    cpstar
        5
    cpstar  
       217 天前
    写两个配置文件(一个开一个关),然后写一个脚本(得监听一个端口)控制 frp 使用两个配置文件中的一个( kill 进程,重新启动),最后通过调用这个脚本的端口开关实际服务端口。
    xiaoyanchong
        6
    xiaoyanchong  
       217 天前
    我觉得 frp 的 stcp 应该可以解决你这个需求,不额外暴露服务到公网,并且能在需要时访问。如果要长期稳定在 Windows 上运行客户端,可以使用 winsw 来运行客户端
    https://github.com/winsw/winsw
    https://github.com/fatedier/frp?tab=readme-ov-file#expose-your-service-privately
    lqw3030
        7
    lqw3030  
       217 天前
    我的项目应该是满足你的需求,就是有段时间我没更新了😂
    https://github.com/qiweiview/jndc
    neptuno
        8
    neptuno  
       217 天前 via iPhone
    用的时候开启 frp 服务端,不用的时候关掉是不是就好了
    azev
        9
    azev  
    OP
       216 天前
    @kkk9 这样需要去登录服务器做改动 不能点一下完成

    @neptuno 这也得需要登录服务器操作
    azev
        10
    azev  
    OP
       216 天前
    @xiaoyanchong 我看了下 stcp 这个是加强了防护吧 就是访问者机器也要安装个 frpc 然后会附带令牌去请求
    Honkaiteio
        11
    Honkaiteio  
       216 天前
    我之前做过一个差不多的工作:

    服务器上开一个 api ,向某个/long-path ,POST 一个自己定义的表单 token ,核验后执行一个后端任务

    这些操作可以保存成快捷指令,保存在 iphone 的主界面上,需要时点一下即可

    后端任务,你这里的场景可以检查 xx 端口的防火墙开启情况,并置反

    原生的 frp 做不到,需要自己搓一个,不过比较简单轻量,让 gpt 帮忙很容易写好
    webshe11
        12
    webshe11  
       216 天前
    @azev 云服务器的防火墙(安全组)可以在网页上操作
    TeresaPanda
        13
    TeresaPanda  
       216 天前
    听起来像端口敲门的需求,ios 应该也有敲门工具。
    abcbuzhiming
        14
    abcbuzhiming  
       216 天前
    楼主你的思路其实不太对劲,你实际上是考虑把复杂功能集成化到一个组件上来解决问题,这会引入新的不确定性。你为啥一定要让 frp 来做这件事呢?你的服务器防火墙把端口关了不就完事了,职责单一,不容易出问题。
    而且服务器防火墙一般有 api 接口的,写个脚本想开就开,想关就关
    xqzr
        15
    xqzr  
       216 天前
    frpc 的 Admin UI 可以看看
    charley008
        16
    charley008  
       216 天前
    你这个要求好像 nps 刚好满足。
    https://github.com/ehang-io/nps
    可以随时启停,手机端访问 web 后台都可以各种操作
    charley008
        17
    charley008  
       216 天前
    [img][/img]
    conglovely
        18
    conglovely  
       216 天前
    用 NPS 就行,WEB 管理页面 楼上就有提到。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2644 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 10:37 · PVG 18:37 · LAX 02:37 · JFK 05:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.