frp内网穿透安装与配置

​ frp是啥?简单的说就是外国版的TeamViewer,AnyDesk 国内版的QQ远程桌面,向日葵,DeskTop的控制软件,不同点就是搭建在自己的服务器上,自己去维护.不用在那些软件上充值会员,对服务器的带宽要求也不是很大.3m都可以实现看电影(但有谁会远程看电影?)

准备

  • 服务器一台
  • 被控机
  • 控制机
  • 被控机用软件修改3389端口和开启远程访问
  • 服务器开放端口7000-7100

修改3389端口和开启远程访问

安装

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 获取版本号
export FRP_VERSION=$(wget -qO- -t1 -T2 "https://api.github.com/repos/fatedier/frp/releases/latest" | grep "tag_name" | head -n 1 | awk -F ":" '{print $2}' | sed 's/\"//g;s/,//g;s/ //g')
echo "最新版本为"${FRP_VERSION}
# 创建文件夹
sudo mkdir -p /etc/frp
# 进入目录
cd /etc/frp
# 下载最新版本
sudo wget "https://github.com/fatedier/frp/releases/download/v${FRP_VERSION}/frp_${FRP_VERSION}_linux_amd64.tar.gz"
# 解压
sudo tar xzvf frp_${FRP_VERSION}_linux_amd64.tar.gz
# 重命名
sudo mv frp_${FRP_VERSION}_linux_amd64/* /etc/frp

# ————————————————
# 日期:2021-05-27
# 参考链接:https://www.yeslu.cn/archives/3a47af3d.html

服务端配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# 配置frp服务端
sudo vim /etc/frp/frps.ini

# 配置信息
[common]
# 绑定的端口号
bind_port = 1024
# dashboard_addr = 0.0.0.0
# 控制面板端口号
dashboard_port = 7000
# 仪表盘访问的用户名密码,如果不设置,则默认都是 admin
dashboard_user = nobige
dashboard_pwd = nobigePassword
# auth token
token = nobigeToken


# 使用systemctl配置后台运行和开机自启
sudo vim /lib/systemd/system/frps.service

# 配置信息
[Unit]
Description=fraps service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
# 启动服务的命令(此处写你的frps的实际安装目录)
ExecStart=/etc/frp/frps -c /etc/frp/frps.ini
[Install]
WantedBy=multi-user.target

服务端启动

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# 启动frp
sudo systemctl start frps
# 打开自启动
sudo systemctl enable frps
# 重启应用,
sudo systemctl restart frps
# 停止应用
sudo systemctl stop frps
# 查看应用的日志
sudo systemctl status frps

# 开放端口
sudo firewall-cmd --zone=public --add-port=7000/tcp --permanent
# 防火墙重启
sudo firewall-cmd --reload

# 如果端口被占用,找到其进程并对其结束
# 查看端口号
netstat -anp|grep 7000
# 查看端口号
lsof -i:7000
# 查看程序进程
ps -ef|grep frps
# 结束进程
kill -9 进程号

客户端配置

  • 下载win最新版的frp客户端解压到D盘的目录下,如D:\xiao\frp
  • 创建一个frp.ini日志文件,frp.bat批处理文件

frp.bat配置

1
2
3
4
@echo off
:home
frpc -c frpc.ini >> frp.log
goto home
  • 根据情况配置frpc.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 配置信息
[common]
# 服务器IP,可以是ip也可以是域名
server_addr = frp.tiiao.cn
# 主端口
server_port = 1024
token =nobigeToken
# 名称,作为标注
[nobige]
# 服务类型,远程桌面需要tcp
type = tcp
# 本机
local_ip = 127.0.0.1
# 远程桌面的端口号
local_port = 2048
#服务器开放的子端口
remote_port = 7001

打开系统自带的任务计划程序并创建一个frp启动任务.并参考下图配置.

创建任务计划

常规配置

常规配置

触发器

触发器

操作

操作

使用

  • 以远程桌面为例,用系统自带远程桌面,地址为frp.tiiao.cn:7001
  • 也可以适用于nginx或是其他服务.只需要在客户端添加绑定端口和服务端端口即可
  • 其他端口可参考常用端口整理

注意

  1. 被控端密码尽量复杂
  2. 被控端的3389默认端口一定要修改
  3. 服务端防火墙最好限制端口访问

如果没有做到,可能导致因为局域网部分机器中勒索病毒而受牵连!中过多次勒索病毒的经验.

参考