部署
foliant
利用httpd做远程yum源的配置
利用yum做多个组件源
linux环境上传github代码
vncserver可视化
centos7可视化
metabase安装
linux图形化安装
vm使用桥接连接网络
ElasticSearch使用
nginx多级构建
docker多架构构建镜像
svn和gitlab-ce迁移
代理搭建
GNS3部署使用
sftp搭建
Jenkins部署
yum源配置
js学习
通过一个公网ip联通一个vpc下所有服务
frp远程搭建
html语法
win下本地非80端口dns域名解析配置
利用nginx实现html跨域请求第三方接口
搭建自己的邮箱系统
docker构建mrdoc
内网穿透-利用nps实现本地web服务在公网访问
ipsec
-
+
首页
frp远程搭建
## frp远程搭建 - what: frp远程搭建 - where: centos7、x86 - when: 2022-3-16 - who: jiaorongtao - why: 记录 - version: 0.37.1 - how: ### 1.前提 frp(项目主页) 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。名称其实就是使用了 Fast Reverse Proxy 的首字母缩写.本次主要是通过一个eip及服务器实现家里电脑远程连接,类似向日葵、todesk等软件。 ```bash #需要服务器随便开放3个端口,如(9011、9012、9013) 9011:服务器代理端口bind_port 9012:服务器控制面板端口号dashboard_port 9013:客户端映射到服务端的端口范围(公网服务器可用的端口,1-66535)remote_port ``` ### 2.下载安装包 windows服务端/客户端下载地址:[点此下载](https://starcheng.oss-cn-hongkong.aliyuncs.com/frp_0.36.2_windows_amd64.zip) ```bash https://starcheng.oss-cn-hongkong.aliyuncs.com/frp_0.36.2_windows_amd64.zip ``` linux服务端和windows客户端下载地址:[点此下载](https://starcheng.oss-cn-hongkong.aliyuncs.com/linux服务端和windows客户端.zip) ```bash https://starcheng.oss-cn-hongkong.aliyuncs.com/linux服务端和windows客户端.zip ``` ### 3.服务端 #### 3.1 启动 ```bash [root@JRT frp]# pwd /data/frp [root@JRT frp]# vim frps.ini [root@JRT frp]# cat frps.ini [common] bind_addr = 0.0.0.0 #服务器代理端口 bind_port = 9011 #与客户端进行校验的令牌 token = 123456789 #控制面板的账号 dashboard_user = admin #控制面板的密码 dashboard_pwd = 123456 #控制面板端口号 dashboard_port = 9012 [root@JRT frp]# ls frpc frpc_full.ini frpc.ini frps frps_full.ini frps.ini LICENSE systemd #启动frp服务端 [root@JRT frp]# ./frps -c ./frps.ini 2022/03/16 21:05:05 [I] [root.go:200] frps uses config file: ./frps.ini 2022/03/16 21:05:05 [I] [service.go:192] frps tcp listen on 0.0.0.0:9011 2022/03/16 21:05:06 [I] [service.go:294] Dashboard listen on 0.0.0.0:9012 2022/03/16 21:05:06 [I] [root.go:209] frps started successfully ``` #### 3.2后台启动 ```bash [root@JRT frp]# vim /usr/lib/systemd/system/frps.service [root@JRT frp]# cat /usr/lib/systemd/system/frps.service [Unit] Description=frps After=network.target [Service] TimeoutStartSec=30 ExecStart=/data/frp/frps -c /data/frp/frps.ini ExecStop=/bin/kill $MAINPID [Install] WantedBy=multi-user.target [root@JRT frp]# [root@JRT frp]# pwd /data/frp [root@JRT frp]# ls frpc frpc_full.ini frpc.ini frps frps_full.ini frps.ini LICENSE systemd #开机自启动 [root@JRT frp]# systemctl daemon-reload [root@JRT frp]# systemctl enable frps Created symlink from /etc/systemd/system/multi-user.target.wants/frps.service to /usr/lib/systemd/system/frps.service. [root@JRT frp]# systemctl start frps #查服务 [root@JRT frp]# ps -aux | grep frps root 14092 0.0 0.4 718556 16696 pts/0 Sl+ 21:05 0:00 ./frps -c ./frps.ini root 17769 0.0 0.0 115928 1004 pts/1 S+ 21:18 0:00 grep --color=auto frps [root@JRT frp]# ``` **测试** ![](/media/202203/2022-03-16_220416_773793.png) ### 4.客户端 ![](/media/202203/2022-03-16_220443_647881.png) ```bash cat frpc.ini [common] # 配置服务器IP地址 server_addr = 1.117.176.116 #配置服务端监听的端口,与服务端的bind_port端口保持一致 server_port = 9011 #服务端配置token,将服务端配置的token复制到此处 token = 123456789 pool_count = 5 #这里是配置端口范围转发 [range:services] #类型为tcp type = tcp #本地ip地址通常为127.0.0.1 local_ip = 127.0.0.1 #本机的远程端口,默认为3389 local_port = 3389 #映射到服务端的端口范围(公网服务器可用的端口,1-66535) remote_port =9013 ``` ```bash PS D:\frp> .\frpc.exe -c frpc.ini 2022/03/16 21:31:27 [I] [service.go:304] [c337e6da50f01cf0] login to server success, get run id [c337e6da50f01cf0], server udp port [0] 2022/03/16 21:31:27 [I] [proxy_manager.go:144] [c337e6da50f01cf0] proxy added: [services_0] 2022/03/16 21:31:27 [I] [control.go:180] [c337e6da50f01cf0] [services_0] start proxy success ``` 通过win的"mstsc"服务进行测试 ![](/media/202203/2022-03-16_220609_457837.png) ![](/media/202203/2022-03-16_220622_609115.png) ![](/media/202203/2022-03-16_220635_255632.png) ![](/media/202203/2022-03-16_220700_103321.png) ![](/media/202203/2022-03-16_220948_590758.png) ### 5.客户端后台执行 **方法一:** ``` cat winsw.xml #修改<executable>D:\frp\frpc.exe</executable>为真实地址 <service> <id>frp</id> <name>frp</name> <description>frpc</description> <executable>D:\frp\frpc.exe</executable> <arguments>-c frpc.ini</arguments> <onfailure action="restart" delay="60 sec"/> <onfailure action="restart" delay="120 sec"/> <logmode>append</logmode> <logpath>logs</logpath> </service> ``` 管理员模式运行命令提示符,切到到文件路径后,执行 "winsw.exe install" ``` PS D:\frp> .\winsw.exe install 2022-03-16 22:18:24,756 INFO - Installing service 'frp (frp)'... 2022-03-16 22:18:24,769 INFO - Service 'frp (frp)' was installed successfully. PS D:\frp> ``` **方法二:** 在frp 目录下,新建一个start.bat的文件,复制下面内容进去,最下面“D:\FRP\”是绝对路径,根据自己的情况进行替换,如果是服务端就把frpc.exe更改为frps.exe ``` @echo off if "%1" == "h" goto begin mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit :begin D:\frp\frpc.exe -c D:\frp\frpc.ini ``` 加start.bat添加进开机服务,右键【此电脑】-【管理】-【任务计划程序】-【创建任务】,并按引导进行操作,然后确定即可。 ### 6.frp命令 ``` winsw.exe install //注册 winsw.exe uninstall //卸载 winsw.exe start //启动 winsw.exe stop //停止 winsw.exe restart //重启 winsw.exe status //查看状态 ``` ### 7.参考 ``` https://starcheng.xyz/791.html ```
JRT
2022年3月16日 22:30
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码