frp配置多端口内网穿透?frp多端口怎么配置?

FRP内网穿透应用场景:本地Web服务外网访问、本地开发微信、本地联调支付宝\微信支付、TCP/UDP端口转发

在本机开发好的网站想让客户测试不在需要上传到服务器上面,使用FRP内外网穿透轻松解决;微信开发也不需要在上传到服务器,使用免费FRP内网穿透服务器帮您解决80端口问题,实现微信服务器直接访问到您本机web服务。

使用frp作为内网穿透的时候,有时候,我们需要多个端口穿透,怎么配置呢?

frp配置多端口内网穿透?frp多端口怎么配置?

FRP内内网穿透应用场景

思考: 我们知道frp要想内网穿透,需要配置服务端和客户端。如果需要直接访问80端口的话,需要还需要在nginx做配置。那么下面,咱们就从这三个方面进行详细配置:

一、frp服务端配置

在服务器上找到frps.ini配置文件,然后配置信息如下:

[common]
#穿透监听端口与地址(0.0.0.0表示允许任何地址)
bind_addr = 0.0.0.0
bind_port = 7000
# 跟frpc通讯验证密钥
token = 可以自定义的token.如果需要的话请自行配置。如果不需要,可以注释掉
subdomain_host = 访问的域名。如果需要的话修改成自己的
#服务器用以显示连接状态的站点端口,以下配置中可以通过访问IP:7500登录查看frp服务端状态等信息
dashboard_addr = 0.0.0.0
dashboard_port = 7500
dashboard_user = 自定义的用户名
dashboard_pwd = 自定义的密码

#日志路径
log_file = /home/frp_0.46.1_linux_amd64/log/frps.log

#以下是配置多端口的
#端口8079是博客管理后台的项目
[tcp_blog-admin]
type = tcp
local_port = 8079
listen_port = 8079

#端口8080是博客前台项目访问地址
[tcp_blog]
type = tcp
local_port = 8080
listen_port = 8080

#端口8082是其他项目访问的
[tcp_app3]
type = tcp
local_port = 8082
listen_port = 8082

配置完成之后,如果将frp配置成随机启动的。可以直接执行以下命令,来重启frp

systemctl restart frps

二、Nginx配置

在Nginx的配置文件中添加如下配置:

# 端口8080映射到80端口
server {
    listen 80;
    server_name blog.xxx.com;

    location / {
        resolver 8.8.8.8;
        proxy_pass http://$host:8080;
        proxy_redirect off;
        client_max_body_size 10m;
        client_body_buffer_size 128k;
        proxy_connect_timeout 90;
        proxy_read_timeout 90;
        proxy_buffer_size 6k;
        proxy_buffers 6 128k;
        proxy_busy_buffers_size 256k;
        proxy_temp_file_write_size 256k;

        proxy_set_header Host $http_host;
    }

    location ~ .*\.(gif|jpg|png|bmp|swf|css|js)$ {
        proxy_pass http://$host:8080;
        expires 30d;
    }

    location ~ .*\.(js|css)?$ {
        expires 1d;
    }
}

