https://blog.csdn.net/qq_36981760/article/details/115713179
下载
wget https://github.com/fatedier/frp/releases/download/v0.48.0/frp_0.48.0_linux_amd64.tar.gz
Windows
https://github.com/fatedier/frp/releases
公网主机里的frp文件夹可手动把frpc开头的文件全部删除
rm -rf frpc*
内网主机里的frp文件夹可手动把frps开头的文件全部删除
rm -rf frpc*
脚本配置
配置脚本请使用无注释版本,防止脚本运行出错
公网主机
打开服务器端配置文件
vim ./frps.ini
# 我的填写内容如下:
[common]
bind_port = 7000# 服务端与客户端通信端口
dashboard_port = 7500# 后台管理端口
dashboard_user = admin# 后台登录用户名
dashboard_pwd = admin
vhost_http_port = 7002# http穿透端口
vhost_https_port = 7003# https穿透端口
max_pool_count = 50
token = aaa123# 身份验证令牌,frpc要与frps一致
tcp_mux = true
log_file = /usr/local/frp/frps.log# 日志相关
log_level = info
log_max_days = 3
authentication_timeout = 0# 服务器与客户端时间相差15min会连接失败,0表示不验证
subdomain_host = test.xyz# 注册的域名
privilege_mode = true
公网主机无注释版本
[common]
bind_port = 7000
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = admin
vhost_http_port = 7002
vhost_https_port = 7003
max_pool_count = 50
token = aaa123
tcp_mux = true
log_file = /usr/local/frp/frps.log
log_level = info
log_max_days = 3
authentication_timeout = 0
subdomain_host = test.xyz
privilege_mode = true
注意:访问的端口一定要开放
启动frps
前台启动
./frps -c ./frps.ini
后台启动
./frps -c ./frps.ini &
内网主机
打开客户端配置文件
vim ./frpc.ini
# 我的填写内容如下:
[common]
server_addr = 10.10.xxx.xxx# 公网服务器ip
server_port = 7000# 客户端与公网服务端通信端口
token = aaa123# 令牌,与公网服务端保持一致
tcp_mux = true
log_file = /usr/local/frp/frpc.log# 日志相关
log_level = info
log_max_days = 3
authentication_timeout = 0# 服务器与客户端时间相差15min会连接失败,0表示不验证
# 添加ssh节点
[ssh]
type = tcp
local_ip = 192.168.xxx.xxx# 内网主机本地的服务ip
local_port = 22
remote_port = 7001# 指明由公网服务器的7001端口代理
# 添加web节点
[web01]
type = http
local_ip = 192.168.xxx.xxx# 内网主机本地的服务ip
local_port = 8080# 本地8080端口可以通公网服务器7002端口访问,这里我的8080跑着tomcat
custom_domains = test.xyz# 注册的域名
内网主机无注释版本
[common]
server_addr = 10.10.xxx.xxx
server_port = 7000
token = aaa123
tcp_mux = true
log_file = /usr/local/frp/frpc.log
log_level = info
log_max_days = 3
authentication_timeout = 0
[ssh]
type = tcp
local_ip = 192.168.xxx.xxx
local_port = 22
remote_port = 7001
[web01]
type = http
local_ip = 192.168.xxx.xxx
local_port = 8080
custom_domains = test.xyz
启动frpc
前台启动
./frpc -c ./frpc.ini
后台启动
./frpc -c ./frpc.ini &
frp开机自启动
公网主机
创建并编辑frp.service文件(有时候需要手动创建system文件夹)
vim /usr/lib/systemd/system/frps.service
vim找不到就试试vi
vi /usr/lib/systemd/system/frps.service
frps.service文件内容
(注意,service 文件不支持行内注释!!!注释必须单独一行)
[Unit]
Description=frps
After=network.target
[Service]
TimeoutStartSec=30
ExecStart=/usr/local/bin/frps -c /etc/frp/frps.ini
ExecStop=/bin/kill $MAINPID
[Install]
WantedBy=multi-user.target
把相关文件转移到/usr/local/bin/文件夹下,在/usr/local/bin/文件夹下创建frp文件夹
mkdir /etc/frp/
移动刚刚启动测试成功的frp文件夹下的所有frps开头原文件到/usr/local/bin/frp文件夹下
mv * /usr/local/bin/frp/
创建一个名为frps的快捷方式到/usr/local/bin/目录下
ln -s /etc/frp/frps /usr/local/bin/frps
设置开机启动
systemctl enable frps
启动frps
systemctl start frps
查看自启动服务状态
systemctl status frps
部分服务器上,可能需要加 .service 后缀来操作,即
systemctl enable frps.service
systemctl start frps.service
systemctl status frps.service
内网主机
同理,创建并编辑自启动服务文件,移动相关文件,启动命令。
创建并编辑frp.service文件(有时候需要手动创建system文件夹)
vim /usr/lib/systemd/system/frpc.service
vim找不到就试试vi
vi /usr/lib/systemd/system/frpc.service
frpc.service文件内容
(注意,service 文件不支持行内注释!!!注释必须单独一行)
[Unit]
Description=frpc
After=network.target
[Service]
TimeoutStartSec=30
ExecStart=/usr/local/bin/frpc -c /etc/frp/frpc.ini
ExecStop=/bin/kill $MAINPID
[Install]
WantedBy=multi-user.target
把相关文件转移到/usr/local/bin/文件夹下,在/usr/local/bin/文件夹下创建frp文件夹
mkdir /etc/frp
移动刚刚启动测试成功的frp文件夹下的所有frpc开头原文件到/usr/local/bin/frp文件夹下
mv * /etc/frp/
创建一个名为frpc的快捷方式到/usr/local/bin/目录下
ln -s /etc/frp/frpc /usr/local/bin/frpc
设置开机启动
systemctl enable frpc
启动frpc
systemctl start frpc
查看自启动服务状态
systemctl status frpc
部分服务器上,可能需要加 .service 后缀来操作,即
systemctl enable frpc.service
systemctl start frpc.service
systemctl status frpc.service
注意
目前frp内网穿透并没有一个域名映射多个端口的使用方法,
只能一个多个域名映射一个端口。(你可以在服务商那里买一个域名,解析多个二级域名即可)
阿里云如何添加二级域名?
https://www.cnblogs.com/ningqing2015/articles/9207195.html
腾讯云如何添加二级域名?
https://www.cnblogs.com/mmzs/p/9989373.html
可能的问题
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
https://blog.csdn.net/leenhem/article/details/117817641
推荐
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中
发表回复