[七月挑选]frp初使用
title: frp初使用
先starfatedier/frp,再开工。
什么是frp?
frp is a fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet. Now, it supports tcp, udp, http and https protocol when requests can be forwarded by domains to backward web services.
先看看中文文档
看完了,你要检查一下,你是否有公网IP的服务器一台,测试的电脑一台,如果符合这2个条件请往下看。
先下载Releases,我电脑用的是windows系统,服务器是linux系统,所以下载了frp_0.20.0_windows_amd64.zip和frp_0.20.0_linux_amd64.tar.gz文件。
把frp_0.20.0_linux_amd64.tar.gz弄到服务器中,这里我把文件放到/usr/local/frp:
tar -zxvf frp_0.20.0_linux_amd64.tar.gz
cd frp_0.20.0_linux_amd64
root@porschan:/usr/local/frp/frp_0.20.0_linux_amd64# sudo vi frps.ini
[common]
bind_port = 7000
vhost_http_port = 8080
dashboard_port = 7500
dashboard_user = DUSER_DUSER
dashboard_pwd = DPWD_DPWD
token = TOKEN_TOKEN
subdomain_host = chanchifeng.com
这里DUSER_DUSER为仪表台的账号,dashboard_pwd为仪表台的密码,TOKEN_TOKEN为frp凭票(若填写,则frpc中需要填写正确,才能正确连接,可删除,subdomain_host为一级域名,此处是chanchifeng.com)
重要!重要!重要!需要防火墙允许7000,7500,8080端口访问
sudo ufw allow 7000
sudo ufw allow 7500
sudo ufw allow 8080端口访问
重要!重要!重要!还要在服务器商家确认是否需要添加安全组,我的是阿里云,需要上面的端口!
以chanchifeng.com域名为例子:DNS域名解析需要 *.chanchifeng.com 解析上。
把frp_0.20.0_windows_amd64.zip弄到测试电脑中,并解压:
修改frpc.ini:
[common]
server_addr = SADDR_SADDR
server_port = 7000
token = TOKEN_TOKEN
[porschan-web]
# $type://$subdomain.chanchifeng.com:$local_port
# e.g. http://porschan.chanchifeng.com:8080/
type = http
local_port = 8080
subdomain = porschan
# 通过密码保护你的 web 服务
http_user = abc
http_pwd = abc
这里SADDR_SADDR为服务器的公网IP,TOKEN_TOKEN为frp凭票(若填写,则frpc中需要填写正确,才能正确连接,可删除,local_port为你测试电脑下面的端口,subdomain为其二级域名,访问路径为$type://$subdomain.chanchifeng.com:$local_port,则http://porschan.chanchifeng.com:8080/,这里我测试使用tomcat。
服务器启动:
root@porschan:/usr/local/frp/frp_0.20.0_linux_amd64# ./frps -c ./frps.ini
2018/06/15 00:57:14 [I] [service.go:128] frps tcp listen on 0.0.0.0:7000
2018/06/15 00:57:14 [I] [service.go:161] http service listen on 0.0.0.0:8080
2018/06/15 00:57:14 [I] [service.go:205] Dashboard listen on 0.0.0.0:7500
2018/06/15 00:57:14 [I] [root.go:190] Start frps success
客户端启动:
PS C:\Users\chan\Desktop\frp\frp_0.20.0_windows_amd64> .\frpc -c .\frpc.ini
2018/06/15 00:57:42 [I] [proxy_manager.go:300] proxy removed: []
2018/06/15 00:57:42 [I] [proxy_manager.go:310] proxy added: [porschan-web]
2018/06/15 00:57:42 [I] [proxy_manager.go:333] visitor removed: []
2018/06/15 00:57:42 [I] [proxy_manager.go:342] visitor added: []
2018/06/15 00:57:42 [I] [control.go:246] [720bc9bba0978b63] login to server success, get run id [720bc9bba0978b63], server udp port [0]
2018/06/15 00:57:42 [I] [control.go:169] [720bc9bba0978b63] [porschan-web] start proxy success
启动完成后,客户端会出现如下:
2018/06/15 00:57:44 [I] [service.go:305] client login info: ip [14.213.158.103:7797] version [0.20.0] hostname [] os [windows] arch [amd64]
2018/06/15 00:57:44 [I] [proxy.go:291] [720bc9bba0978b63] [porschan-web] http proxy listen for host [porschan.chanchifeng.com] location []
2018/06/15 00:57:44 [I] [control.go:335] [720bc9bba0978b63] new proxy [porschan-web] success
Tomcat的命令行启动:
PS D:\Program Files\Tomcat\apache-tomcat-7.0.40-windows-x64\apache-tomcat-7.0.40\bin> .\catalina.bat run
访问仪表盘:http://chanchifeng.com:7500
访问二级域名:http://porschan.chanchifeng.com:8080/
最后这里启动仅是命令行,还没把frp服务弄到服务器中,只要重启或者关闭xshell窗口就会关闭,这里我学习了,一定要看frp的作者的readme.md和下载下来的frpc_full.ini和frps_full.ini,里面都是宝藏,ini文件与旧版本有些不一样,要学好看文档和多多分析啊啊啊。后续中,我会在把它弄到服务中,敬请期待,哈哈哈哈。
本博客来自https://chanchifeng.com/2018/06/15/frp/
[七月挑选]frp初使用的更多相关文章
- [七月挑选]树莓派Raspberrypi上配置Git
title: 树莓派Raspberrypi上配置Git 树莓派Raspberrypi上配置Git. 开始 首先你得有一树莓派!!! 过程 查看自己树莓派的版本 pi@raspberrypi:~ $ u ...
- [七月挑选]IntelliJ IDEA常用设置
title: IntelliJ IDEA常用设置 设置idea的类注释快捷键 File -> Settings -> Live Templates 1.右边的 + -> Templa ...
- [七月挑选]Tomcat使用命令行启动之指定jdk版本
title: Tomcat使用命令行启动之指定jdk版本 准备好环境,jdk和tomcat. 主要步骤 1.找到Tomcat/bin/catalina.bat文件. 2.在文件前端添加如下. set ...
- [七月挑选]使用hexo建立主题,并发布到github
title: 使用hexo建立主题,并发布到github 根据hexo官网的概述和hexo官网的建站,搭建最开始的hexo博客. 1.环境预先安装好node.js和git 2.npm安装hexo: $ ...
- [七月挑选]使用idea创建spring boot 项目
title: 使用idea创建spring boot 项目 参考lindaZ的IntelliJ IDEA 创建spring boot 的Hello World 项目 1.Open IDEA,choos ...
- [七月挑选]windows上面的发音
title: windows上面的发音 开始 love.vbs: CreateObject("SAPI.SpVoice").Speak "I love YOU" ...
- [七月挑选]写个定时任务,从github下载代码到阿里ECS服务器上
title: 写个定时任务,从github下载代码到阿里ECS服务器上 根据前几篇博客中能自己创建一个博客,并在github.io上访问到自己的博客,但是如果自己有服务器,那怎么能定时获取github ...
- [七月挑选]优化hexo目录,使本地图片能显示出来
title: 优化hexo目录,使本地图片能显示出来 查看了一下从此蜕变作者的Hexo中添加本地图片,提炼了一些能优化本地图片存放及编写是图片查看的问题. 1.修改配置文件_config.yml 里的 ...
- Java8初体验(二)Stream语法详解
感谢同事[天锦]的投稿.投稿请联系 tengfei@ifeve.com 上篇文章Java8初体验(一)lambda表达式语法比 较详细的介绍了lambda表达式的方方面面,细心的读者会发现那篇文章的例 ...
随机推荐
- 消息 15135,级别 16,状态 8,过程 sp_addextendedproperty,对象无效。不允许有扩展属性,或对象不存在。
不知道网上为啥有那么多复制粘贴的文章,写点原创不好吗?堂而皇之的贴别人的文章有意思吗? 消息 15135,级别 16,状态 8,过程 sp_addextendedproperty,对象无效.不允许有扩 ...
- 译-使用Scroll Snapping实现CSS控制页面滚动
特别声明,本文翻译自@alligatorio的Control Page Scroll in CSS Using Scroll Snapping一文,受限于译者能力,译文或存在不足,欢迎大家指出.如需转 ...
- TiDB官方文档
TiDB官方文档: https://github.com/pingcap/docs-cn TiDB 整体架构 TiDB 集群主要包括三个核心组件:TiDB Server,PD Server 和 TiK ...
- loj#6034 「雅礼集训 2017 Day2」线段游戏
分析 区间李超树板子题 代码 #include<bits/stdc++.h> using namespace std; #define db double const int inf = ...
- 八、RF的内置变量
1.表示“空”的变量 ${EMPTY} 空 适用输入空的案例 2.表示“空格”的变量 ${SPACE} 空格,如果是需要5个空格可以这样写${SPACE*5} 3.目录的绝对路径 ${CURDIR} ...
- Win7下使用TortoiseGit设置保存密码
1. 打开 TortoiseGit 设置,编辑 .gitconfig 文件,如图: 2. 添加下面两行配置,如图: [credential] helper = store 3. 保存退出即可
- 测开之路一百三十八:会话管理之session
session管理和使用,需要用到flask的session模块和设置安全码:app.secret_key 比如列表页和编辑功能只能给admin用 列表页 编辑页 添加session 登录成功时,把u ...
- 非GUI模式运行Jmeter脚本
一.应用场景 日常测试过程中发现,在大数量并发时,jmeterGUI界面经常宕机.卡死,在这种情况下我们就需要使用命令行来执行脚本了(非GUI模式). 二.命令行模式优点 1.节约系统资源,无需启动界 ...
- Linux下编译安装Python-3.6.5
1.下载Python-3.6.5安装包 在Python官网(https://www.python.org/downloads/)下载对应的安装包,选择3.6.5的linux版本,如下图: 2.将安装包 ...
- CMakeLists.txt中使用循环
编译一个安卓下的so,此so依赖其他的库,通过循环简化操作 set(UVC_LIBS UVCCamera uvc usb100 jpeg-turbo1500) FOREACH(UVC_LIB ${UV ...