搭建自己的内网穿透,远程桌面服务

还在下载和使用第三方内网穿透,远程桌面应用?第三方免费版限制流量,带宽和映射数,白Piao的也不香;还频频爆出重大安全漏洞?作为一名成熟的IT男,应该学会自己动手搭建!

准备材料

  • 云服务器一台,各大厂均可白Piao试用版本(有公网IP)
  • 开源软件FRP 点击下载Git最新版本
  • SSH,SFTP工具,Linux玩的溜可以直接使用命令行,此处推荐MobaXterm,也可下载其他开源版本。
  • FRP+MobaXterm打包下载:云盘链接 密码:3GN115,链接失效请右下角联系博主。

创建云主机

临近618,双11,各大云厂商均在促销自家产品,新用户促销最便宜时每年不到100块钱,反观某厂的内网穿透产品,各项限制不说,最便宜的VIP也要99块钱一个月,流量,带宽,连接数均有限制,安全性也没有保障,不推荐使用。

此处可选择云主机、轻应用云主机、Docker容器均可。近期移动云优惠活动,实名认证即可免费领取2核4G带宽2M的云主机一台,可以说是超值,各大厂商提供的免费试用还是移动云最香。点我访问领取链接

按要求上传身份证照片后即可领取,无需等待,无需支付和充值,开通时建议选择Linux镜像安装,领取之后是这样的:

这个时候,我们还不能直接使用这台机器,首先打开安全组进行端口设置,为了安全起见,建议单独为主机SSH,FRP服务,FRP应用开通端口:

  • 22:云主机SSH访问端口
  • 10001:FRP服务端口
  • 10002:FRP监控端口
  • 20001~20100:内网穿透应用映射端口

搭建内网穿透服务端

通过SSH客户端(MobaXterm)连接服务器,查看服务器CPU信息,并根据CPU信息下载对应的FRP安装包:

cat /proc/cpuinfo

此处发现使用的是Intel Xeon处理器(386架构)于是下载对应的安装包,上传到服务器指定目录并解压,如github抽风,可在服务器上直接使用wget进行下载

连接服务器,依次执行以下指令创建FRP目录,下载,解压和重命名

mkdir /app
cd /app
wget https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_386.tar.gz
tar -zxvf frp_0.37.0_linux_386.tar.gz
mv frp_0.37.0_linux_386 frp

删除不需要的文件,保留systemd, frps, frps.ini

执行以下指令编辑fprs.ini配置文件

vi /app/frp/frps.ini

配置文件内容修改为

[common]
# 允许连接的客户端IP地址和端口,配置0.0.0.0,表示不限制IP
bind_addr = 0.0.0.0
bind_port = 10001
# 自带监控IP地址和端口,多网卡时可指定IP,单网卡配置0.0.0.0,表示不限制IP
dashboard_addr = 0.0.0.0
dashboard_port = 10002
# 自带监控管理账号和密码
dashboard_user = admin
dashboard_pwd = myfrppass
# 日志文件存放目录
log_file = /app/frp/frps.log

#允许映射公网的端口
allow_ports = 20001-20100

# 客户端连接创建时验证密码,也可使用更安全的TLS加密方式。
token = myfrptoken

## 支持更安全的TLS加密认证
# tls_only = false
# tls_cert_file = server.crt
# tls_key_file = server.key
# tls_trusted_ca_file = ca.crt 

编辑启动项配置文件

vi /app/frp/systemd/frps.service

修改为:

[Unit]
Description=Frp Server Service
After=network.target

[Service]
Type=simple
User=nobody
Restart=on-failure
RestartSec=5s
ExecStart=/app/frp/frps -c /app/frp/frps.ini

[Install]
WantedBy=multi-user.target

依次执行以下几个命令添加执行权限并设置开机自启动,键入Ctrl+D退出

#设置为可执行
chmod +x /app/frp/frps
#在系统服务目录创建软连接
ln -s /app/frp/systemd/frps.service /etc/systemd/system/frps.service
#设置为开机启动
systemctl enable frps
#手动开启服务
systemctl start frps

查看日志,访问监控页,确认是否启动成功

远程桌面设置

客户端下载对应版本穿透工具

Windows下载对应的FRP软件包,intel处理器下载 frp_0.37.0_windows_386.zip,amd处理器下载frp_0.37.0_windows_amd64.zip。

删除无关文件,保留frp.exe和frp.ini,修改配置文件frpc.ini

[common]
server_addr = 云主机公网IP地址
server_port = 10001
token = myfrptoken

[mypc-remote]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 20000
在解压目录里创建startup.bat,以记事本打开,输入frpc -c frpc.ini,保存

开启Windows 远程桌面功能

双击startup.bat启动服务

此时,即可通过另一台电脑对该电脑进行远程连接

同理,其他各项端口也可通过该方式映射到公网。

注意:本教程仅供学习,应急使用时注意安全(如不使用时关闭云主机端口),涉密电脑尽量不要以任何方式暴露到公网。