frp 内网穿透

frp介绍

frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。

搭建

服务端搭建

需要一台外网服务器,我这里是一台阿里云的ECS,系统CentOS 7。

frp下载地址:https://github.com/fatedier/frp/releases

服务端配置

  1. 复制 & 解压

    # 复制到local下的frp目录
    cp frp_0.33.0_linux_amd64.tar.gz /usr/local/frp
    
    # 解压
    tar -axvf frp_0.33.0_linux_amd64.tar.gz
    
    # 删除掉与frp客户端相关的内容
    rm -rf frpc* 
    
  2. 修改frps.ini文件,vi frps.ini

    [common]
    bind_port = 7100
    dashboard_port = 7500
    dashboard_user = alice
    dashboard_pwd = 123456
    

    保存,退出。

  3. 启动

    ./frps -c frps.ini
    
  4. 后台启动方式

    nohub ./frps -c frps.ini &
    

将frp作为服务

  1. 进入frp根目录下的systemd文件夹,修改frps.service

    [Unit]
    Description=Frp Server Service
    After=network.target
    
    [Service]
    Type=simple
    User=nobody
    Restart=on-failure
    RestartSec=5s
    
    # 只需要修改下面这一行,路径根据自己的设置
    ExecStart=/usr/local/frp/frp_0.33.0_linux_amd64/frps -c /usr/local/frp/frp_0.33.0_linux_amd64/frps.ini
    
    [Install]
    WantedBy=multi-user.target
    
    

    保存,退出。

  2. 将frps.service复制到/etc/systemd/system/目录下

  3. 执行下面命令,就可以很方便的启动关闭frp服务端了

    # 重新载入
    systemctl daemon-reload
    
    # 启动frps
    systemctl start frps.service
    
    # 重启
    systemctl restart frps.service
    
    # 关闭
    systemctl stop frps.service
    
    # 开机自启
    systemctl enable frps.service
    

客户端搭建

同样下载客户端程序,只不过这次下载的是windows的。

客户端配置

下载成功后,解压,然后找到frpc.ini,作如下配置

[common]
server_addr = 39.xxx.xxx.xxx
server_port = 7100

[web]
type = tcp
local_ip = 127.0.0.1
local_port = 8080
remote_port = 7700

server_addr:服务端监听地址,和服务端配置的地址一致

server_port:服务端端口 ,和服务端配置的地址一致

local_ip:本地地址,待接收消息的应用所在地址

local_port:本地端口,待接收消息的应用监听的端口

remote_port:远程服务器监听的端口,例如:远程服务器监听端口为7777,你访问http://xxx.xxx.xxx.xxx:7700,将转发到本地http://127.0.0.1:8080。

启动,和服务端一样,打开命令行输入如下命令

posted @ 2020-07-19 16:09  Cava425  阅读(194)  评论(0)    收藏  举报