frp详细步骤实现内网穿透

frp下载网址:Releases · fatedier/frp · GitHub

前提:准备好外网服务器和内网服务器

下载frp后解压缩,需要注意的是解压的frp文件夹中有两种类型的文件,frpc开头的是内网客户端的配置,frps开头的是外网服务器端的配置,在外网服务器端可以删除frpc开头的文件,内网客户端可以删除frps开头的文件。

一、外网服务器端配置

进入解压好的目录,打开frps.ini配置文件,添加内容:

[root@serIKoFZWV2me frp_0.51.2_linux_amd64]# cat frps.ini 
[common]
#默认端口7000,客户端和服务端通信的端口,可以不用修改
bind_port = 7000
#http服务监听的端口,即frp服务端向外部暴露出去的端口
vhost_http_port = 80
#token令牌,与客户端要一致,随便自己设置
token = 8GpRJrMkM5yLYD*r%fP7hnA#ZtmNSBBGNUub4s$@79rDXyt2UHZ7ETRR^HxU2jTDJt!#9CD#7NF^B9VNseejFg#BKDsNb6uq5#TgzsgcxWfxL8KeQTPJ4z&fbGqxGG8@

#frp的web管理控制台的用户名和密码,7500是默认端口,可以通过服务端ip+7500端口登录
dashboard_port = 7500
#frp管理页面的账密,随意设置
dashboard_user = admin
dashboard_pwd = admin123

#日志
log_file = ./frps.log
log_max_days = 3

:wq

注:服务端的bind_port和客户端的server_port可以任意设置可用端口,但这两个值必须一致,vhost_http_port、dashboard_port可设置任意端口。

配置好外网服务器,后台启动:

[root@serIKoFZWV2me frp_0.51.2_linux_amd64]# ./frps -c ./frps.ini  &

查看后台进程,命令 fg 进程id 为调后台进程到前台,命令 bg 进程id 为把jobs的进程放后台运行。

[root@serIKoFZWV2me frp_0.51.2_linux_amd64]# jobs
[1]+  Running                 ./frps -c ./frps.ini &
[root@serIKoFZWV2me frp_0.51.2_linux_amd64]# jobs 1

访问服务器地址可显示frp的管理控制台

 接下来,是配置客户端的配置。

二、内网服务器配置

首先是下载frp压缩包,或者上传并解压frp压缩包,打开frpc.ini配置文件,添加配置:

[root@localhost frp_0.51.2_linux_amd64]# vi frpc.ini 
[common]
#云服务器公网IP
server_addr = 154.12.16.168
#与服务端通信的端口,与frps.ini文件中的bind_port一致,默认不变
server_port = 7000
#token令牌,与服务端要一致,随便自己设置
token = 8GpRJrMkM5yLYD*r%fP7hnA#ZtmNSBBGNUub4s$@79rDXyt2UHZ7ETRR^HxU2jTDJt!#9CD#7NF^B9VNseejFg#BKDsNb6uq5#TgzsgcxWfxL8KeQTPJ4z&fbGqxGG8@
#日志
log_file = ./frpc.log
log_max_days = 3

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

[http-test]
type = http
local_ip = 127.0.0.1
local_port = 80
custom_domains = 154.12.16.168
:wq

至此配置完成客户端,启动:

[root@localhost frp_0.51.2_linux_amd64]# ./frpc -c frpc.ini &

最后浏览器地址栏输入外网服务器ip访问,如果访问失败可查看log日志或禁用防火墙,即可显示,

 心得:

我部署的是discuz,经过frp完美实现内网穿透,在此项目中,我采用的技术是docker容器部署,在备份到另一台服务器时需要修改三个配置文件才能访问本地的Mysql数据库。

这三个配置文件分别是:

/var/www/html/config/config_global.php 

/var/www/html/config/config_ucenter.php

/var/www/html/uc_server/data/config.inc.php

因为没有采用挂在数据卷的方法,只是把容器内的文件复制到环境外,修改后才复制进容器内部:

 

#从docker容器内复制文件到容器外
docker cp 9cc485b86b01:/var/www/html/config/config_global.php ./
docker cp 9cc485b86b01:/var/www/html/config/config_ucenter.php ./
docker cp 9cc485b86b01:/var/www/html/uc_server/data/config.inc.php ./

#从docker容器外复制文件进容器内
docker cp ./config_global.php  9cc485b86b01:/var/www/html/config/
docker cp ./config_ucenter.php  9cc485b86b01:/var/www/html/config/
docker cp ./config.inc.php  9cc485b86b01:/var/www/html/uc_server/data/

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值