使用Frp工具完成内网穿透
使用Frp工具完成内网穿透
注:
- 本文面向的读者需要具有一定的linux基础知识;
- 本文中的Frp工具安装在
/usr/local/
目录下,所以下列命令均在此目录下执行; - 服务端和客户端之前的程序下载操作均相同,不再重复说明,均按照第一节的下载说明进行操作即可;
- 本文中的客户端和服务端所使用的操作系统均为ubuntu 22.04。
1. 下载Fpr工具
在https://github.com/fatedier/frp/releases 下载最新版本的frp工具,这里我们下载0.51.3版本。
1
wget https://github.com/fatedier/frp/releases/download/v0.51.3/frp_0.51.3_linux_arm64.tar.gz
解压
frp_0.51.3_linux_arm64.tar.gz
文件得到frp_0.51.3_linux_arm64
文件夹1
tar -zxvf frp_0.51.3_linux_arm64.tar.gz
将
frp_0.51.3_linux_arm64
文件夹名称修改为frp
1
mv frp_0.51.3_linux_arm64 frp
2. 服务端配置
说明:文件夹中frps
表示的是服务端程序,frps.ini
是服务端的配置文件。
进入文件夹内部;
1
cd frp
配置服务端配置文件
frps.ini
;1
2
3
4
5
6
7
8
9
10
11[common]
bind_port = port
token = token
dashboard_port = 7500
dashboard_user = user
dashboard_pwd = passwd
vhost_http_port = 10080
vhost_https_port = 10443
[ssh]
listen_port = ssh_port[common]
bind_port
:需填写端口号,该端口号用于客户端连接服务端时所用。
token
:客户端连接服务端时所用到的密码
dashboard_port
:dashboard的查看端口号
dashboard_user
:dashboard的登陆用户名
dashboard_pwd
:dashboard的登陆密码
vhost_http_port
:http访问端口
vhost_https_port
:https访问端口[ssh]
listen_port
:远程访问客户端(内网机器)时所用到的端口号配置
frps.service
,以使用systemctl来控制程序的启停;在
/lib/systemd/system/frps.service
文件中配置以下内容1
2
3
4
5
6
7
8
9
10
11
12
13[Unit]
Description=frps service After=network.target syslog.target Wants=network.target
[Service]
Type=simple
ExecStart=/usr/local/frp/frpc -c /usr/local/frp/frps.ini
[Install]
WantedBy=multi-user.target启动frps服务并配置开启自启动
1
systemctl start frps && systemctl enable frps
3. 客户端配置
说明:文件夹中frpc
表示的是服务端程序,frpc.ini
是服务端的配置文件。
进入文件夹内部;
1
cd frp
配置服务端配置文件
frpc.ini
;1
2
3
4
5
6
7
8
9
10[common]
server_addr = ip
server_port = port
token = token
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = port[common]
server_addr
:服务端ip地址
server_port
:配置服务端所填写的bind_port
token
: 配置服务端所填写的token
[ssh]
type
= tcp
local_ip
= 127.0.0.1
local_port
= 22
remote_port
:配置服务端所填写的listen_port
配置
frpc.service
,以使用systemctl来控制程序的启停;在
/lib/systemd/system/frpc.service
文件中配置以下内容;1
2
3
4
5
6
7
8
9
10
11
12
13[Unit]
Description=frps service After=network.target syslog.target Wants=network.target
[Service]
Type=simple
ExecStart=/usr/local/frp/frpc -c /usr/local/frp/frpc.ini
[Install]
WantedBy=multi-user.target启动
frpc
服务并配置开启自启动;1
systemctl start frpc && systemctl enable frpc
4. 验证
通过ssh连接远程服务器,如果成功接入则表示配置成功。
1 | ssh user@ip:port |
user
:内网机器的用户名
ip
:服务端ip地址
port
:配置的listen_port
注:登陆的密码为内网机器的密码
- Title: 使用Frp工具完成内网穿透
- Author: Spring
- Created at : 2023-09-24 10:06:31
- Updated at : 2024-12-19 04:00:13
- Link: https://www.tecacc.com/2023/09/24/使用Frp工具完成内网穿透/
- License: This work is licensed under CC BY-NC-SA 4.0.