首先安装frp服务端,在有公网ip的服务器上安装
- 拉取镜像
docker pull snowdreamtech/frps
- 创建配置文件
cd #切换到用户目录
mkdir frp #创建文件夹
vim frp/frps.ini #创建配置文件
chmod -R 755 frp/frps.ini #添加权限
配置文件内容:
[common]
bind_port = 7000
vhost_http_port = 7080
vhost_https_port = 7081
dashboard_addr = 0.0.0.0
dashboard_port = 7500
dashboard_user = suixin
dashboard_pwd = suixin
- 启动frp,注意把配置文件路径改为自己配置文件所在路径
docker run -d --restart unless-stopped --network host --name frps -v /root/frp/frps.ini:/etc/frp/frps.ini snowdreamtech/frps
下面安装frp客户端,在需要穿透的内网机器上安装
- 下载frp客户端,下载地址:https://github.com/fatedier/frp/releases
- 找到压缩包里的frpc.ini,修改ip和端口号为服务器的地址和端口号
[common]
server_addr = 47.99.243.2
server_port = 7000
- 启动frp客户端
./frpc -c ./frpc.ini
-
打开浏览器,进入frp服务端的web管理页面查看是否运行成功,地址是
http://公网ip:dashboard_port
-
设置开机自启,下载的frpc压缩包里有systemd目录,复制到/usr/lib/systemd/system/
然后把frpc.service中启动命令用到的配置文件和脚本复制到对应的目录。
frpc.service文件内容
[Unit]
Description=Frp Client Service
After=network.target
[Service]
Type=simple
User=nobody
Restart=on-failure
RestartSec=5s
ExecStart=/usr/bin/frpc -c /etc/frp/frpc.ini
ExecReload=/usr/bin/frpc reload -c /etc/frp/frpc.ini
LimitNOFILE=1048576
[Install]
WantedBy=multi-user.target
sudo cp systemd/frpc.service /usr/lib/systemd/system/
cp frpc.ini /etc/frp/frpc.ini
sudo cp frpc /usr/bin/
- 设置开机自启
systemctl daemon-reload
systemctl enable frpc
systemctl start frpc
systemctl status frpc