请教下 frp 的安全性 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
eastry
V2EX    程序员

请教下 frp 的安全性

  •  
  •   eastry 9 小时 58 分钟前 2687 次点击

    最近整了个阿里云服务器,搭建了 frp 服务,准备将家里的小服务器的部分端口暴露给外网,方面自己在外使用。

    我的使用方式是这样的:

    1 、阿里云服务端只完全开放 7000 ,其他端口都不开放; 2 、阿里云服务端的 auth.token 设置为一个随机生成的复杂 token ; 3 、其他端口(比如:8080 ,8081 ,22 等),需要用到的时候,只要到阿里云上设置一下白名单并开放就行了。

    各位大佬帮忙看看,这么做有没有什么比较严重的风险。还有没有其他可以优化的地方。抱拳

    第 1 条附言    7 小时 27 分钟前
    总结一下,主要还是 frps 的端口直接暴露不是很好。两个主要的解决方案:

    1 、像 @totoro625 大佬提到的,使用类似 ddns-go 的工具,更新阿里云白名单的方法,只把 frps 的端口(如:7000 )暴露给家里的 ip 。
    2 、像 @Hanhairizhi 大佬的方法,写程序,主动去 ban 异常的 ip 。

    待我再研究研究。。。。。。
    40 条回复    2026-01-20 23:21:21 +08:00
    penzi
        1
    penzi  
       9 小时 56 分钟前
    没有
    cheng6563
        2
    cheng6563  
       9 小时 54 分钟前
    frp 里可以开下加密,没了。
    totoro625
        3
    totoro625  
       9 小时 52 分钟前
    家里的小服务器肯定能随便跑脚本,跑一个 ddns 。推荐 https://github.com/jeessy2/ddns-go
    阿里云 crontab 弄个脚本,把 ddns 解析域名对应的 ip 自动过白名单
    7000 端口也不用对外开放

    需要访问的设备,如果是笔记本也可以弄个 ddns ,自动过白名单
    Sezxy
        4
    Sezxy  
       9 小时 50 分钟前
    stcp 更安全,缺点是访问的时候要用到 frpc
    lmmir
        5
    lmmir  
       9 小时 46 分钟前
    还不如用 easytier
    Ipsum
        6
    Ipsum  
       9 小时 45 分钟前
    搞个 vpn ,在哪都像家一样。
    stephenhallo
        7
    stephenhallo  
       9 小时 44 分钟前
    其实比较好的方式是搞个备案域名,然后阿里云服务器上只开放 443 端口,阿里云服务器上部署 nginx 将流量直接反向代理到 frp ,所有的项目文件,包括域名证书啥的都在小服务器上。这样相对安全一些。
    jifengg
        8
    jifengg  
       9 小时 38 分钟前
    另外,建议改掉默认 7000 端口,现在 frp 7000 端口也是常规扫描端口了。可能阿里云自己也会检测哦
    eastry
        9
    eastry  
    OP
       9 小时 9 分钟前
    @cheng6563
    transport.useEncryption = true
    transport.useCompression = true
    这两个配置吧,已加。感谢
    eastry
        10
    eastry  
    OP
       9 小时 8 分钟前
    @totoro625 感谢感谢,昨天一直在找类似的东西。我去研究下。
    eastry
        11
    eastry  
    OP
       9 小时 6 分钟前
    @stephenhallo 有想过这种方式,自己有备案的域名,但是是不是每个开放的端口都要一个子域名,这样有点麻烦哎。不过还是感谢你的建议
    eastry
        12
    eastry  
    OP
       9 小时 5 分钟前
    @jifengg 嗯嗯,只是为了好描述写的 7000 ,真实情况是没有使用 7000 这个默认端口的。感谢建议。
    ashuai
        13
    ashuai  
       9 小时 5 分钟前
    我以前在 win2003 上用过 ipsec ,双方配置同样的密钥就可以互访。现在的版本不知道怎么配了。不知道为什么这个方案很少看到人用
    eastry
        14
    eastry  
    OP
       9 小时 4 分钟前
    @Ipsum 暂时还不打算用 vpn 。
    eastry
        15
    eastry  
    OP
       9 小时 3 分钟前
    @lmmir 我去研究下 easytier 。感谢建议。
    eastry
        16
    eastry  
    OP
       9 小时 3 分钟前
    @Sezxy stcp 是麻烦一点。
    stephenhallo
        17
    stephenhallo  
       8 小时 44 分钟前
    @eastry 不用呀,所有域名都是通过 https 走 443 端口呀,添加新的服务只是需要修改配置文件,不需要额外开放端口
    youknowiam
        18
    youknowiam  
       8 小时 42 分钟前
    我现在用 vnt+lucky 比较完美解决我远程、端口穿透的问题,无公网也能满速访问家里
    jingcjie
        19
    jingcjie  
       8 小时 42 分钟前
    之前用 frp 为了在哪里都能随时访问,后面还是组网算了,我把 rdp 和 ssh 挂 frp 上,每天可以被扫几百次,麻了。
    ntedshen
        20
    ntedshen  
       8 小时 36 分钟前
    Hanhairizhi
        21
    Hanhairizhi  
       8 小时 16 分钟前
    我是自己写程序监控 frps 日志,有新 ip 进来如果不是本省的 ip 就加到防火墙黑名单,顺便也能阻止这些 ip 攻击其他服务端口。
    ICKelin
        22
    ICKelin  
       8 小时 16 分钟前
    frp 会暴露在公网,一般都是尽量避免暴露在公网的,楼上有说 easytier 的了,也可以试试这个,https://github.com/smartethnet/rustun
    sherardxu
        23
    sherardxu  
       8 小时 7 分钟前
    同阿里云,我使用 tailscale 暴露内网服务,延迟 7ms
    eastry
        24
    eastry  
    OP
       7 小时 43 分钟前
    @stephenhallo 我有暴露多个家里服务器端口的需求,一个子域名只能链接一个吧。
    acisky
        25
    acisky  
       7 小时 22 分钟前
    用阿里云 frp 暴露内网的 gogs 服务,不知道怎么被黑产盯上发了好多垃圾广告
    eastry
        26
    eastry  
    OP
       7 小时 19 分钟前
    @acisky 你的 gogs 端口是直接暴露吗?还是在阿里云设置了 IP 白名单?
    laminux29
        27
    laminux29  
       7 小时 15 分钟前
    既然这是给你个人使用的,你直接用端口敲门技术不就行了。端口敲门专门针对这个场景,甚至你连密码都不需要,天下无敌,100% 安全。
    vonfry
        28
    vonfry  
       7 小时 13 分钟前
    如果不需要 udp 流量,可以用 ssh (reverse) forward ,本身就有加密,还能按需连接,而且本来 ssh 就是会开放使用的。固定导出的端口拿 systemd 写个 service 就好。

    另外安全问题,除了防拿你的服务器做转发外,更主要的是你 export 的那个服务。

    另外你拿阿里转发的话,如果是 http(s) 是会被阿里检测然后关掉的(解法是备案)。
    milkpuff
        29
    milkpuff  
       7 小时 11 分钟前
    用 stcp ,不要直接暴露,会被疯狂扫描。
    suyuyu
        30
    suyuyu  
       7 小时 5 分钟前
    求问 腾讯云轻量能不能跑 frp ?
    Achophiark
        31
    Achophiark  
       6 小时 17 分钟前
    个人用户使用 frp 没有任何问题的,玩的就是效率,真是性能好,但没有零信任和其他可靠验证,对这方面要求高的可以看看 pangolin(类似开源 cloudflare tunnel)
    stephenhallo
        32
    stephenhallo  
       5 小时 12 分钟前
    @eastry 不同子域名,只要是 https ,都走的是服务器的 443 端口呀
    Plutooo
        33
    Plutooo  
       5 小时 10 分钟前
    我是家里服务器起一个脚本定时对 ip 加白
    byte10
        34
    byte10  
       4 小时 57 分钟前
    我跟上面用 nginx 一样,家里所有需要暴漏的服务连接到 frp ,然后 nginx 代理这些端口。最近暴漏了 nas ,结果被攻击,还好群晖牛逼,3-5 次 密码不对就封锁。后来排查了很久,发现 nginx 有一个域名访问的问题,才终于解决攻击。
    DefoliationM
        35
    DefoliationM  
       4 小时 11 分钟前 via Android
    tailscale 吧,不用开端口。
    rev1si0n
        36
    rev1si0n  
       4 小时 5 分钟前
    这么麻烦干嘛,直接部署一个 openvpn-server ,android ,ios ,win ,linux ,mac 端客户端全覆盖,家里申请个公网 IP ,加 ddns 连服务器都不用。
    hxdyxd
        37
    hxdyxd  
       3 小时 10 分钟前 via iPhone
    直接 ikev2 连回家就好了,7x24 小时挂着也不怎么耗电,网络环境跟家里完全一样
    PhDLuffy
        38
    PhDLuffy  
       2 小时 26 分钟前
    frp 只开放 444 端口,用 https ,所有内网服务走 444 的 https 端口
    inframe
        39
    inframe  
       2 小时 6 分钟前
    wireguard + docker ,或者楼上的 xx vpn,反正各种组网工具解决自己使用的问题
    nxuu
        40
    nxuu  
       1 小时 7 分钟前
    @ashuai 估计都习惯用 linux 服务器了 windows 太占资源了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1636 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 16:29 PVG 00:29 LAX 08:29 JFK 11:29
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86