因为工作的原因,平时都是用linux系统部署软件,但是我的IP代理服务器是windows系统的,所以这两种系统我都研究了一下如何搭建frp内网穿透服务端。
windows服务端/客户端下载地址:点此下载
linux服务端和windows客户端下载地址:点此下载
1.把压缩包解压后,将以下配置复制到服务端配置文件,即frps.ini文件
[common]
bind_addr = 0.0.0.0
#服务端运行端口,可以自定义1-65535之间即可
bind_port = 9527
#dashboard WEB控制台登录用户名,可以自定义
dashboard_user = admin
#dashboard WEB控制台登录密码
dashboard_pwd = 12345
#dashboard WEB控制台端口,可以自定义1-65535之间即可,启动后通过浏览器访问如http://ip:8080
dashboard_port = 8080
#设置客户端token,对应客户端的token配置,作用类似密码验证,可以自定义
token = 123456789
4.在命令提示符中输入cd 路径后回车,在输入 frps.exe -c frps.ini后回车
备注:服务器开放防火墙TCP的8080,9090,9527端口
CentOs 7.3服务端部署
1.使用CRT或者Xshell等工具连上服务器后,切换至/usr/local路径
cd /usr/local
1.在 /usr/local目录下,输入rz并按下回车键,选择安装包进行上传
rz
3.解压安装包
tar -zxvf frp_0.37.1_linux_amd64.tar.gz
4.重命名解压后的目录,方便后面填写路径
mv frp_0.37.1_linux_amd64 frp
5.编辑frps.ini文件
vi /usr/local/frp/frps.ini
6.先按下"i"键进入输入模式,将以下内容复制进去,,按下"esc"键,再按下":"键,输入"wq!"后回车。
[common]
bind_addr = 0.0.0.0
#服务器代理端口
bind_port = 9527
#与客户端进行校验的令牌
token = 123456789
#控制面板的账号
dashboard_user = admin
#控制面板的密码
dashboard_pwd = admin123
#控制面板端口号
dashboard_port = 8080
7.启动frp服务
./frps -c ./frps.ini
8.添加systemd配置文件,不然每次服务器重启后都要手动启动服务
vim /usr/lib/systemd/system/frps.service
9.先按下"i"键进入输入模式,将以下内容复制进去,,按下"esc"键,再按下":"键,输入"wq!"后回车。
[Unit]
Description=frps
After=network.target
[Service]
TimeoutStartSec=30
ExecStart=/usr/local/frp/frps -c /usr/local/frp/frps.ini
ExecStop=/bin/kill $MAINPID
[Install]
WantedBy=multi-user.target
10.设置开机启动
systemctl daemon-reload
systemctl enable frp
11.启动frp服务端
systemctl start frp
12.检查服务是否运行起来,看下有没有返回值,有的话,说明成功了。成功了最好重启服务器再验证一下
ps -aux | grep frps
备注:服务器开放防火墙TCP的8080,9090,9527端口
客户端配置
1.把压缩包解压后,将以下配置复制到客户端配置文件,即frpc.ini文件,如果有多台PC需要远程,就把remote_port改成不一样的,比如A电脑配置为9090,B电脑配置为9091,C电脑配置为9092........
[common]
# 配置服务器IP地址
server_addr = 这里填服务器IP
#配置服务端监听的端口,与服务端的bind_port端口保持一致
server_port = 9527
#服务端配置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 =9090
2.在命令提示符中执行 frpc.exe -c frpc.ini即可,操作步骤和服务端配置步骤2-3相似
最后就可以通过服务器IP+端口远程到内网的电脑上了,例如我映射的端口是9090,那就是服务器IP:9090进行访问。
Windows客户端/服务端开机自启
方法一:
1.编辑文件winsw.xml,将路径替换为文件所在路径,如果是服务端就把frpc.exe更改为frps.exe
2.管理员模式运行命令提示符,切到到文件路径后,执行 winsw.exe install
4.操作指令
winsw.exe install //注册
winsw.exe uninstall //卸载
winsw.exe start //启动
winsw.exe stop //停止
winsw.exe restart //重启
winsw.exe status //查看状态
方法二:
1.在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
2.加start.bat添加进开机服务,右键【此电脑】-【管理】-【任务计划程序】-【创建任务】,并按如下操作,然后确定即可。