frp与云服务器内网穿透
最近想使用一个便宜的云服务器进行内网穿透,访问到本地电脑
之前使用ssh一直没成功,原因还没分析出来,后来换了一种方法,使用frp来进行内网穿透
frp内网穿透搭建
frp简介
frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网
安装server端和client端
https://github.com/fatedier/frp
这里我使用的是frp_0.61.1_linux_amd64.tar.gz和frp_0.61.1_windows_amd64.zip
上传linux安装包
将frp_0.61.1_linux_amd64.tar.gz
安装包上传至云服务器
这里我是用的是MobaXterm
有直接上传文件的功能,将文件上传到:/usr/local/frp/
文件中,进入该目录,没有此目录时使用mkdir
命令创建目录
使用tar -zxvf frp_0.61.1_linux_amd64.tar.gz
解压文件
文件目录为:/usr/local/frp/frp_0.61.1_linux_amd64
修改server端配置文件
这里需要注意,vhost_http_port
参数要在上面,否则会监听不到本地的端口
[common]
vhost_http_port=8080 # 用于处理 HTTP 流量的端口
bind_port = 7000 # FRP 服务端监听的端口
配置frp的systemd
- 如Linux服务端上没有安装 systemd,可以使用 yum 或 apt 等命令安装 systemd。
# yum yum install systemd # apt apt install systemd
- 编写frps.service文件
- 创建文件
vi /etc/systemd/system/frps.service
- 文件内容
[Unit] #服务名称,可自定义 Description = frp server After = network.target syslog.target Wants = network.target [Service] Type = simple # 启动frps的命令,需修改为您的frps的安装路径 ExecStart = /usr/local/frp/frp_0.38.0_linux_amd64/frps -c /usr/local/frp/frp_0.38.0_linux_amd64/frps.ini [Install] WantedBy = multi-user.target
- 创建文件
- 命令
# 刷新
systemctl daemon-reload
#查看是否自启动
systemctl list-unit-files | grep frps
# 设置自启动
systemctl enable frps
#启动frp
systemctl start frps
#停止frp
systemctl stop frps
#重启frp
systemctl restart frps
#查看frp状态
systemctl status frps
配置clent端配置文件
下载后解压frp_0.61.1_windows_amd64.zip
新建frpc.ini
文件,文件内容:
[common]
server_addr = 666.66.66.66 # 云服务器的 IP 地址
server_port = 7000 # FRP 服务端的端口
[web]
type = http # 使用 HTTP 协议
local_port = 8080 # 本地项目的端口
custom_domains = 666.66.66.66 # 云服务器的 IP 地址
使用cmd到解压文件目录,使用.\frpc.exe -c .\frpc.ini
当展示:[web] start proxy success
时内网穿透就已经成功!
ps:此教程结合于此链接的b站视频,以及人工智能等总结。