0001_20190327_使用frp搭建内网穿透
1. 环境
a) 公网服务器为阿里云的ECS Windows 2008 R2服务器, 有公网IP地址; 这个作为frp的服务器
b) 内网是开发服务器, Centos 7
c) 在https://github.com/fatedier/frp/releases 下载最新的frp包 ;当前最新的是0.25.3(2019年3月27日21:55:28)
d) 其中windows_amd64对应的就是windows 64位系统; linux_amd64对应的就是64位linux系统;
2. 先说配置windows服务器端:
a) 把frp_0.25.3_windows_amd64.zip复制到服务器上, 解压到C:\frp的目录下, 没有用的删除, 下图:
b) 修改frps.ini文件, 输入以下内容:
[common]
bind_addr = 0.0.0.0
bind_port = 7000
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = admin
log_file = ./frps.log
log_level = error
token = 12345678
下图:
c) 管理员命令打开cmd, 输入下图命令回车, 启动frps服务:
C:\Users\Administrator>c:\frp\frps.exe -c c:\frp\frps.ini
d) 打开任务管理器, 看看frps.exe启动没有
e) 使用浏览器访问公网IP地址:7500,在输入admin/admin后将看到下图界面:
2. Frp服务器端配置完毕; 接下来配置frp客户端, 因为客户端是内网用的Centos 7开发服务器, 所以需要先下载frp_0.25.3_linux_amd64.tar.gz; 使用xftp工具上传到指定目录:
a) 这里上传到/thisdirsavfile/, 这个目录是我自己建的,当然使用wget也可以, 下图:
b)解压到指定目录:
[root@localhost thisdirsavfile]# mkdir /usr/frp
[root@localhost thisdirsavfile]# tar zxvf frp_0.25.3_linux_amd64.tar.gz -C /usr/frp
c) 编辑frpc.ini文件:
[root@localhost frp]# vim frp_0.25.3_linux_amd64/frpc.ini
#输入下面的内容
[common] server_addr =你的IP地址 server_port = 7000 token = 12345678(这个token一定要和服务器的对应) [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000
d) 启动客户端的frp服务:
[root@localhost frp]# cd frp_0.25.3_linux_amd64/
[root@localhost frp_0.25.3_linux_amd64]# ./frpc -c ./frpc.ini
2019/03/28 03:45:14 [I] [service.go:221] login to server success, get run id [8a139b4ec11a8e1b], server udp port [0 2019/03/28 03:45:14 [I] [proxy_manager.go:137] [8a139b4ec11a8e1b] proxy added: [ssh] 2019/03/28 03:45:14 [I] [control.go:144] [ssh] start proxy success
e)使用Xshell进行测试连接:
i. 新建会话
ii. 这里是输入内网linux服务器的用户名和密码:
iii.输入完密码之后即可穿透成功
f) 注意的问题:
i. 因为是阿里云的服务器, 所以一定要在安全组放行frp使用到的端口
ii. 我这里内网开发的服务器, 所以直接把Centos 的防火墙关了, 端口放行的问题根据自己的实际情况
iii. 注意服务端和客户端frp的token一定要对应
iv. 停止windows的服务器端, 到任务管理器中把frps.exe结束任务
v. 停止linux上的frpc, 则使用下面的命令:
[root@localhost frp_0.25.3_linux_amd64]# ps -aux|grep frp
root 793 0.0 0.0 112724 988 pts/1 S+ 04:39 0:00 grep --color=auto frp
root 32303 0.0 0.0 112648 12332 pts/0 Sl+ 04:22 0:00 ./frpc -c ./frpc.ini
[root@localhost frp_0.25.3_linux_amd64]# ps -aux|grep frp|grep -v grep
root 32303 0.0 0.0 112648 12332 pts/0 Sl+ 04:22 0:00 ./frpc -c ./frpc.ini
[root@localhost frp_0.25.3_linux_amd64]# kill -9 32303
vi. 作为后台服务启动, 如果不作为后台服务启动, 你的ssh一关闭, 服务也关闭了
[root@localhost ~]# nohup /usr/frp/frp_0.25.3_linux_amd64/frpc -c /usr/frp/frp_0.25.3_linux_amd64/frpc.ini
vii. 使用脚本设置开机启动, 并后台运行
[root@localhost ~]# vim /usr/lib/systemd/system/frpc.service [Unit]
Description=frpc
After=network.target [Service]
TimeoutStartSec=30 ExecStart=/usr/frp/frp_0.25.3_linux_amd64/frpc -c /usr/frp/frp_0.25.3_linux_amd64/frpc.ini
ExecStop=/bin/kill $MAINPID [Install]
WantedBy=multi-user.target
viii. 执行脚本命令:
[root@localhost ~]# systemctl enable frpc --开机启动
[root@localhost ~]# systemctl start frpc --启动frpc
[root@localhost ~]# systemctl stop frpc --停止frpc
iv. token错误:
[root@localhost frp_0.33.0_linux_amd64]# ./frpc -c ./frpc.ini
2020/06/24 15:35:02 [E] [service.go:273] token in login doesn't match token from configuration
2020/06/24 15:35:02 [W] [service.go:101] login to server failed: token in login doesn't match token from configuration
token in login doesn't match token from configuration
不知道怎么回事, 后来把 frpc.ini里的token直接删了, 就可以了
0001_20190327_使用frp搭建内网穿透的更多相关文章
- 使用frp进行内网穿透,实现ssh远程访问Linux服务器
搭建一个完整的frp服务链需要: VPS一台(也可以是具有公网IP的实体机) 访问目标设备(就是你最终要访问的设备) 简单的Linux基础(如果基于Linux配置的话) 我这里使用了腾讯云服务器作为服 ...
- 疫情之下,使用FRP实现内网穿透,远程连接公司电脑进行办公
当前情况下,经常会有需要到公司电脑进行一些操作,比如连接内网OA,数据库或者提交文档.为了减少外出,将使用frp进行内网穿透的方法进行一个说明. 前提条件 1. 一台拥有公网 IP 的设备(如果没有, ...
- 基于frp的内网穿透实例4-为本地的web服务实现HTTPS访问
原文地址:https://wuter.cn/1932.html/ 一.想要实现的功能 目前已经实现将本地的web服务暴露到公网,现想要实现https访问.(前提:已经有相应的证书文件,如果没有就去申请 ...
- frp实现内网穿透
frp实现内网穿透 目标 通过外网访问内网设备,本文中实现通过手机的移动流量,可以访问到树莓派设备 设备准备 需要被访问的设备(本文中使用Raspberry Pi`).公网IP设备(本文中使用阿里云 ...
- frp+nginx内网穿透
frp+nginx内网穿透 背景:自己有台内网Linux主机,希望被外网访问(ssh.http.https): 准备工作 内网Linux主机-c,可以访问c主机和外网的主机-s(windows/lin ...
- frp 用于内网穿透的基本配置和使用
frp 用于内网穿透的基本配置和使用 今天是端午节,先祝端午安康! frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP.UDP.HTTP.HTTPS 等多种协议.可以将内网服务以安全.便 ...
- 分享下超实用的用skura frp做内网穿透的经验
操作目的: 使无公网ip的主机能被外网访问,实现ssh对服务器的远程管理 硬件准备: 1.服务端:skura frp主机(skura frp 免费提供,有待创建) 2.客户端:接在无线路由器(内网)上 ...
- 使用FRP做内网穿透
Github地址:https://github.com/fatedier/frp 什么是FRP? frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 h ...
- 如何使用 frp 实现内网穿透
这有一个专注Gopher技术成长的开源项目「go home」 背景 作为一名程序员,家里多多少少会有一些落了灰的电脑,如果把闲置的电脑变成服务器,不仅有良好的配置,还能用来做各种测试,那就再好不过了. ...
随机推荐
- .netcore3.1使用log4net/nlog记录日志
.netcore3.1使用log4net/nlog记录日志 .netcore3.1与2.x之间很是有不少差异的.本来想通过ctrl+c,ctrl+v将在2.2中实现的简单日志记录搬到.netcore3 ...
- 用spring-retry注解自动触发重试方法
原文地址:https://www.jianshu.com/p/ee02d6125113 需求背景: 有些时候我们再调用一些第三方服务的时候,从第三方那边拉数据. 但是第三方服务不是100%稳定的,有些 ...
- sublime中插件
AllAutocomplete Emmet
- Ubuntu 18.04 Java JDK/JRE 安装命令
安装默认版本 sudo apt install default-jdk Java 8 sudo apt install openjdk-8-jdk 如果我们在服务器上安装了多个Java版本,我们可以使 ...
- 第三方库文件Joi对数据进行验证的方法以及解决Joi.validate is not a function的问题
Joi:javaScript对象的规则描述语言和验证器 1.npm install joi@14.3.1 2.建立joi.js文件 3.导入第三方包joi const Joi = require('j ...
- Interface(接口分享)第一节
一.接口初探 有时候我们传入的参数可能会包含很多的属性,但是编译器只会检查那些必须的属性是否存在,以及类型是否匹配,而咱们要讲的接口其实就是用来描述下面这个例子里的结构,对于接口传入的数据咱们只关心它 ...
- http 请求体数据--ngx
HTTP包体的长度有可能非常大,不同业务可能对包体读取 处理不相同, 比如waf, 也许会读取body内容或者只是读取很少的前几十字节.所以根据不同业务特性,对http body 数据包处理方式不同, ...
- Socket accept 简要分析
accept 用于从指定套接字的连接队列中取出第一个连接,并返回一个新的套接字用于与客户端进行通信,示例代码如下 #include <sys/types.h> /* See NOTES * ...
- Flink Native Kubernetes实战
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- Python生成csv中文乱码解决办法
前言 在Linux下面用python进行数据处理,然后输出为csv格式,如果没有中文一切正常,但是如果有中文,就会出现乱码的问题,本篇将讲述怎么处理这个问题 处理过程 原始代码 #!/usr/bin/ ...