CentOS搭建内网穿透frp并绑定自定义域名

简介: CentOS搭建内网穿透frp并绑定自定义域名

概述

最近在做微信小程序开发,回调url必须外网可以访问,用了ngrok的免费套餐,有时不太稳定且网速感人,想着手头好几台服务器,不如自己搭建不是更好吗。

环境

服务器:Centos 7.5

本机:Windows 10

日期:2021-1-2

版本均是当前时间最新版

步骤

  1. 安装golang

因为frp是基于go语言开发的,所以我们需要在服务器和本机都安装对应的golang

打开golang官网:https://golang.org/doc/install ,下载对应的版本

  • Centos安装
wget https://golang.org/dl/go1.15.6.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.15.6.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
go version

输出版本信息即表示安装成功

  • Windows直接下一步下一步安装即可
  1. 下载frp

GitHub地址:https://github.com/fatedier/frp/releases ,下载对应内核的版本

  • Centos

如果不清楚自己的服务器是什么内核的,可以在服务器里输入 go version ,会输出版本信息,例如: go version go1.15.6 linux/amd64

然后下载对应的即可

我这里是amd64的所以下载frp_0.34.3_linux_amd64.tar.gz

wget https://github.com/fatedier/frp/releases/download/v0.34.3/frp_0.34.3_linux_amd64.tar.gz
tar -C /usr/local -xzf frp_0.34.3_linux_amd64.tar.gz
cd /usr/local
ll
  • Windows

直接用浏览器下载 https://github.com/fatedier/frp/releases/download/v0.34.3/frp_0.34.3_windows_amd64.zip

网速慢问题,可使用油猴插件,https://github.com/RC1844/FastGithub

  1. 配置并启动

Centos操作:

  1. 进入frp目录
cd /usr/local
vi frps.ini
  1. 修改 frps.ini 文件,设置监听 HTTP 请求端口为 80:
[common]
# tunnel port通信管道
bind_port = 7000
# http和https
vhost_http_port = 80
vhost_https_port = 443
# 子域名
subdomain_host = xxx.code016.com
# token
token = 12345678ab
# dashboard图形管理页面
dashboard_port = 81 
dashboard_user = admin
dashboard_pwd = admin888
# ---设置完成----
  1. 启动frps
./frps -c frps.ini

看到输出

new proxy [web] success

即表示成功

  1. 浏览器输入ip:81,可以看到图形化的frp设置

Windows操作:

  1. 修改 frpc.ini 文件,假设 frps 所在的服务器的 IP 为 x.x.x.x,local_port 为本地机器上 Web 服务监听的端口, 绑定自定义域名为 custom_domains

    [common]
    server_addr = x.x.x.x
    server_port = 7000
    # token要跟服务器的一样
    token = 12345678ab
    
    [web]
    # 协议为http(即80端口)
    type = http
    # 内部映射的IP
    local_ip = 127.0.0.1
    # 内部映射为8080端口
    local_port = 8080
    # 域名地址
    custom_domains = xxx.code016.com
  2. 启动frpc。

在frp目录下打开cmd,输入

frpc.exe -c frpc.ini

看到输出

[web] start proxy success

即表示成功

域名解析

登录自己的域名平台,我的是在腾讯云购买的,添加A记录解析,记录值填自己服务器地址

frp.png

可选:将frps设置为服务

  1. vi /etc/systemd/system/frps.service
  2. 填写下面配置,路径要注意是否正确
[Unit]
Description=frps
After=network.target

[Service]
ExecStart=/usr/local/frp/frps -c /usr/local/frp/frps.ini 

[Install]
WantedBy=multi-user.target
  1. 命令
# 启动
systemctl start frps.service
# 关闭
systemctl stop frps.service
# 查看启动状态
systemctl status frps.service
# 开机自启
systemctl enable frps.service

测试

通过浏览器访问 http://xxx.code016.com 即可访问到处于内网机器上 8080 端口的服务

相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
2月前
|
监控 Serverless 测试技术
Serverless 应用引擎常见问题之生成的图片的oss地址配成自定义的域名如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
26 0
|
2月前
|
存储 网络协议 网络安全
oss自定义域名绑定(Custom Domain Binding)
阿里云OSS支持自定义域名绑定,让用户可通过自有域名访问存储文件。步骤包括:1) 确保域名已备案并在阿里云验证;2) 在OSS控制台选择Bucket,绑定自定义域名并验证备案号;3)(可选)配置SSL证书;4) 在DNS服务商处设置CNAME记录;5)(可选)启用CDN加速。此功能有助于提升品牌识别度、安全性和文件预览体验。
139 1
|
11天前
|
域名解析 弹性计算 Linux
阿里云购买云服务器、注册域名、备案及绑定图文教程参考
本文为大家介绍了2024年购买阿里云服务器和注册域名,绑定以及备案的教程,适合需要在阿里云购买云服务器、注册域名并备案的用户参考,新手用户可通过此文您了解在从购买云服务器到完成备案的流程。
阿里云购买云服务器、注册域名、备案及绑定图文教程参考
|
12天前
|
运维 JavaScript Java
Serverless 应用引擎产品使用之在阿里云函数计算中想为两个不同的服务分别开通自定义域名如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
25 1
|
9天前
|
安全 Java Linux
企业微信应用结合Cpolar内网穿透实现固定域名验证回调本地接口服务
企业微信应用结合Cpolar内网穿透实现固定域名验证回调本地接口服务
|
12天前
|
弹性计算 运维 监控
Serverless 应用引擎产品使用之在阿里函数计算中,函数计算的的自定义域名的路由节约时间如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
142 0
|
12天前
|
运维 Serverless API
Serverless 应用引擎产品使用之在阿里云Serverless中将已有的域名绑定到FC函数上如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
25 1
|
12天前
|
人工智能 运维 Serverless
Serverless 应用引擎产品使用之阿里函数计算中3.0的函数只加自定义域名没有任何触发器的意义如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
22 1
|
12天前
|
运维 网络协议 安全
Serverless 应用引擎产品使用之阿里云函数计算中添加自定义域名进行域名DNS验证如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
20 1
|
1月前
|
网络协议 Serverless 网络安全
阿里云函数计算自定义域名的SSL证书免费全自动申请及部署
阿里云函数计算简化了开发部署,让用户专注业务逻辑,降低了运维复杂性。然而,SSL证书支持需额外付费:免费证书有效期缩短至3个月,1年证书及自动化部署均收费。为节省成本,小微企业和个人开发者可以采用一套全自动、全免费的SSL证书申请、续签和部署方案。该方案包括自动向Let's Encrypt申请证书、使用阿里云OpenAPI更新证书以及在证书到期前提前申请。通过Win-Acme(Windows)实现,详细步骤包括设置win-acme、自动DNS验证和更新函数计算证书。
120 5

热门文章

最新文章