# 端口8079映射到80端口
server {
    listen 80;
    server_name blog-admin.mmmm.com;

    location / {
        proxy_pass http://127.0.0.1:8079;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

    location ~ .*\.(gif|jpg|png|bmp|swf|css|js)$ {
        proxy_pass http://$host:8079;
        expires 30d;
    }
    location ~ .*\.(js|css)?$ {
        expires 1d;
    }
}

# 端口8082映射到80端口
server {
    listen 80;
    server_name app3.nnn.com
    .com;

    location / {
        proxy_pass http://127.0.0.1:8082;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

    location ~ .*\.(gif|jpg|png|bmp|swf|css|js)$ {
        proxy_pass http://$host:8082;
        expires 30d;
    }
    location ~ .*\.(js|css)?$ {
        expires 1d;
    }
}

需要注意:server_name 不能配置一样。如果配置一样,在执行下面的重启命令时候,会提示失败

配置完Nginx之后,需要重启Nginx的。重启命令:

/usr/local/nginx/sbin/nginx -s reload

三、frpc.ini配置

配置完frp的服务端、Nginx之后,我们现在再来配置frp客户端

[common]
server_addr = frp服务端所服务器所在的ip
server_port = 7000
token = 这里的token必须和frps.ini里面配置的一致

# 配置8079端口
[tcp_blog-admin]
type = tcp
local_ip = 127.0.0.1
local_port = 8079
remote_port = 8079
custom_domains = blog-admin.xxx.com

# 配置8080端口
[tcp_blog]
type = tcp
local_ip = 127.0.0.1
local_port = 8080
remote_port = 8080
custom_domains = blog.mmmm.com

# 配置8082端口
[tcp_app3]
type = tcp
local_ip = 127.0.0.1
local_port = 8082
remote_port = 8082
custom_domains = app3.nnn.com

需要注意:custom_domains 不能配置一样。如果配置一样,在执行重启frp客户端的时候,会提示错误信息的。

配置完成之后,重启frp的客户端。 可以看到如图所示,说明已经frp多端口配置成功
frp配置多端口内网穿透?frp多端口怎么配置?

frp客户端启动成功示例图

如果还是不放心,可以登录frp的管理页面进行查看。

frp管理页面就是在frps.ini里面配置7500相关的用户名和密码。

访问地址就是frp服务端的ip:7500。然后输入用户名和密码,就可以访问了。在Proxies菜单下,点击TCP,可以看到对应的端口。如下图所示:

frp配置多端口内网穿透?frp多端口怎么配置?

frp管理界面查看启动的三个不同端口

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/11630

(0)
凯影的头像凯影
上一篇 2024年5月10日 下午3:17
下一篇 2024年5月11日 下午2:56

相关推荐

  • 编写开机启动脚本

    在 Systemd 中编写开机启动脚本主要涉及创建一个 .service 文件,然后使用 systemctl 工具管理这个服务。 创建服务文件:首先,在 /etc/systemd/system/ 目录下创建一个 .service 文件,比如 myservice.service。 编辑服务文件:在编辑器中输入以下内容: 请将 /path/to/your/scr…

    2024年3月18日
    1.8K00
  • 文件传输工具WinSCP的安装与使用

    安装 首先下载软件,下面是WinSCP的下载网址 Download WinSCP 5.19.4 – free – latest version 下载完成后打开安装并接受许可协议 这里我们可以选择自定义安装,若是完整升级安装类型默认安装位置是C盘,接着下一步 若选择自定义安装则会有选择安装位置的窗口,若选择完整升级类型则为直接安装窗口【…

    2023年1月4日
    1.8K00
  • Testdisk 取消删除FAT文件

    此恢复示例将指导您逐步使用TestDisk从 FAT (FAT12/FAT16/FAT32) 和 VFAT 文件系统中恢复删除的文件。FAT 主要用于数码相机的存储卡和 USB 闪存盘。VFAT 主要存在于 Windows 下格式化的外部硬盘上。可以恢复已删除的文件。当文件被删除时,文件名被标记为已删除,数据区域被标记为未分配/空闲,但 TestDisk 可…

    2024年1月5日
    1.6K00
  • Git:合并多个commit 的高级技巧

    前言 在我们的日常项目开发中,git commit -m 无疑是使用最频繁的指令,这也造成了大量的commit 在我们的分支上。这样常常会带来分支过长、版本过多的问题。 正文 想要解决这个问题,我们通常会对commit 进行合并。 当我们发现两个commit 或多个commit 存在很强的关联性、并且几个commit 加起来也可以成为一个完整的描述的时候,就…

    2023年3月15日
    2.2K00
  • 在Linux中执行yum命令失败,提示“HTTP Error 404 -Not Found Trying other mirror”错误怎么办?

    问题描述 在Linux系统的ECS实例中执行yum命令(如yum -y install XXX、yum list、yum search XXX等)失败,出现类似如下错误信息。 问题原因 出现该问题可能有以下原因: 解决方案 切换CentOS 6/8的源地址 CentOS 6与CentOS 8操作系统版本结束了生命周期(EOL),Linux社区已不再维护该操作…

    2023年11月28日
    1.2K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信