• frp内网穿透服务


    参考博客:

    https://www.jianshu.com/p/19ea81efffc4

    https://blog.csdn.net/yj222333/article/details/124752420

    依赖于:Github开源软件FRP
    下载地址:https://github.com/fatedier/frp/releases

    frp 主要由 客户端(frpc) 和 服务端(frps) 组成
    服务端(frps)-部署在具有公网IP的机器上
    客户端(frpc)-部署在需要穿透的内网服务所在的机器上 (我部署在window机器上)

    ps:根据自己服务器的类型下载对应的版本。

    一、服务端

    1、下载

    wget https://github.com/fatedier/frp/releases/download/v0.37.1/frp_0.37.1_linux_amd64.tar.gz

     

     2、编辑配置文件

    删除客户端:rm -rf frpc*

    编辑配置文件: vim frps.ini

    1. [common]
    2. bind_addr = 0.0.0.0
    3. # 接收 frpc 的连接,服务器监听端口
    4. bind_port = 7000
    5. # 启用 Dashboard 监听的本地端口,管理页面访问端口
    6. dashboard_port = 7500
    7. # 客户端需要设置一样的值才能鉴权通过
    8. token = lanren312_851ef508a68745f098d7047a072fde13
    9. # HTTP BasicAuth 用户名
    10. dashboard_user = admin
    11. # HTTP BasicAuth 密码
    12. dashboard_pwd = lanren312
    13. # 启用后才支持 HTTP 类型的代理,为 HTTP 类型代理监听的端口
    14. vhost_http_port = 8001
    15. # 启用后才支持 HTTPS 类型的代理,为 HTTPS 类型代理监听的端口
    16. vhost_https_port = 8002

    3、后台运行

    后台运行:nohup ./frps -c ./frps.ini &  

    4、访问管理平台

    http://云服务ip:7500

     5、设置开机启动

    没有就创建编辑:sudo vim /lib/systemd/system/frps.service

    1. [Unit]
    2. Description=frps service
    3. After=network.target syslog.target
    4. Wants=network.target
    5. [Service]
    6. Type=simple
    7. #启动服务的命令(此处写你的frps的实际安装目录)
    8. ExecStart=/lanren312/frp/frp_0.37.1_linux_amd64/frps -c /lanren312/frp/frp_0.37.1_linux_amd64/frps.ini
    9. [Install]
    10. WantedBy=multi-user.target

    ps: 必须将之前的进程杀掉,必须将之前的进程杀掉,必须将之前的进程杀掉,重要的说三遍。

    启动frps:  sudo systemctl start frps

    服务器开机自动启动frps:sudo systemctl enable frps

    重启frps:sudo systemctl restart frps

    停止frps:sudo systemctl stop frps

    查看日志:sudo systemctl status frps

     

    二、客户端

    1、下载,直接点击下载或者

    wget https://github.com/fatedier/frp/releases/download/v0.37.1/frp_0.37.1_windows_amd64.zip

    2、 删除服务端的3个文件

    3、编辑客户端的配置文件 frpc.ini

    1. [common]
    2. # 云服务器的ip地址
    3. server_addr = 云服务器ip
    4. # 连接服务端的端口
    5. server_port = 7000
    6. # 和服务端设置一样的值才能鉴权通过
    7. token = lanren312_851ef508a68745f098d7047a072fde13
    8. # 启用 AdminUI 监听的本地端口
    9. admin_port = 7600
    10. # HTTP BasicAuth 用户名
    11. admin_user = admin
    12. # HTTP BasicAuth 密码
    13. admin_pwd = lanren312
    14. # 名称,自己定义,不可重复
    15. [lanren312-8080]
    16. type = tcp
    17. # 电脑在局域网中的内网 IP
    18. local_ip = 192.168.0.109
    19. # 本地应用的端口号
    20. local_port = 8080
    21. # 服务端的端口号,记得开启放行端口
    22. remote_port = 8081

    4、运行脚本

    新建一个文件,改后缀为.bat,命名 startup.bat

    1. @echo off
    2. if "%1" == "h" goto begin
    3. mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
    4. :begin
    5. REM
    6. cd D:\frp\frp_0.37.1_windows_amd64
    7. frpc -c frpc.ini
    8. exit

     

    5、访问客户端管理平台

    浏览器输入:http://127.0.0.1:7600/
    

    6、开机启动

    将startup.bat文件放到指定目录

    C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp

    三、本地tomcat部署的项目测试

    本地tomcat端口8080,服务器对应的端口是8081

    正常tomcat部署项目aaa.war,前端aaa-vue

    访问地址:127.0.0.1:8080/aaa-vue, vue中后台请求的地址:127.0.0.1:8080/aaa

    经过刚刚的配置,外网也可以访问,访问地址: 云服务ip:8081/aaa-vue, vue中后台请求的地址:云服务器ip:8081/aaa,这里和本地的不一样。

    最后很重要一点,要将云服务安全组、防火墙的 7000、7500、8080、8081、8082端口都放开(7600是本地的,不需要放开,另外8082没用到)

  • 相关阅读:
    Mysql-Insert插入过慢的原因记录和解决
    在ios设备上运行Unity Profiler
    循环赛-(单循环)
    Matlab论文插图绘制模板第118期—进阶气泡图
    网络安全——(黑客)自学
    RK3568笔记五:基于Yolov5的训练及部署
    性能测试最佳实践的思考,7个要点缺一不可!
    Dubbo 知识点整理
    Kotlin的标准函数和静态方法
    [PaddleSpeech 原神] 音色克隆之胡桃
  • 原文地址:https://blog.csdn.net/lanren312/article/details/127941339