一直都用ddns还是能满足日常的使用需要,但是有时候需要特殊设定ddns局限性很大,之前一直听寥寥,鸟董还有很多MJJ推荐折腾frp这个东西,o(︶︿︶)o 唉主要是懒一直没折腾,今天寥寥写出了教程我就折腾了,简单方便,我就顺道转来。
1. 服务器端安装说明
wget --no-check-certificate https://raw.githubusercontent.com/clangcn/onekey-install-shell/master/frps/install-frps.sh -O ./install-frps.sh
chmod 700 ./install-frps.sh
./install-frps.sh install
安装过程中会有提示一些的参数,我们设置好就可以了!
Please input frps bind_port [1-65535](Default Server Port: 5443):
#输入frp提供服务的端口,用于服务器端和客户端通信,按Enter键表示默认5443,否则手动输入新端口
Please input frps vhost_http_port [1-65535](Default vhost_http_port: 80):
#输入frp进行http穿透的http服务端口,按Enter键表示默认80,否则手动输入新端口,一般不建议默认80
Please input frps vhost_https_port [1-65535](Default vhost_https_port: 443):
#输入frp进行https穿透的https服务端口,按Enter键表示默认443,否则手动输入新端口
Please input frps dashboard_port [1-65535](Default dashboard_port: 6443):
#输入frp的控制台服务端口,用于查看frp工作状态,按Enter键表示默认6443,否则手动输入新端口
Please input dashboard_user (Default: admin):
#输入frp提供服务端的账户
Please input dashboard_pwd (Default: H5sBmmId):
#输入frp提供服务端的密码
Please input privilege_token (Default: WEWLRgwRjIJVPx2kuqzkGnvuftPLQniq):
#输入frp服务器和客户端通信的密码,默认是随机生成的,按Enter键表示按默认来,否则手动输入。frpc客户端需要这个接头暗号
Please input frps max_pool_count [1-200](Default max_pool_count: 50):
#设置每个代理可以创建的连接池上限,默认50
Please select log_level #####
1: info
2: warn
3: error
4: debug
#####################################################
Enter your choice (1, 2, 3, 4 or exit. default [1]):
#设置日志等级,4个选项,默认是info
Please input frps log_max_days [1-30]
(Default log_max_days: 3 day):
#设置日志保留天数,范围是1到30天,默认保留3天。
##### Please select log_file #####
1: enable
2: disable
#####################################################
Enter your choice (1, 2 or exit. default [1]):
#设置是否开启日志记录,默认开启,开启后日志等级及保留天数生效,否则等级和保留天数无效
安装完成以后会有总体的提示
Congratulations, frps install completed!
==============================================
You Server IP : *.*.*.* #你的服务器IP,各不相同
Bind port : 5443
Dashboard port : 6443
vhost http port : 80
vhost https port: 443
Privilege token : WEWLRgwRjIJVPx2kuqzkGnvuftPLQniq
Max Pool count : 50
Log level : info
Log max days : 3
Log file : enable
==============================================
常用命令包括:
./install-frps.sh update #版本更新
./install-frps.sh uninstall #卸载frps
frps start #服务启动
frps stop #服务停止
frps restart #重启服务
frps status #状态
frps config #参数设置
frps version #frps版本
至此,frp 服务端 frps 的安装已经成功,frps 会随服务器自动启动,无需手动设置。
小提示:记得检查 VPS 服务器是否开放以上涉及的端口,如未开放,请手动添加开放端口!
此时访问 http://你的服务器 IP:6443 可以查看 frp 各项状态,如下图所示。如果打不开此页面,很可能是服务器的 6443 端口没有开启。
2. 客户端安装
由于我们用的路由lede有frp功能的插件,可以界面简单设置也可以自定义配置设置,看个人喜欢,如果是在linux系统或者树莓等建议用自动配置文件设置。
把下面的参数修改成你自己的参数,然后放到自定义配置里面去,记得把注释去掉不然会出错!
[common]
server_addr = *.*.*.* #已安装好frp服务端frps的服务器Ip地址
server_port = 5443 #与之前frp服务端的设置保持一致,即Bind Port
token = ************** #与之前安装服务端时给出的token保持一致
pool_count = 5
tcp_mux = true
login_fail_exit = true
protocol = tcp
heartbeat_interval = 10
heartbeat_timeout = 90
[web1]
type = http
local_ip = 192.168.1.1 #表示要穿透的为路由器IP
local_port = 80
use_encryption = true
use_gzip = true
custom_domains = *.*.* #表示远程访问192.168.1.1需要的域名,可以为二级域名。如果没有域名建议提前申请,并指向服务器所在IP
http_user = *** #可选项,随便填写,表示访问域名时需要用这个用户名验证通过后,才能连接到内网,加了一道防护,更安全
http_pwd = ****** #可选项,随便填写,同上,用户名对应这个密码,输入正确才能连接到内网
[web2]
type = http
local_ip = 192.168.1.4 #按需填写,填写需要远程访问的第二个内网设备IP
local_port = 80
use_encryption = true
use_gzip = true
custom_domains = *.*.* #表示远程访问192.168.1.4需要的域名,需要与上文的域名有所区别
http_user = *** #可选项,用户名
http_pwd = ****** #可选项,用户密码
[RDP3389]
type = tcp
local_ip = 192.168.1.2
local_port = 3389
remote_port = 5389
[smb]
type = tcp
local_ip = 192.168.1.3
local_port = 445
remote_port = 10000
log_file = /dev/null
log_level = info
log_max_days = 3
文章评论
客户端是windows怎么操作呢?
@antior win 我很少用 你可以看看官方的配置文档
https://github.com/fatedier/frp/blob/master/README_zh.md
官方有WIN客户端
https://github.com/fatedier/frp/releases
相信你一看就会了
现在可以用了,但是不知道为啥stcp和xtcp的visitor端总是有问题,能够和服务器建立连接,但是和sk相同的客户端连接就会报错。。
大佬,ip被封,frp穿透能否像v2ray一样进行cloudflare中转?多谢!
@kids 只要你不觉得cf慢,当然可以呀