基于FRP内网穿透

47 阅读2分钟

MobaXterm:

FRP下载地址:github.com/fatedier/fr…

虚拟机管理下载地址:download.virtualbox.org/virtualbox/…

FRP服务端

文档:gofrp.org/zh-cn/docs/…

Frp服务端配置文件

bindPort = 7100
vhostHTTPPort = 8088
auth.token="2xNMZq4Y8KApDnEAKFOyJyv2CQs+pXGwM7gKORsW"

服务端Systemd配置

sudo vim /etc/systemd/system/frps.service

frps.service文件内容

[Unit]
# 服务名称,可自定义
Description = frp server
After = network.target syslog.target
Wants = network.target
​
[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /httx/run/frp/frps -c /httx/run/frp/frps.toml
​
[Install]
WantedBy = multi-user.target

使用 systemd 命令管理 frps 服务

# 启动frp
sudo systemctl start frps
# 停止frp
sudo systemctl stop frps
# 重启frp
sudo systemctl restart frps
# 查看frp状态
sudo systemctl status frps
# 修改配置文件重新加载frps
sudo systemctl daemon-reload
# 设置 frps 开机自启动
sudo systemctl enable frps

FRP客户端

Frp客户端配置文件

serverAddr = "xxx.199.xxx.53"
serverPort = 7100
auth.token="2xNMZq4Y8KApDnEAKFOyJyv2CQs+pXGwM7gKORsW"[[proxies]]
name = "web01"
type = "http"
localPort = 8088
customDomains = ["xxx.199.xxx.53"]

客户端Systemd配置

vim /etc/systemd/system/frpc.service

客户端frpc.service文件内容

[Unit]
# 服务名称,可自定义
Description = frp client
After = network.target syslog.target
Wants = network.target
​
[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /httx/run/frp/frpc -c /httx/run/frp/frpc.toml
​
[Install]
WantedBy = multi-user.target

使用 systemd 命令管理 frpc服务

# 启动frp
sudo systemctl start frpc
# 停止frp
sudo systemctl stop frpc
# 重启frp
sudo systemctl restart frpc
# 查看frp状态
sudo systemctl status frpc
# 修改配置文件重新加载frpc
sudo systemctl daemon-reload
# 设置 frps 开机自启动
sudo systemctl enable frpc

Nginx

安装依赖

sudo yum install yum-utils

添加Nginx Yum源

cd /etc/yum.repos.d/ && sudo vim nginx.repo

#### nginx.repo内容

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key

查看Nginx版本

sudo yum list nginx

安装Nginx

sudo yum install -y nginx

Linux关闭SELinux

nginx: [emerg] bind() to 0.0.0.0:8088 failed (13: Permission denied)错误时以下是解决方案

sudo vim /etc/selinux/config

找到SELINUX=enforcing,按i进入编辑模式,将参数修改为SELINUX=disabled