内网穿透frp的详细使用配置

FRP(Fast Reverse Proxy)是一个高性能的反向代理应用,由 Go 语言编写。

可以让你在内网部署的服务能够在公网能访问,或者你想在公网上直接连接你的内网服务器使用。它的特点就一句话:简单易用!

要实现内网穿透,首先你得有一台公网的服务器,或者云服务器。

FRP 由两部分组成,frpsfrpc,下面分别进行这两部分的配置。

1.frps(FRP Server)

这是服务端程序,需要在具有公网 IP 的服务器上运行。它负责监听来自客户端(frpc)的连接,并将请求转发到指定的内网服务上。

(1)服务端配置frps.ini ,内容如下:

[common] # common 是这个节的名称 bind_port = 7099 # FRP 服务绑定的端口号,表示FRP服务将在服务器的7099端口上监听进来的连接 token = ****** # token 是用于认证的密钥,客户端在连接到服务器时需要提供相同的 token 值以验证身份 dashboard_port = 7500 # FRP服务的Dashboard绑定的端口号,你可以通过http://服务端公网ip:7500来监控和管理FRP服务 dashboard_user = ****** # 访问Dashboard时的用户名 dashboard_pwd = ****** # 访问Dashboard时的密码
[common] # common 是这个节的名称 bind_port = 7099 # FRP 服务绑定的端口号,表示FRP服务将在服务器的7099端口上监听进来的连接 token = ****** # token 是用于认证的密钥,客户端在连接到服务器时需要提供相同的 token 值以验证身份 dashboard_port = 7500 # FRP服务的Dashboard绑定的端口号,你可以通过http://服务端公网ip:7500来监控和管理FRP服务 dashboard_user = ****** # 访问Dashboard时的用户名 dashboard_pwd = ****** # 访问Dashboard时的密码 
[common] # common 是这个节的名称 bind_port = 7099 # FRP 服务绑定的端口号,表示FRP服务将在服务器的7099端口上监听进来的连接 token = ****** # token 是用于认证的密钥,客户端在连接到服务器时需要提供相同的 token 值以验证身份 dashboard_port = 7500 # FRP服务的Dashboard绑定的端口号,你可以通过http://服务端公网ip:7500来监控和管理FRP服务 dashboard_user = ****** # 访问Dashboard时的用户名 dashboard_pwd = ****** # 访问Dashboard时的密码

(2)启动服务端:

chmod +x frps nohup ./frps -c frps.ini &
chmod +x frps nohup ./frps -c frps.ini &
chmod +x frps nohup ./frps -c frps.ini &

2.frpc(FRP Client)

这是客户端程序,需要在需要被穿透的内网机器上运行。它负责与服务端(frps)建立连接,并将内网服务的端口映射到公网。

(1)客户端配置frpc.ini ,内容如下:

[common] server_addr = ****** # 服务端的公网ip server_port = 7099 # 对应服务端的bind_port authentication_method = token token = ****** # 对应服务端的token [node1] # node1是这个节的名称,随便设置 type = tcp # 代理类型为 tcp local_ip = 127.0.0.1 # 内网服务的IP地址。这里设置为127.0.0.1表示该代理将转发到本机(localhost)上的服务 local_port = **** # 你内网服务的端口号。表示FRP客户端将监听本机的该端口并将流量转发到该端口上的服务。 remote_port = **** # 在外网服务器上开放的端口号。表示FRP服务端将在公网IP上的该端口接收来自外部的连接,并将这些连接转发到客户端的 local_ip 和 local_port 指定的服务上。 # 下面是额外定义了一个ssh配置,端口一般默认为22,这样你就能在任何地方用ssh连接这台内网机器了 # ssh -p remote_port username@server_addr [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = ****
[common] server_addr = ****** # 服务端的公网ip server_port = 7099 # 对应服务端的bind_port authentication_method = token token = ****** # 对应服务端的token [node1] # node1是这个节的名称,随便设置 type = tcp # 代理类型为 tcp local_ip = 127.0.0.1 # 内网服务的IP地址。这里设置为127.0.0.1表示该代理将转发到本机(localhost)上的服务 local_port = **** # 你内网服务的端口号。表示FRP客户端将监听本机的该端口并将流量转发到该端口上的服务。 remote_port = **** # 在外网服务器上开放的端口号。表示FRP服务端将在公网IP上的该端口接收来自外部的连接,并将这些连接转发到客户端的 local_ip 和 local_port 指定的服务上。 # 下面是额外定义了一个ssh配置,端口一般默认为22,这样你就能在任何地方用ssh连接这台内网机器了 # ssh -p remote_port username@server_addr [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = **** 
[common] server_addr = ****** # 服务端的公网ip server_port = 7099 # 对应服务端的bind_port authentication_method = token token = ****** # 对应服务端的token [node1] # node1是这个节的名称,随便设置 type = tcp # 代理类型为 tcp local_ip = 127.0.0.1 # 内网服务的IP地址。这里设置为127.0.0.1表示该代理将转发到本机(localhost)上的服务 local_port = **** # 你内网服务的端口号。表示FRP客户端将监听本机的该端口并将流量转发到该端口上的服务。 remote_port = **** # 在外网服务器上开放的端口号。表示FRP服务端将在公网IP上的该端口接收来自外部的连接,并将这些连接转发到客户端的 local_ip 和 local_port 指定的服务上。 # 下面是额外定义了一个ssh配置,端口一般默认为22,这样你就能在任何地方用ssh连接这台内网机器了 # ssh -p remote_port username@server_addr [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = ****

(2)启动客户端:

chmod +x frpc nohup ./frpc -c frpc.ini &
chmod +x frpc nohup ./frpc -c frpc.ini &
chmod +x frpc nohup ./frpc -c frpc.ini &

如何显示连接拒绝,在你的服务端开放一下端口

firewall-cmd –permanent –zone=public –add-port=<your_bind_port >/tcp
systemctl reload firewalld

原文链接:https://blog.csdn.net/ling913/article/details/144379473?ops_request_misc=%257B%2522request%255Fid%2522%253A%25221824fa1992a31392d83d8337088bddcd%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=1824fa1992a31392d83d8337088bddcd&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-6-144379473-null-null.nonecase&utm_term=%E9%A3%9E%E7%89%9BOS

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享