frp-内网穿透部署-ubuntu22服务器-windows server-详细教程

文章目录

FRP是一个开源、简洁易用,高性能的内网穿透和反向代理软件,支持tcp、upp、http、https等协议。

1.下载frp

可以去官网下载最新的frp编译好的文件,本文采用frp_0.32.1_windows_amd64版本。也可以在csdn下载。

2.配置服务器

连接ubuntu22服务器,并创建新目录:

powershell 复制代码
/usr/local/frp

将frp_0.32.1_windows_amd64.tar.gz上传至/usr/local/frp目录。

将文件解压。

powershell 复制代码
tar -xvf frp_0.32.1_windows_amd64.tar.gz
mv frp_0.32.1_windows_amd64/* /usr/local/frp/

删除frpc.ini和frpc文件。

powershell 复制代码
cd /usr/local/frp/
rm frpc.ini
rm frpc

2.1.配置frps.ini文件

powershell 复制代码
[common]
bind_addr = 0.0.0.0
# frp监听的端口,默认是7000
bind_port = 7000
# 代理端口一定要设置,否则无法使用http
vhost_http_port = 7001
# 授权码
token = B42D0624-7D18
 
# frp管理后台端口
dashboard_port = 6500
# frp管理后台用户名和密码
dashboard_user = admin
dashboard_pwd = admin@7D18
enable_prometheus = true
 
# frp日志配置
log_file = log.log
log_level = info
log_max_days = 3

# 域名访问配置
privilege_mode = true

配置和启动frp。

powershell 复制代码
mkdir -p /etc/frp
cp frps.ini /etc/frp
cp frps /usr/bin

2.2.设置服务文件

powershell 复制代码
vim /usr/lib/systemd/system/frps.service

内容如下:

powershell 复制代码
[Unit]
Description=frp Service
After=rc-local.service nss-user-lookup.target

[Service]
Type=forking
Restart=on-failure
RestartSec=5s
ExecStart=/usr/bin/frps -c /etc/frp/frps.ini

[Install]
WantedBy=multi-user.target

2.3.设置开机自启和服务操作

开机启动

powershell 复制代码
sudo systemctl daemon-reload
sudo systemctl enable frps

服务编辑

powershell 复制代码
sudo systemctl start frps
sudo systemctl stop frps
sudo systemctl status frps

2.4.后台验证

在浏览器输入服务器后台网址

powershell 复制代码
http://152.136.196.35:6500

如下图所示,则表示服务器配置成功。

2.5.服务器重启

powershell 复制代码
shutdown -r now

3.配置本地window

3.1.frpc配置

frpc.ini文件配置如下

powershell 复制代码
[common]
server_addr = 152.136.196.35
server_port = 7000
#与服务器端的令牌一致
token = B42D0624-7D18

# 配置tcp服务,用于ip访问
[web1]
type = tcp
local_ip = 127.0.0.1
#本地端口
local_port = 188
#服务器端口
remote_port = 188

[web2]
type = tcp
local_ip = 127.0.0.1
#本地端口
local_port = 80
#服务器端口
remote_port = 80

按照命令启动客户端软件:

powershell 复制代码
frpc -c frpc.ini

提示如下表示成功,如下图所示:

3.2.添加开机计划启动

a.启动文件夹
将系统下可以直接双击就可以启动的可执行文件或者创建快捷方式放在此文件夹中

文件夹寻找方式:

①win+r 打开运行窗口,输入shell:startup,打开了用户启动文件夹。

②C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup,打开系统启动文件夹。

b.任务计划

首先,我的电脑,右键管理,选择任务计划程序。

然后,新建计划,输入计划名称,触发器选择当用户登录时 。不要选系统启动。操作选择目标程序,可以是exe文件,也可以bat脚本文件。最后点击完成。重启一下系统测试是否正常工作。

3.3.控制台启动隐藏窗口

第一种方法,在bat文件前添加代码:

powershell 复制代码
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
REM

第二种方法,采用vbs脚本启动:

vbnet 复制代码
Set ws = CreateObject("Wscript.Shell") 
ws.run "cmd /c C:\frpc\start-frpc.bat",vbhide 

注意:第一种不能和第二种不能同时使用。

4.centos防火墙和端口

开启防火墙。

powershell 复制代码
systemctl start firewalld

systemctl start firewalld.service
systemctl stop firewalld.service
systemctl status firewalld.service

3.1.开放端口

powershell 复制代码
firewall-cmd --zone=public --add-port=80/tcp --permanent

3.2.查看端口

powershell 复制代码
netstat -tunlp | grep 6500

5.关闭进程

查看指定进程名称pid

powershell 复制代码
ps -ef | grep frps

5.1.杀死进程

powershell 复制代码
kill pid
kill 12345

5.2.强制杀死进程

powershell 复制代码
kill -KILL pid
kill -KILL 123456

6.查看服务

使用systemctl命令查看所有已启动的服务:

powershell 复制代码
systemctl list-units --type=service --state=running

使用service命令查看正在运行的服务:

powershell 复制代码
service --status-all

使用ps命令结合grep过滤器来查看正在运行的服务进程:

powershell 复制代码
ps aux | grep [s]ervice
ps aux | grep frps

7.总结

这套系统完整的运行,坑还是挺多的,需要不断的总结。

相关推荐
淡海水2 小时前
01-05-运行时-JIT优化全景-内联去虚拟化边界检查消除
windows·c#·虚拟化·jit·内联·边界检查消除
九硕智慧建筑一体化厂家9 小时前
数字化管控落地,直流照明构筑安全照明体系
运维·人工智能·笔记·安全·智慧城市
波波00710 小时前
C# 15 重磅新特性: 带标签 break 与 continue:重新定义嵌套循环控制流
服务器·前端·c#
刘某的Cloud11 小时前
ceph osd 导入导出 rbd volume 卷
linux·运维·ceph·volume
隔窗听雨眠12 小时前
GBase 8s并发控制深度解析:封锁机制、隔离级别与死锁处理全攻略
服务器·数据库·oracle
神奇霸王龙13 小时前
Agent 准入门控屠夫:5 旗舰 4 维度评估
linux·运维·数据库·ai·ai作画·agent·ai编程
鲸采云SRM采购管理系统13 小时前
采购管理系统哪家好?2026最新测评对比
java·服务器·数据库
cfm_291413 小时前
基于Binlog实现不停机数据库平滑迁移技术
运维·数据库·架构
迪康Defender14 小时前
AI 重构终端安全运营:智能分析中枢 AI Insight 模块架构与落地场景深度解析
运维·网络·人工智能·其他·安全·重构·架构
那年窗外下的雪.14 小时前
AIDC 学习日志 第 04 天 BGP Underlay 基础与路由选择
服务器·学习·php