云服务器新手配置内网穿透服务(frp)
首先你得有一个公网服务器有了它你就可以借助它将自己电脑进行配置内网穿透让自己内网电脑也可以异地轻松访问。网上教程较多特此记录我自己的配置避免迷路我这里只记录我自己云服务小白在搭建内网穿透过程中遇到的一些问题及解决方法。目录前言服务端配置客户端配置alread exists 连接问题问题原因第一种可能第二种可能解决方案前言别人写的都比我详细另可参考FRP内网穿透工具从基础配置到高级功能的完整指南首先要理解frp内网穿透的原理是啥它就是服务器和客户端模式服务器端只要用服务器程序frps(frp server的缩写)运行服务器配置frps.ini或frps.toml不管后缀如何本质就是一个规范格式的txt文件即可客户端也只要用客户端程序frpc(frp client的缩写)运行客户端配置frpc.ini或frpc.toml不管后缀如何本质就是一个规范格式的txt文件即可。所以一般下载frp压缩包后有主要有四个文件分别是frps.exe 、frps.ini/frps.toml 、frpc.exe 、frpc.ini/frpc.toml根据服务器端或者客户端实质使用对应的程序和对应的配置就行了。下面讲怎么配置服务端配置所谓服务端就是你拥有公网IP的那个服务器我的配置bindPort7000该端口必须在防火墙上进行开通 auth.methodtoken默认即可 auth.tokenAAAA自定义可以复杂度高一些内网穿透很重要的东西记住它 webServer.addr0.0.0.0默认即可 webServer.port7555该端口必须在防火墙上进行开通 webServer.userzhangSanfrp 网页监控平台的登录名 webServer.passwordBBBBfrp 网页监控平台的密码前三行配置特别重要第一个为端口号这个端口好后面要与客户端配置一致第二行配置默认第三行特别注意auth.token的配置该配置也要与客户端配置信息一致下面的webServer的一系列配置为监控面板配置配置好后可以通过网页进行外部访问你frp工作情况登录后如下配置好后执行命令运行服务即可./frps-cfrps.ini 小技巧如果在后面增加符号则这个进程会在后台持续运行而不会随着这个shell关闭程序就会退出所以建议写成 ./frps-cfrps.ini注意如果服务端运行后不能登录到监控界面就可以联系一下云服务的客服要不然后面客户端配置就没啥意义了肯定失败。我当时就是这个情况第一次使用云服务器心里很慌以为是自己问题监控界面一直弹不出来联系阿里云客服后他让怎么操作了一下该监控界面就可以显示了。后面操作也都很简单没啥问题了。客户端配置所谓客户端就是你想远程访问苦于没有外网对于远程桌面还好但是有时候你想在内网机器上部署一个外网可以访问的网页或者用git、svn做版本控制就必须需要一个公网IP了下面以内网机器部署一个svn的服务端为例进行配置[common]server_addr你公网IP地址 server_port7000注意与服务端配置一致该端口必须在防火墙上进行开通 tokenAAAA(注意与服务器端配置一致)[svn]服务的名称自定义可以是svn、 ssh、远程桌面服务等,注意如果多个客户端配置时这个名称不能起相同名称否则有冲突造成异常typetcp 默认吧 local_ip127.0.0.1这个IP就是本机默认即可 local_port3690SVN客户端默认的本地端口本质就是内网IP该端口可以访问svn服务如果设置有变化可以进行相应更改 remote_port8888需要将本地端口映射到外网的端口本质就是外网IP该端口可以通过外网访问svn服务该端口必须在防火墙上进行开通配置好后执行命令运行服务即可frpc-cfrpc.ini以上只是粗略记载。 辉 2025.3.14如果有多个客户端进行内网穿透时服务端配置不用改动只用改动客户端的配置除了端口不能相同外端口也必须要在防火墙进行设置放开第一个中括号的名称也不能相同否则会有冲突造成的异常。alread exists 连接问题问题描述如下图客户端启动的时候有下面黄字并且使用公网IP连接不上同时如果细心去看服务器端也会有类似的提示如下图这是什么原因造成的呢经过仔细分析借助豆包给的提醒终于改好了。问题原因第一种可能出现这种状况还有一种可能是进程本来就运行了需要先杀死进程再运行所以在写Run_Frp.sh的时候先默认杀死一次frpc再开始运行进程pkill-9frpc ./frpc-c./frpc.ini第二种可能我有两台或者多台机器要进行内网穿透的时候有时候偷懒只将ini文件中的端口进行了更改其他东西并没有进行更改导致同样的一个ini文件中的服务器命名重复导致的如下图解决方案把所有部署内网穿透的ini文件进行检查中括号中的服务名称不能重复。如果重复了则会导致内网穿透失败。