搭建frp内网穿透

210 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第28天,点击查看活动详情

frp有windows版本的客户端与服务端,使用需要启动服务端然后启动客户端,才可以将ip映射出去

注意:云服务器安全组以及防火墙需要开启对应的端口

服务端配置

  1. 登录linux服务器,通过wget获frp,没有wget输入yum install wget安装即可

    wget https://github.com/fatedier/frp/releases/download/v0.31.1/frp_0.31.1_linux_amd64.tar.gz
    
  2. 在该文件下解压 tar -zxvf frp_0.31.1_linux_amd64.tar.gz,解压得到以下文件

    [root@VM_10_197_centos frp_0.31.1_linux_amd64]
    -rwxrwxr-x 1 1000 1000 10608640 1   6 16:02 frpc
    -rw-rw-r-- 1 1000 1000     7447 1   6 16:04 frpc_full.ini
    -rw-rw-r-- 1 1000 1000      126 1   6 16:04 frpc.ini
    -rwxrwxr-x 1 1000 1000 11333632 1   6 16:02 frps
    -rw-rw-r-- 1 1000 1000     2514 1   6 16:04 frps_full.ini
    -rw-rw-r-- 1 1000 1000       26 1   6 16:04 frps.ini
    -rw-rw-r-- 1 1000 1000    11358 1   6 16:04 LICENSE
    drwxrwxr-x 2 1000 1000     4096 1   6 16:04 systemd
    
  3. 删除无用的文件

    rm -f frpc
    rm -f frpc.ini
    rm -f frpc_full.ini
    
    rm -f systemd/frpc.service
    rm -f systemd/frpc@.service
    
  4. 修改服务端配置文件,服务端配置文件参考,注释记得删掉使用时

    [common]
    bind_port = 7000 //绑定本机端口
    vhost_http_port = 8270 //进行转发的端口
    
    dashboard_user = admin //自带的面板用户
    dashboard_pwd =123456 //自带的面板密码
    dashboard_port = 7500 //自带面板开放的端口,输入本机ip + 端口即可访问自带的监控面板
    
    [ssh] //命名为ssh
    bind_addr = 0.0.0.0 //绑定ip
    listen_port = 6000 // 
    
    [web01] //http代理
    type = http
    custom_domains = frp.mouthmouth.top //注意这里必须要有一个域名才可以使用http
    
  5. 启动服务端 ./frps -c ./frps.ini

  6. 注册系统服务 vim systemd/frps.service

  7. 修改服务文件

    [Unit]
    Description=Frp Server Service
    After=network.target
    
    [Service]
    Type=simple
    User=nobody
    Restart=on-failure
    RestartSec=5s
    # 这里需要根据frps的安装路径,进行更改
    ExecStart=/home/frp/frps -c /home/frp/frps.ini
    
    [Install]
    WantedBy=multi-user.target
    
  8. 复制frp文件到系统

    cp systemd/frps.service /etc/systemd/system/
    
  9. 通过系统指令可以查看frp状态

    # 启动测试
    systemctl start frps.service
    
    # 查看启动状态
    systemctl status frps.service
    
    # 停止
    systemctl stop frps.service
    
    # 开机自启
    systemctl enable frps.service
    

客户端配置(windows)

  1. 下载frp windows包 github.com/fatedier/fr…

    frp_0.37.1_windows_386.zip

  2. 下载后解压,得到frp文件

  3. 修改frpc.ini文件

    [common] //这里参数为服务端的配置
    server_addr = 3.15.218.208
    server_port = 7000
    
    [ssh] //命名为ssh
    type = tcp // tcp连接代理
    local_ip = 127.0.0.1
    local_port = 3389 //代理本机端口为3389,注意3389是windows的远程控制端口
    remote_port = 7001 //暴露出去给外面的人的端口,eg: 这里外面的人连接的ip为 公网ip + 7001
    
    [web] //命名为web,代理http,对外暴露ip为 frps.mouthmouth.top:8270 ,注意http必须使用域名
    type = http
    local_port = 8270 //本机端口
    custom_domains = frps.mouthmouth.top
    
  4. 通过windows的powershell 输入指令 .\frpc.exe -c .\frpc.ini 执行客户端

客户端配置(Linux)

1.根据自己的架构选择

  1. wget github.com/fatedier/fr… 的包,这个要去github查看根据自己的内核选择
  2. 修改配置文件与上面windows一致