用frp搭建正向代理(http代理或socks5代理) | 您所在的位置:网站首页 › s5代理搭建 › 用frp搭建正向代理(http代理或socks5代理) |
前言 首先说下应用场景——我手上一台m1的mac,一台win10的电脑。我想在mac上搭起正向代理,在win10上应用这个代理。 然后开始实操: 下载frp这个在github搜fatedier的那个frp即可,我这里是需要在m1芯片的mac上运行所以下载了这个: frp_0.44.0_darwin_arm64.tar.gz更改配置1⃣️配置frps.ini,有第一行足矣 bind_port = 7000 # enable logs log_file = ./frps.log trace, debug, info, warn, error log_level = info log_max_days = 32⃣️配置frpc.ini,其实都是可以参考frpc_full.ini中提供的样例去配的😌 [common] server_addr = 127.0.0.1 server_port = 7000 # enable logs log_file = ./frpc.log trace, debug, info, warn, error log_level = info log_max_days = 3 [proxy] type = tcp remote_port = 6000 plugin = http_proxy plugin_http_user = abc plugin_http_passwd = abc [socks5_proxy] type = tcp remote_port = 6005 plugin = socks5 plugin_user = abc plugin_passwd = abc完成配置后,可以运行命令检查一下配置 ./frps verify -c frps.ini ./frpc verify -c frpc.ini看到syntax is ok即校验通过那没什么问题了就,下图是frps,frpc也是一样的。 tnt@tntdeMBP ~ % cd frp_0.44.0_darwin_arm64 tnt@tntdeMBP frp_0.44.0_darwin_arm64 % ./frps verify -c frps.ini frps: the configuration file frps.ini syntax is ok配置校验启动frp然后就依次启动frps和frpc,首先启动frps ./frps -c frps.ini再新建一个终端窗口或标签页,用来启动frpc ./frpc -c frpc.ini如果需要关闭frp,在对应的终端窗口按下快捷键Ctrl+C即可 访问端配置以http_proxy为例,在win10上手动配置代理,这里我就通过Chrome插件SwitchyOmega来配置,填入代理服务器和代理端口后在页面左侧点击应用选项 保存配置: 创建代理配置然后切换到这个代理: 切换代理配置测试然后尝试网上冲浪: 访问腾讯云总结上图中的 remote address就是代理服务器的地址了,这个是http代理的情况,如果是socks5代理这里还是源服务器的地址。 此外还可以用nginx搭起正向代理,配置形如: server { listen 80; server_name localhost; resolver 202.96.103.36; #浙江电信dns # proxy_connect,该directive由第三方插件提供; proxy_connect; proxy_connect_allow 443 80; proxy_connect_connect_timeout 10s; proxy_connect_read_timeout 10s; proxy_coneect_send_timeout 10s; location / { proxy_pass $scheme://$http_host$request_uri; } }或形如: server { resolver 114.114.114.114; #百毒dns listen 80; server_name localhost; #正向代理转发http请求 location / { proxy_pass http://$host$request_uri; proxy_set_header HOST $host; proxy_buffers 256 4k; proxy_max_temp_file_size 0k; proxy_connect_timeout 30; proxy_send_timeout 60; proxy_read_timeout 60; proxy_next_upstream error timeout invalid_header http_502; } } server { resolver 223.5.5.5; #阿里dns listen 443; #正向代理转发https请求 proxy_connect; #源服务器的web资源的端口? proxy_connect_allow 443; proxy_connect_connect_timeout 10s; proxy_connect_read_timeout 10s; proxy_connect_send_timeout 10s; location / { proxy_pass http://$host; proxy_set_header Host $host; } }但是nginx相对于frp还是比较麻烦的,上述https的配置是建立在给nginx添加了第三方插件的基础上, ngx_http_proxy_connect_module就是这么一个插件, 然后在访问端,配置代理服务器ip就是nginx的ip,然后代理端口就是nginx的server{}监听的端口例如443,nginx监听的端口就是访问端配置的代理端口。 对于http的web资源,以及https的web资源,不能放到同一个server{}下转发,这样的话还是用frp好好一点。 |
CopyRight 2018-2019 实验室设备网 版权所有 |