FRP内网穿透服务的搭建与使用【linux下设置开启自启动并集成到系统服务】【亲测可用】

艺帆风顺 发布于 2025-04-03 20 次阅读


FRP内网穿透服务的搭建与使用

FRP是一款高性能的内网穿透工具,可以帮助将内网中的服务暴露在公网上,方便访问和使用。本文将介绍如何在Linux和Windows系统中搭建FRP服务,并给出相应的配置文件示例:

1. 下载和安装

FRP官方提供了Linux和Windows版本的可执行程序,可以在官网下载:https://github.com/fatedier/frp/releases选择对应的版本进行下载解压即可。

2. 配置文件

FRP需要通过配置文件指定服务器端口、协议、认证信息等参数,下面分别介绍服务端和客户端的配置文件。

2.1 服务端配置

服务端配置文件名为frps.ini,通常放置在FRP程序文件夹下的conf目录下。以下是一个简单的配置文件示例:

  1. # frps.ini

  2. [common]

  3. bind_addr = 0.0.0.0

  4. bind_port = 7000

  5. [ssh]

  6. type = tcp

  7. local_ip = 192.168.1.100

  8. local_port = 22

其中,[common]表示公共配置,包括服务器端口和认证方式,[ssh]表示要内网穿透的服务,包括协议、本地IP和端口。以上示例中,FRP会将外部访问地址的7000端口转发到内网IP地址为192.168.1.100的主机的22端口,实现外部访问内网SSH服务的功能。

2.2 客户端配置

客户端配置文件名为frpc.ini,通常放置在FRP程序文件夹下的conf目录下。以下是一个简单的配置文件示例:

  1. # frpc.ini

  2. [common]

  3. server_addr = server_ip

  4. server_port = 7000

  5. [ssh]

  6. type = tcp

  7. local_ip = 127.0.0.1

  8. local_port = 2222

  9. remote_port = 6000

其中,[common]表示公共配置,包括服务器地址和端口,[ssh]表示要内网穿透的服务,包括协议、本地IP和端口以及远程端口。以上示例中,客户端会将本地2222端口映射到远程服务器的6000端口,在外部通过远程服务器地址和端口访问内网SSH服务。

3. 启动服务

下面以Linux和Windows系统为例,介绍如何启动FRP服务。

3.1 Linux系统

使用以下命令启动服务端:

  1. ./frps -c ./conf/frps.ini

使用以下命令启动客户端:

  1. ./frpc -c ./conf/frpc.ini

3.2 Windows系统

在cmd或PowerShell中,使用以下命令启动服务端:

.frps.exe -c .conffrps.ini

使用以下命令启动客户端:

.frpc.exe -c .conffrpc.ini

4.设置自启动

在Linux系统中,可以通过systemd来设置FRP服务的自启动。

首先,创建一个systemd配置文件frp.service,文件内容如下:

  1. # frp.service

  2. [Unit]

  3. Description=frp service

  4. After=network.target

  5. [Service]

  6. Type=simple

  7. ExecStart=/path/to/frps -c /path/to/conf/frps.ini

  8. Restart=on-failure

  9. [Install]

  10. WantedBy=multi-user.target

其中,/path/to/frps/path/to/conf/frps.ini需要替换为实际路径。

然后,将该文件拷贝到systemd配置目录中:

  1. sudo cp frp.service /etc/systemd/system/

最后,启动并开启自启动:

  1. sudo systemctl start frp

  2. sudo systemctl enable frp

在Windows系统中,可以将FRP服务添加到系统服务中,实现自启动。

首先,使用管理员权限打开命令提示符(或PowerShell),运行以下命令:

  1. sc create FRP binPath= "D:pathtofrps.exe -c D:pathtoconffrps.ini" DisplayName= "FRP" start= auto

其中,D:pathtofrps.exeD:pathtoconffrps.ini需要替换为实际路径。

然后,启动服务:

  1. sc start FRP

5. 总结

通过FRP内网穿透,可以实现在外网访问内网中的服务。本文介绍了在Linux和Windows系统中搭建FRP服务的步骤,并给出了相应的配置文件示例。

版权声明:本文内容来自个人博客:CHERWIN,遵循CC 4.0 BY-SA版权协议上原文接及本声明。本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。原文链接:https://cherwin.cn/index.php/archives/74/如有涉及到侵权,请联系,将立即予以删除处理。在此特别鸣谢原作者的创作。此篇文章的所有版权归原作者所有,与本公众号无关,商业转载建议请联系原作者,非商业转载请注明出处。