centos7内网穿透frp配置

mac2025-05-29  2

服务器选择说明: 公网:阿里云centos7 内网:centos7

官网信息 源码地址:https://github.com/fatedier/frp 文档说明:https://github.com/fatedier/frp/blob/master/README_zh.md 下载地址:https://github.com/fatedier/frp/releases

选择对应系统下载

wget https://github.com/fatedier/frp/releases/download/v0.29.0/frp_0.29.0_linux_amd64.tar.gz tar -zxf frp_0.29.0_linux_amd64.tar.gz cd frp_0.29.0_linux_amd64

将 frps 及 frps.ini 放到具有公网 IP 的机器上 将 frpc 及 frpc.ini 放到处于内网环境的机器上

阿里云服务器配置 frps.ini 配置文件 默认端口7000,我这边不变,可以配置自己的端口

[common] bind_port = 7000

启动命令:

./frps -c ./frps.ini

内网服务器配置 frpc.ini配置文件

[common] server_addr = x.x.x.x server_port = 7000 [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000

配置说明: server_addr:云服务器地址 server_port:和云服务器中frps.ini的bind_port值一致 [ssh]:一个配置组名,可以随意配置字符串,只要和其他组名区分开就行 type:tcp或者udp,映射web或者ssh端口都是tcp local_ip:需要映射的内网主机ip,本机写127.0.0.1就可以 local_port:需要映射的内网主机端口 remote_port:使用云服务器哪个端口访问该服务器

客户端启动命令:

./frpc -c ./frpc.ini &

备注: 阿里云需开通:7000、6000端口

自己电脑ssh远程访问内网服务器

ssh -oPort=6000 root@x.x.x.x

开机启动配置和后台运行 云服务:

cd /lib/systemd/system/ vim frps.service

添加一下内容

[Unit] Description=fraps service After=network.target syslog.target Wants=network.target [Service] Type=simple ExecStart=/home/software/frp_0.29.0_linux_amd64/frps -c /home/software/frp_0.29.0_linux_amd64/frps.ini [Install] WantedBy=multi-user.target

备注: ExecStart的/home/software/frp_0.29.0_linux_amd64 换成自己frp的存放地址

命令就可以控制启动和停止:

systemctl start frps systemctl stop frps

设置开机启动:

systemctl enable frps

看日志命令:

tail -f nohup.out

查看是否启动成功

ps -ef|grep frps

root 9873 8418 0 14:32 pts/0 00:00:00 grep --color=auto frps root 28508 1 0 10:12 ? 00:00:02 /home/software/frp_0.29.0_linux_amd64/frps -c /home/software/frp_0.29.0_linux_amd64/frps.ini

查看开机启动项命令:

systemctl list-unit-files

内网服务器和云端配置一样,只需要改一下启动配置文件

定时任务监听是否启动,云端服务器配置 我shell位置目录

cd /home/shell vim frp.sh

添加如下内容:

pid=$(ps -ef|grep frps|grep -v grep | awk '{print $2}') #日志输出 monitorLog=/home/shell/logs/frps.log Monitor() { echo "[info]开始监控frps...[$(date +'%F %H:%M:%S')]" echo "[info]frps进程ID为:$pid. " if [ -n "$pid" ];then echo "[info]frps进程ID为:$pid. 运行正常" else echo "[error]进程不存在! frps自动重启..." $(systemctl start frps) echo "[info]frp启动成功" fi echo "------------------------------" } Monitor>>$monitorLog

修改权限:chmod u+x frp.sh

添加到定时任务

vim /etc/crontab

最后添加:

*/30 * * * * root /home/shell/frp.sh

半小时监控一次 加载任务,生效

crontab /etc/crontab

最新回复(0)