最新消息:七维网络改版啦,域名www.7dwww.com

frp搭建笔记

网络技术 admin 1882浏览 0评论

目标

家里路由器插了一个移动硬盘,想在单位的电脑访问移动硬盘中的文件,一开始用的zerotier,但是因为单位是电信宽带,家里是联通宽带,虽然架设了moon服务器但是还没有解决跨运营商延迟丢包各种问题,于是想用frp试一下。家里路由器是openwrt系统,单位电脑是win10系统,手里刚好有一些VPS服务器,国内阿里云、香港的轻量服务器,做为frp服务端。

frp下载

frp下载地址

https://github.com/fatedier/frp/releases

根据自己系统版本下载了win版单位电脑用,liunx版香港服务器用,openwrt是直接在web界面里的软件包里安装的。

windows服务器端搭建

我首先尝试在国内的阿里云服务器上安装服务端,服务器是windows系统,直接把windows版的文件传到服务器上,配置frps.ini文件

[common]
bind_port=7000 
#dashboard 用户名
dashboard_user =admin
#dashboard 密码
dashboard_pwd =admin
#dashboard 端口,启动成功后可通过浏览器访问如http://ip:7001
dashboard_port =7001
#设置客户端token,对应客户端有页需要配置
token =12345678
max_pool_count = 10
log_file = d:/frp/frps.log
log_level = info
log_max_days = 3

设置好frps.ini之后先去防火墙把端口开放了,因为我用的阿里云,还要去安全组里把端口开一下,然后就可运行服务器端程序了,要使用命令行工具,cmd或者powershell。

cd d:/frp  #先进入我的frp存放目录

frps.exe -c frps.ini

现在frps已经运行了,这个时候就可以通过浏览器登陆ip:7001看服务器的情况了,运行之后cmd或者powershell是不能关闭的,关了程序就关了,可以写一个bat文件加入到计划任务里,设置开机启动。

因为我的阿里云只有5M带宽,所以下载速度有点慢,只能达到400多K,后来就换到香港的轻量级服务器上了。

liunx服务端搭建

香港的服务器是centos系统,要用liunx版本的程序,把下载如的程序上传到服务器,我这里放到/usr/local/frp文件夹下。

配置文件frps.ini和win版本一样,这里就不再多说。开启防火墙和安全组端口之后就可以打开应用了。

开启命令:

./frps -c ./frps.ini

linux和windows一样,如果退出命令程序就会自动关闭,所以还要设置一下服务和自启动。

在程序目录下的systemd目录,将其中的 frps.service 文件复制到服务器的 /etc/systemd/system/ 目录下,并修改 ExecStart=/usr/local/frp/frps -c /usr/local/frp/frps.ini,特别提示,如果使用此方法启动 frps 服务,vhost_http_port 又想用 80 端口,需要将配置文件中的 User=nobody 注释掉或删掉,当然也可以使用 Nginx 端口转发,这里就不细说了。

设置 frps 服务开机启动:systemctl enable frps

启动 frps 服务:systemctl start frps

这样 frps 服务就可以在后台运行了,即使服务器关机重启也会自动启动。

opwnwrt客户端设置

如果是直接下载openwrt安装包,首先要搞清楚CPU是哪一种架构,这个可以在路由器web管理的状态里找到,也可以用命令行:cat /proc/cpuinfo,找到model name,这里就不再多说。

我是直接web管理中的软件包中安装的,本来还想安装web插件,后来发现在网上找的插件安装不了,还是要命令行配置,所以还不如直接下载安装包直接装来的简单。这里就要先找一下frpc.ini被放在了哪里,使用命令:cat /etc/config/frpc,就可以找到frpc.ini的位置,直接修改frpc.ini

[common]
server_addr = *.*.*.* #这里是你服务器的IP地址
server_port = 7000  #这个端口和服务器设置的端口保持一致
token = 12345678  #和服务器保持一致

[web]
type = stcp  #这里为了安全采用stcp模式
sk = 123456  #其它客户端保持sk相同
local_ip = 127.0.0.1
local_port = 80

[ssh]
type = stcp  #这里为了安全采用stcp模式
sk = 123456  #其它客户端保持sk相同
local_ip = 127.0.0.1
local_port = 22

#其它服务可以自己设置就不再多说

因为我是在web端安装的,直接在web管理里就启动服务了,也可以用命令:./frpc -c ./frpc.ini,这里和服务端是一样的,注意文件路径,可以把启动命令加入到启动项中,开机启动。

windows客户端配置

客户端程序和windows服务端程序都在一个压缩包里,frpc.exe和frpc.ini这两个文件就是,这里我把这两个文件放到c:/frp目录中。

还是先设置frpc.ini

[common]
server_addr = *.*.*.* #这里是你服务器的IP地址
server_port = 7000  #这个端口和服务器设置的端口保持一致
token = 12345678  #和服务器保持一致

[web_visitor]
type = stcp  
sk = 123456  #和openwrt客户端保持sk相同
role = visitor
server_name = web #openwrt中设置的服务名称
bind_addr = 127.0.0.1
bind_port = 6000 #端口随意

[ssh_visitor]
type = stcp  
sk = 123456  
role = visitor
server_name = ssh
bind_addr = 127.0.0.1
bind_port = 6001

这时候我们就可以远程管理opwnwrt路由器了,比如http://127.0.0.1:6000就是路由器的web管理地址,ssh管理端口是6001。

当然frp还有更多的一些功能,这里就不再多说。

转载请注明:七维网络 » frp搭建笔记

头像
发表我的评论
取消评论

Captcha Code

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址