frp使用小结
frp有服务器端(frps)和客户端(frpc)之分,在Linux和Windows上都可使用,下载地址
##Linux服务器端安装
wget https://github.com/fatedier/frp/releases/download/v0.13.0/frp_0.13.0_linux_amd64.tar.gz #下载frp
tar -zxvf frp_0.13.0_linux_amd64.tar.gz #解压
cd frp_0.13.0_linux_amd64 #进入目录
rm -rf frpc_full.ini frpc frpc.ini #删除frpc相关的文件,frpc属于客户端
vi frps.ini #编辑frps配置文件
./frps -c ./frps.ini #启动frps
frps.ini
[common]
bind_port = 7000 #与客户端绑定的进行通信的端口
vhost_http_port = 8080 #访问客户端web服务自定义的端口号
subdomain_host = frp.abc.com #自定义二级域名
privilege_token = xxxx #token验证(可不加)
#控制面板
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = admin
#日志
log_file = ./frps.log
log_level = info
log_max_days = 3
[web1]
type = http
subdomain = web1
auth_token = XXX
[web2]
type = http
subdomain = web2
auth_token = XXX
##Linux客户端安装
wget https://github.com/fatedier/frp/releases/download/v0.13.0/frp_0.13.0_linux_amd64.tar.gz #下载frp
tar -zxvf frp_0.13.0_linux_amd64.tar.gz #解压
cd frp_0.13.0_linux_amd64 #进入目录
rm -rf frps_full.ini frps frps.ini #删除frps相关的文件,frps属于服务端
vi frpv.ini #编辑frps配置文件
./frpc -c ./frpc.ini #启动frpc
frpc.ini
[common]
server_addr = x.x.x.x #远程服务器地址
server_port = 7000
privilige_token = XXX #token验证(服务器加了就加这)
[web1]
type = http
local_port = 3000
local_ip = 127.0.0.1 #如果绑定的是本机IP的话,这里改成本机IP即可,此行也可忽略不加,默认为127.0.0.1
subdomain = web1
##配置服务器上的Nginx 让frp用上80端口
server {
listen 80;
server_name *.frp.abc.com;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host:80;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_hide_header X-Powered-By;
}
}
此时,我们访问 web1.frp.abc.com 便可访问到本地的服务
windows下的frp的配置文件和linux下使一样的!
##使用screen让frp在后台运行
首先使用screen指令创建一个会话。
screen -dmS frp
然后进入这个会话
screen -r frp
删除一个screen窗口
screen -ls #查看要删除的screen 进程id
kill -9 xxx #杀掉该进程
screen -wipe #清除杀掉的screen
ps 1、frps和frpc一定要配套,要是哪个版本都是哪个版本
2、windows中 需要借助cmd
frpc.exe -c frpc.ini
3、如果frps启动没有问题,并且7500端口的仪表盘可以访问,frpc却连不上,那就把服务器上的防火墙关了把
##对外提供简单的文件访问服务 通过 static_file 插件可以对外提供一个简单的基于 HTTP 的文件访问服务。
#frpc.ini
[static_file]
type = tcp
remote_port = 6008
plugin = static_file
plugin_local_path = /root/www/brain_storming/dist
plugin_strip_prefix = static
plugin_http_user = abc
plugin_http_passwd = abc
通过浏览器访问 http://x.x.x.x:6008/static/ 来查看位于 /root/www/brain_storming/dist 目录下的文件,会要求输入已设置好的用户名和密码。
最后修改于 2019-08-12