前提条件
一台有公网IP的服务器
Frp介绍
frp 是一个开源、简洁易用、高性能的内网穿透和反向代理软件,支持 tcp, udp, http, https等协议。frp 项目官网是 /fatedier/fr…
frp工作原理
服务端运行,监听一个主端口,等待客户端的连接;
客户端连接到服务端的主端口,同时告诉服务端要监听的端口和转发类型;
服务端fork新的进程监听客户端指定的端口;
外网用户连接到客户端指定的端口,服务端通过和客户端的连接将数据转发到客户端;
客户端进程再将数据转发到本地服务,从而实现内网对外暴露服务的能力。
2.1 服务端配置
下载frp库
linux版:阿里网盘
内网穿透 /s/BDc125gUd… 提取码: yj03
解压frp压缩包修改配置文件
tar -zxvf frp_0.48.0_linux_amd64.tar.gzvi frps.ini[common]bind_port = 7000(默认端口可修改 与客户端保持一致)vhost_http_port = 9000(需要内穿的端口)token = 12345678(自定义 客户端和服务端保持一致)#修改配置完毕后重启./frps -c frps.ini#重启可能会出现端口占用的情况 使用命令 losf -i:端口号 查找被占用端口kill -9 pid 干点进程 在进行重启就好复制代码
2.2 客户端配置
同样的压缩包进行解压/修改配置文件
tar -zxvf frp_0.48.0_linux_amd64.tar.gzvi frpc.ini[common]server_addr = *.*.*.*(服务端IP)server_port = 7000 (自定义 需要和服务端对应)token = 12345678 (自定义 需要和服务端对应)[ssh] type = tcplocal_ip = 127.0.0.1local_port = 22remote_port = 6000[portainer]type = httplocal_ip = 127.0.0.1local_port = 9000 (需要内穿的端口)custom_domains = (服务端IP)[rocketMq_consle]type = httplocal_ip = 127.0.0.1local_port = 9001custom_domains = 服务端IP复制代码
#可以配置多个
#[名称不可重复]
#修改配置完毕后重启
./frps -c frps.ini
#重启可能会出现端口占用的情况
使用命令 losf -i:端口号 查找被占用端口
kill -9 pid 干点进程 在进行重启就好
配置开机自启动
Linux 系统下,使用systemd 可以方便地控制 frp 服务端 frps 的启动和停止、配置后台运行和开启自启。
要使用 systemd 来控制 frps,需要先安装 systemd,然后在 /etc/systemd/system 目录下创建一个 frps.service 文件。
如Linux服务端上没有安装 systemd,可以使用 yum 或 apt 等命令安装 systemd。
yum下载
yum install systemd复制代码
apt下载
apt install systemd复制代码
使用文本编辑器,如 vim 创建并编辑 frps.service 文件。
写入内容
vim /etc/systemd/system/frps.service复制代码
服务名称,可自定义
Description = frp serverAfter = network.target syslog.targetWants = network.target[Service]Type = simple复制代码
启动frps的命令,需修改为您的frps的安装路径
ExecStart = /path/to/frps -c /path/to/frps.ini[Install]WantedBy = multi-user.target使用 systemd 命令,管理 frps。复制代码
启动frp
systemctl start frps复制代码
停止frp
systemctl stop frps复制代码
重启frp
systemctl restart frps复制代码
查看frp状态
systemctl status frps复制代码
配置 frps 开机自启。
systemctl enable frps复制代码
配置后如果访问不到 去云服务器看看对应的端口是否开放
作者:用户9116220870899
链接:/post/7209578803160170556
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
创建frps.service
sudo vim /lib/systemd/system/frps.service
在frps.service里写入以下内容
[Unit]Description=fraps serviceAfter=network.target syslog.targetWants=network.target[Service]Type=simple#启动服务的命令(此处写你的frps的实际安装目录)ExecStart=/你的绝对值地址/frps -c /你的绝对值地址/frps.ini[Install]WantedBy=multi-user.target
然后就启动frps
sudo systemctl start frps
再打开自启动
sudo systemctl enable frps
如果要重启应用,可以这样,sudo systemctl restart frps
如果要停止应用,可以输入,sudo systemctl stop frps
如果要查看应用的日志,可以输入,sudo systemctl status frps
参考原文
客户端一键复制粘贴:
sudo vim /lib/systemd/system/frpc.service
在frps.service里写入以下内容
[Unit]Description=fraps serviceAfter=network.target syslog.targetWants=network.target[Service]Type=simple#启动服务的命令(此处写你的frps的实际安装目录)ExecStart=/你的绝对值地址/frpc -c /你的绝对值地址/frpc.ini[Install]WantedBy=multi-user.target
然后就启动frpc
sudo systemctl start frpc
再打开自启动
sudo systemctl enable frpc
如果要重启应用,可以这样sudo systemctl restart frpc
如果要停止应用,可以输入sudo systemctl stop frpc
如果要查看应用的日志,可以输入sudo systemctl status frpc