利用阿里云搭建frp实现外网远程桌面链接内网电脑
主要应用场景:针对学生放假回家使用外网无法远程操作学校的服务器或者电脑,这里通过阿里云的云服务器搭建一个frp服务,实现内网穿透,从而可以直接通过远程桌面或者其他工具实现对校园网内的服务器或者电脑进行操作。
第一步:购买阿里云服务器,由于是学生,可以享受学生价9.5元每月。(阿里云翼计划:https://promotion.aliyun.com/ntms/act/campus2018.html?userCode=40juv3zh)。如果不是学生可以先领取优惠卷后再购买(优惠卷链接: https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=40juv3zh )
第二步:搭建云服务器,设置系统和登录密码。这里我选择的ubuntu系统
服务器操作:
首先登录系统,从网上下载frp软件:wget https://github.com/fatedier/frp/releases/download/v0.24.1/frp_0.24.1_linux_amd64.tar.gz
解压:tar -zxvf frp_0.24.1_linux_amd64.tar.gz
重命名:mv frp_0.24.1_linux_amd64 frp
配置文件:vim frps.ini
[common]
#服务器开放的端口
bind_port = 7000
服务器段需要设置两个端口入站规则:注意是两个端口:7000和6000,其中6000是在客户端的端口。
①
②
③
启动服务:
cd frp
nohup frp/frps -c frp/frps.ini
客服端配置(个人电脑):
软件下载地址:https://github.com/fatedier/frp/releases/
由于客户端是windows所以下载选择:
同样解压,然后配置frpc.ini文件
[common]
server_addr = 你自己服务器端ip(公网ip)
server_port = 7000 #对应服务器配置中的端口
[ssh]
type = tcp
local_ip = 自己电脑的ip
local_port = 3389
remote_port = 6000
客服端添加端口出站规则:将端口3389添加到出站规则中
在Dos中启动服务:win+R 输入cmd
需要先进入frp目录后执行如下操作:
frpc -c frpc.ini
至此,配置已经完成,可以在外网电脑通过实现远程桌面内网电脑。
远程桌面的地址:126.*.*.47(阿里云服务公网IP):6000(端口号,remote_port)
如果需要配置多个客服端,映射到同一个公网IP,则需要:特殊配置,ssh名称和端口均不能相同
内网机器1:
[ssh] <==不同点
type = tcp
local_ip = 内网机器1的ip地址
local_port = 3389
remote_port = 6000 <==不同点
内网机器2:
[ssh1] <==不同点
type = tcp
local_ip = 内网机器2的ip地址
local_port = 3389
remote_port = 6001 <==不同点
服务器一般不会经常重启,但是自己的电脑涉及到经常重启问题,所以需要设置开启自启动客户端frpc:
用winsw将frp注册为系统服务
下载winsw https://github.com/kohsuke/winsw/releases ,改名为winsw.exe,放到frp相同的目录里,并在同一个目录里创建一个utf8编码的文本文件,文件名是 winsw.xml,内容是:
<service>
<id>frp</id>
<name>frp这里是服务的名称</name>
<description>这里是服务的介绍,随便写</description>
<executable>frpc</executable>
<arguments>-c frpc.ini</arguments>
<onfailure action="restart" delay="60 sec"/>
<onfailure action="restart" delay="120 sec"/>
<logmode>reset</logmode>
</service>
启动:以管理员权限打开一个命令窗口,cd到frp所在目录,执行:
winsw install
winsw start
如果要卸载服务,执行命令:
winsw stop
winsw uninstall