总之就是帮你把局域网的电脑转发出来,转发的可以是数据库端口,也可以是远程桌面端口。

 

第一步:

准备一个公网云服务器,阿里腾讯百度都可以,我对阿里没什么好感所以用的腾讯云。

可以是Linux也可以是Windows,一般情况下是用Ubuntu。(我一直不喜欢CentOS)

登入用户并下载可执行文件包:

wget https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_amd64.tar.gz

以上命令仅为示例,实际Get的可执行文件包可能根据更新迭代、硬件环境有所变动。如果你的服务器是ARM则就需要Get ARM的包。

建议先访问:Releases · fatedier/frp · GitHub 查看FRP更新情况。

解压并重命名:

tar -xzf frp_0.37.0_linux_amd64.tar.gz
mv frp_0.37.0_linux_amd64 frp37

 

第二步:

修改服务端 FRP 配置文件:

cd frp37
vim frps.ini

vim 打开后可以看到以下内容:

[common]
bind_port = 7000

默认端口为 7000,不过几乎没有人会用默认的。同时为了安全,务必修改端口号并增加Token

[common]
bind_port = 7370


dashboard_user = admin
dashboard_pwd = demopwd123
dashboard_port = 7470


authentication_method = token
token = demotoken123456789

配置项详解:

bind_port 绑定端口号,给客户端访问的端口号
dashboard_user 管理员用户名
dashboard_pwd 管理员用户密码
dashboard_port 管理员端口 在web浏览器中登录,例如 http://123.124.125.126:7470
authentication_method 验证方式 一般使用 token
token 客户端登陆服务端所需要的token码,两边要一致。(废话)

第三步:

在服务器防火墙中放行服务端端口。例如你定义的端口号是7370,管理端口是7470,就要在云控制台当中的防火墙设置将这两个端口允许访问。

协议TCP,策略允许。稍后也要放行客户端映射过来的端口,否则外网只能访问FRP服务,不能访问FRP映射的客户端端口。

(小白不要觉得这里没有代码就可以跳过,少哪一步都不行!)

 

第四步:

在服务器上开启FRP服务并挂起。

登录服务器打开终端,找到你配置FRP的目录:

ls
cd frp37
screen -S frp
./frps -c ./frps.ini

命令行解析:

screen -S 新建终端 该终端在关闭后仍然执行

 到此服务端工作完成,但如果业务化使用务必将FRP注册为服务且添加守护。

 

第五步:客户端工作开始

首先假设你的云服务器地址为 123.124.125.126

我们以转发Windows远程桌面3389端口为例 

到 Releases · fatedier/frp · GitHub 下载 frp_0.37.0_windows_amd64.zip (具体哪个版本看自己需求,不要说啥就是啥)

解压进入目录,打开目录当中的 'frpc.ini' 这个配置文件,可以看到默认是这样的:

[common]
server_addr = 127.0.0.1
server_port = 7000

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

这时我们就要进行修改: 

[common]
server_addr = 123.124.125.126
server_port = 7370
token = demotoken123456789

[RDP]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 9550

命令行详解:

[common] 总配置
server_addr 提供FRP服务的外网服务器地址 就是你申请的云服务器公网地址
server_port 提供FRP服务的外网服务器端口 就是你刚刚配置的 bind_port
token 对应的token,服务端和客户端要一致
[RDP] 子配置名称根据自己实际情况随意,例如数据库就是[SQL],桌面就是[RDP]
type 协议类型
local_ip 本机IP,可以在网卡配置或路由器当中查看
local_port 要转发的本机端口,我们是远程桌面所以就是3389,SQLServer就是1433
remote_port 远程端口,供外网设备连接的端口,根据自己想法设置

第六步:

云服务器防火墙当中放行刚刚在客户机上设置的 remote_port 。

刚才设置的是9550,就允许连接9550。

放行后可以在客户机进入FRP客户端目录上打开Powershell运行看一下效果了:

 

./frpc.exe -c ./frpc.ini

 

在你的 iPad 上安装 Microsoft远程桌面,输入你的云服务器地址+转发端口号,也就是:

123.124.125.126:9550 (仅为演示)

连接输入凭据看下是否可以登录。

注意:Windows 需要是专业版以上SKU才会有远程桌面功能(也就是家庭版不行,除非有手段)。需要在计算机属性高级系统设置当中开启远程桌面访问。

同时为了安全,本机用户账户务必使用Microsoft在线账户登录并且开启“仅允许运行使用网络级别身份验证的远程桌面”。

【【【【RDP勒索病毒非常泛滥!】】】

开启以上设置,登录名就是你的Microsoft账户邮箱,密码就是Microsoft账户密码。

 

第七步:

包装客户机的FRPC客户端为Windows服务

下载工具:WinSW Releases · winsw/winsw · GitHub

将 winsw.exe 复制到 FRPC 客户端目录重命名为:FRP.Clinet.SW.exe。

同时新建文件 "FRP.Clinet.SW.xml" ,文件名必须和exe名字一样。

内容:

<service>
  <id>CloudServer.FRP.Client</id>
  <name>CloudServer FRP Client Service</name>
  <description>CloudServer FRP Client Service</description>
  <executable>frpc</executable>
  <arguments>-c frpc.ini</arguments>
  <logmode>reset</logmode>
  <startmode>Automatic</startmode>
</service>

然后在当前FRP客户端目录以管理员权限打开 Powersehll 执行安装:

.\FRP.Client.SW.exe install

然后就可以在 Windows 服务中看到一个叫 “CloudServer FRP Client Service” 的服务了,选择自动就会开机自启。


TRANSLATE with x

English

Arabic

Hebrew

Polish

Bulgarian

Hindi

Portuguese

Catalan

Hmong Daw

Romanian

Chinese Simplified

Hungarian

Russian

Chinese Traditional

Indonesian

Slovak

Czech

Italian

Slovenian

Danish

Japanese

Spanish

Dutch

Klingon

Swedish

English

Korean

Thai

Estonian

Latvian

Turkish

Finnish

Lithuanian

Ukrainian

French

Malay

Urdu

German

Maltese

Vietnamese

Greek

Norwegian

Welsh

Haitian Creole

Persian

 

 

TRANSLATE with

COPY THE URL BELOW

Back

EMBED THE SNIPPET BELOW IN YOUR SITE


Enable collaborative features and customize widget: Bing Webmaster Portal

Back