【frp内网穿透教程】
2023-04-18 14:24:59 时间
frp内网穿透教程
1 前言
在不同局域网实现跨网访问。
现在有电脑A,B,C
A位于192.168.3.* 局域网下,C位于192.168.3.* 局域网下,现需要A远程访问C。
本博客中介绍的方案是:用阿里云服务器作为服务端,即桥梁B,实现A与C的通信。这里的客户端是C。
2 下载链接
2.1 分别在服务器端和客户端下载frp(ubuntu系统)
打开终端执行下面命令,下载:
wget https://github.com/fatedier/frp/releases/download/v0.36.2/frp_0.36.2_linux_amd64.tar.gz
解压:
tar -xzvf frp_0.36.2_linux_amd64.tar.gz
2.2 压缩包说明
每个压缩包都包含以下文件及一个systemd文件夹:
- frpc —— 客户端可执行二进制文件
- frpc_full.ini —— 包含全部配置项的客户端配置文件
- frpc.ini —— 客户端使用的配置文件,包含最简配置
- frps —— 服务端可执行二进制文件
- frps_full.ini —— 包含全部配置项的服务端配置文件
- frps.ini —— 服务端使用的配置文件,包含最简配置
- systemd —— 文件夹,用于将frpc和frps添加为服务的配置,linux下使用systemd作为守护程序、mac os使用launchd作为守护程序
3 配置
3.1 服务器端配置
3.1.1 打开frps.ini
sudo gedit frps.ini
3.1.2 编辑内容
[common]
bind_port = 7000 #bind_port端口为frp服务端和客户端连接通信的端口,默认为7000。
vhost_http_port = 8080 #vhost_http_port监听的端口不能被占用,否则会导致frps不能启动,端口可根据实际需要修改。
token = my_token_name #与服务器中的保持一致
3.1.3 启动frps程序
sudo ./frps -c ./frps.ini
3.2 客户端配置
3.2.1 打开frpc.ini
sudo gedit frpc.ini
3.2.2 编辑内容
[common]
server_addr = 36.152.44.96 #为服务器的ip地址,可通过ping或者nslookup域名看到
server_port = 7000
token = my_token_name #与服务器中的保持一致
[lab_ssh] #这里的名字可以随意命名,但不能重复
type = tcp
local_ip = 192.168.1.150
local_port = 22
remote_port = 5111
[lab_mstc]
type = tcp
local_ip = 192.168.1.150
local_port = 3389
remote_port = 5211
[lab_ftp1]
type = tcp
local_ip = 192.168.1.150
local_port = 20
remote_port = 5311
[lab_ftp2]
type = tcp
local_ip = 192.168.1.150
local_port = 21
remote_port = 5312
3.2.3 启动frpc程序
sudo ./frpc -c ./frpc.ini
4 开机自启
4.1 先创建frpc.sh文件
在/home/host_name/frp/目录下,创建frpc.sh文件
#!/bin/sh
sleep 20s #开机20秒后启动脚本
sudo /home/host_name/frp/frpc -c /home/host_name/frp/frpc.ini
4.2 systemctl管理开机自启动
sudo vim /etc/systemd/system/frpc.service
[Unit]
Description=start_frpc
[Service]
ExecStart=/home/host_name/frp/frpc.sh
ExecReload=/home/host_name/frp/frpc.sh
[Install]
WantedBy=multi-user.target
4.3 开启frpc.service服务
# 启动frp
sudo systemctl start frpc
# 开机自启动
sudo systemctl enable frpc
# 重启
sudo systemctl restart frpc
# 停止
sudo systemctl stop frpc
# 查看日志
sudo systemctl status frpc
相关文章
- 【技术种草】cdn+轻量服务器+hugo=让博客“云原生”一下
- CLB运维&运营最佳实践 ---访问日志大洞察
- vnc方式登陆服务器
- 轻松学排序算法:眼睛直观感受几种常用排序算法
- 十二个经典的大数据项目
- 为什么使用 CDN 内容分发网络?
- 大数据——大数据默认端口号列表
- Weld 1.1.5.Final,JSR-299 的框架
- JavaFX 2012:彻底开源
- 提升as3程序性能的十大要点
- 通过凸面几何学进行独立于边际的在线多类学习
- 利用行动影响的规律性和部分已知的模型进行离线强化学习
- ModelLight:基于模型的交通信号控制的元强化学习
- 浅谈Visual Source Safe项目分支
- 基于先验知识的递归卡尔曼滤波的代理人联合状态和输入估计
- 结合网络结构和非线性恢复来提高声誉评估的性能
- 最佳实践丨云开发CloudBase多环境管理实践
- TimeVAE:用于生成多变量时间序列的变异自动编码器
- 具有线性阈值激活的神经网络:结构和算法
- 内网渗透之横向移动 -- 从域外向域内进行密码喷洒攻击