frp内网穿透整套部署方案
前言
包下载
https://github.com/fatedier/frp/releases
- 通过uname - s查看mac的系统名,一般选择darwin_amd64,用于mac的客户端
- 通常选择 frp_.**._windows_amd64.zip 包作为windows客户端的包
- 通常选择 frp_.**._linux_amd64.tar.gz 包作为服务端的包
配置服务端
- 登录服务端并解压下载包
- 编辑frps.ini文件
[common]
bind_port = 7000 - 用于做转发的端口(必需)
dashboard_user = admin - 访问仪表板用户名(非必需)
dashboard_pwd = password - 访问仪表板密码(非必需)
dashboard_port = 7500 - 访问仪表板端口(非必需)
服务上开放防火墙端口
- 进入配置页面
- 将端口 6000,7000,7500等添加添加到规则中,同上图
配置客户端_win
- 下载包,并解压,进入文件目录
- 编辑frpc.ini文件
[common]
server_addr = ** - 服务器的公网ip(必需)
server_port = 7000 - 服务器的转发端口(必需)
[ssh] - 随便填(必需)
type = tcp - (必需)
local_ip = 127.0.0.1 - 无需修改(必需)
local_port = 3389 - 无需修改,本地端口(必需)
remote_port = 6000 - 远程端口,端口可自定义,自定义后,需要在服务中进行规则添加(必需)
# 备注: 当我访问 server_addr:6000 时,等同于访问127.0.0.1:3389;所有需要被访问的端口均需要配置
配置客户端_mac
- 下载包,并解压,进入文件目录
- 编辑frpc.ini文件
待补充
- 设置为开机自启
参见 -> 注册服务+开启自动 -> 将mac上的frpc注册成服务并设置开机自启
- 连接方式
1. 通过vpn 可以进行可视化远程连接
2. 通过mac连接mac客户端
- 仅可以通过shell进行远程连接
- 参考文档
https://zhuanlan.zhihu.com/p/385162671
https://post.smzdm.com/p/aoozd2dn/
win添加入站端口
win把frp文件夹放到信任中
- 目的 - 将frp的文件夹放在信任中
- 入口: 设置 -> 更新和安全 -> windows安全中心(打开windows安全中心)-> 病毒和威胁防护 -> 管理设置 -> 添加或删除排除项 -> 将目标文件夹添加在这个位置
注册服务 + 开机自启
将Windows上的frpc注册成服务并设置成开机自启
- 安装Chocolatey
- 在windows系统上,以管理员权限打开powershell,运行以下命令
- Chocolatey是windows平台的一款包管理器工具
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
- 验证Chocolatey
choco
# 存在版本信息时,代表安装完成
- 使用choco安装nssm
choco install nssm
# 使用nssm将frpc注册成windows服务实现frpc随着windows开机启动而启动 以管理员权限运行cmd,执行下面命令
nssm install frpc
# 当看到附图2的文本时,代表配置成功
# 首次需要自己手动重启,可以进入服务,找到frpc服务,手动重启
- 参考文档
https://blog.csdn.net/qq_37696855/article/details/122849406
https://blog.csdn.net/qq_37696855/article/details/122446009
将Mac上的frpc注册成服务并设置开机自启
- 配置systemctl进行开机启动
vim /lib/systemd/system/frpc.service
[Unit]
#服务描述
Description=frpc service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
#执行命令
ExecStart=/usr/local/frpc/frpc -c /usr/local/frpc/frpc.ini
[Install]
WantedBy=multi-user.target
终端里输入
systemctl daemon-reload
使用systemctl命令来控制frpc
#启动
sudo systemctl start frpc
#关闭
sudo systemctl stop frpc
#重启
sudo systemctl restart frpc
#查看状态
sudo systemctl status frpc
- 配置systemctl进行开机启动
设置开机自动启动: sudo systemctl enable frpc
https://www.cnblogs.com/JenniePiggy/p/14828117.html
https://segmentfault.com/a/1190000021724321
将服务上的frps注册成开机自启
systemctl enable frps
systemctl start frps
systemctl status frps
https://blog.csdn.net/babytiger/article/details/121274534
https://www.cnblogs.com/chenshy/p/13514248.html - 常用命名登记
参考文章
问题1: linux出现 FirewallD is not running
- https://blog.csdn.net/beyondrl/article/details/90229495
存在参考文献,均有备注
如有侵权,联系删除,谢谢