当前位置:   article > 正文

mac和centos编译部署frp实现http内网穿透_mac 上frp 转发http

mac 上frp 转发http

环境要求:

linux : gcc 版本 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)
mac : Apple LLVM version 10.0.0 (clang-1000.11.45.5)


第一步:安装Go
1. 都是使用第三方的包管理工具进行安装,centos使用yum安装,mac使用brew安装
2. 安装命令:
  • centos:yum install -y go
  • mac:brew install go
3. 注意点:如果使用yum安装速度很慢的话,可以使用国内的下载源进行加速,具体操作如下:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache
  • 1
  • 2
  • 3

第二步:编译frp,mac和linux操作相同
1. 从github上拉取源码git clone https://github.com/fatedier/frp.git
2. 进入目录,使用make 进行编译
3. 注意点:在编译的过程中go会下载第三方的库,这个时候如果你的网访问不了要下载的库的网址的话,make会失败。解决方法如下:
export GO111MODULE=on
export GOPROXY=https://goproxy.io
  • 1
  • 2

第三步:配置frp

编译成功之后,可以发现make的目录下多了一个bin文件夹,进入其中可以看到如下文件,其中frpc是客户端(client),frps是服务器端(server)

-rwxr-xr-x 1 root root 12586997 3月  13 19:17 frpc
-rwxr-xr-x 1 root root 13420350 3月  13 19:17 frps
  • 1
  • 2

这里是要将mac上的8080端口暴露到外网上,因此借助云主机centos当服务端来进行操作。

服务端配置

在bin目录下新建一份frps.ini文件,并写入以下内容,具体配置文件可以去frp的github项目查看

[common]
#frp服务器监听地址,如果是IPV6地址必须用中括号包围
bind_addr = 0.0.0.0
#frp服务器监听端口
bind_port = 7000
#kcp的udp监听端口,如果不设那就不启用
#kcp_bind_port = 7000
#指定使用的协议,默认tcp,可选kcp
#protocol = kcp
#如果要使用vitual host,就必须设置
vhost_https_port = 4430
vhost_http_port=800
privilege_mode = false
#Web后台监听端口
dashboard_port = 7777

#Web后台的用户名和密码
dashboard_user = xxx
dashboard_pwd = xxx

#Web后台的静态资源目录,调试用的,一般不设
#assets_dir = ./static

#日志输出,可以设置为具体的日志文件或者console
log_file = ./frps.log

#日志记录等级,有trace, debug, info, warn, error
log_level = debug
#日志保留时间
log_max_days = 3

#启用特权模式,从v0.10.0版本开始默认启用特权模式,且目前只能使用特权模式
#privilege_mode = true
#特权模式Token,请尽量长点且复杂
privilege_token = 12345678
#特权模式允许分配的端口范围
#privilege_allow_ports = 2000-3000,3001,3003,4000-50000
#心超时,不用改
#heartbeat_timeout = 90
#每个代理可以设置的连接池上限
#max_pool_count = 5
#认证超时时间,一般不用改
#authentication_timeout = 900
#如果配置了这个,当你的模式为http或https时,就能设置子域名subdomain
subdomain_host = 
#是否启用tcp多路复用,默认就是true,不用管
#tcp_mux = true
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47

实际上也不用像上面配置那么多,只需要选取最上面几个配置即可,这里只是贴一下完整配置

启动 ./frps -c frps.ini

客户端配置

在bin目录下新建一份frpc.ini文件,并写入以下内容,具体配置文件可以去frp的github项目查看

[common]
server_addr = madongyu.ml
server_port = 7000
#if you want to connect frps by http proxy or socks5 proxy, you can set http_proxy here or in global environment variables
# it only works when protocol is tcp
# http_proxy = http://user:passwd@192.168.1.128:8080
# http_proxy = socks5://user:passwd@192.168.1.128:1080
# console or real logFile path like ./frpc.log
#log_file = ./frpc.log
# trace, debug, info, warn, error
log_level = debug
#log_max_days = 3
#启用压缩
use_compression = true
# for authentication
privilege_token = 12345678
#无法使用
#token = 12345678

#http代理
[HTTP]
type = http
local_ip = 127.0.0.1
local_port = 8080
#自己的域名
custom_domains = xxxx
remote_port = 800

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

启动 ./frpc -c frpc.ini

注意点: 记得配置好防火墙,否则代理会失败,域名没有备案的话无法使用http进行访问,而使用https的话需要拥有证书,不然代理会出错。。。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/506141
推荐阅读
相关标签
  

闽ICP备14008679号