frp内网穿透自定义域名
时间: 2023-11-16 10:58:44 浏览: 202
frp内网穿透可以通过自定义域名来实现对内网服务的访问。在配置文件中,需要将自己购买的域名A解析至云主机的IPv4地址,并在配置文件中指定custom_domains参数为所绑定的公网服务器域名。例如,如果你购买了域名repo.iwi.com并将其A解析至云主机的IPv4地址,那么在配置文件中需要将custom_domains参数设置为repo.iwi.com。这样,当外部用户访问repo.iwi.com时,frp会将请求转发至内网web服务的端口号,从而实现对内网服务的访问。
相关问题
frp内网穿透如何绑定域名
### FRP 内网穿透并绑定域名配置方法
#### 准备工作
为了实现FRP内网穿透并绑定自定义域名,需先下载适合操作系统的FRP版本。对于Linux AMD64系统而言,可执行如下命令获取最新版的FRP软件包[^3]:
```bash
wget https://github.com/fatedier/frp/releases/download/v0.51.2/frp_0.51.2_linux_amd64.tar.gz
```
创建专门用于存放FRP文件夹,并解压下载好的压缩包至该目录下:
```bash
mkdir /home/nat && tar -xvf frp_0.51.2_linux_amd64.tar.gz -C /home/nat/
```
确保已安装文本编辑器如Vim以便后续修改配置文件:
```bash
sudo apt install vim
```
#### 服务端(Server Side)设置
进入`/home/nat`路径下的FRP文件夹中找到名为`frps.ini`的服务端配置文件,利用Vim或其他偏好使用的编辑工具打开它进行必要的参数调整:
- `bind_port`: 设定客户端连接此端口来建立通信链路;
- `vhost_http_port`, `vhost_https_port`: 分别指定HTTP(S)请求转发的目标端口号,默认情况下分别为80和443;
- `dashboard_*`: 提供监控面板的相关设定项。
具体实例化后的部分配置可能看起来像这样:
```ini
[common]
bind_port = 7000
vhost_http_port = 8080
vhost_https_port = 443
...
token = your_secret_token_here
```
注意,在实际部署过程中应当依据个人环境适当更改上述数值以及补充其他所需选项,比如启用Prometheus指标收集功能等高级特性。
#### 客户端(Client Side)设置
同样地,在本地计算机上也需要准备一份类似的初始化过程——即下载对应平台架构的二进制分发包、提取到合适位置之后再着手于客户机侧专属的部分——也就是位于同一级目录里的另一个INI文档:`frpc.ini`.
针对希望暴露给公网访问的应用程序来说,这里的关键在于正确定义隧道规则,特别是当涉及到HTTPS协议时更要注意细节处理。下面给出了一段示范性的片段说明如何关联特定主机名(pi.liunaijie.top),并通过SSL加密通道将其映射回内部网络中的某台设备监听着的标准安全Web服务器接口(443)[^1]:
```ini
[https_service_name]
type = https
local_ip = 127.0.0.1
local_port = 443
custom_domains = pi.liunaijie.top
```
完成以上步骤后保存所做的全部改动;最后分别启动两处节点上的守护进程即可生效整个方案的效果验证阶段了!
frp内网穿透 https
### 使用 FRP 进行内网穿透并配置 HTTPS
#### 安装和准备
为了使 FRP 正常运行,服务器端(具有公网 IP 的机器)和服务端(位于内网的机器)都需要安装对应的程序。对于 HTTPS 协议的支持,FRP 提供了 `https` 和 `tunnel` 类型来处理这类请求。
确保已经获取了域名以及相应的 SSL/TLS 证书文件,这些文件通常包括 `.crt` 或者 `.pem` 文件用于公钥认证,`.key` 文件则保存私钥[^1]。
#### 服务端 (Server) 配置
编辑 `/etc/frps.ini` 或其他指定位置的服务端配置文件:
```ini
[common]
bind_port = 7000
vhost_http_port = 80
vhost_https_port = 443
dashboard_port = 7500
privilege_token = your_secure_password
tls_cert_file = /path/to/your/cert.pem
tls_key_file = /path/to/your/key.pem
```
上述配置指定了 HTTP(S) 请求监听端口,并启用了 TLS 加密连接所需的证书路径[^2]。
#### 客户端 (Client) 设置
接着,在客户端上创建或修改 `/etc/frpc.ini` 文件如下所示:
```ini
[common]
server_addr = x.x.x.x ; 替换成实际的服务端地址
server_port = 7000 ; 对应于 bind_port 参数值
privilege_token = your_secure_password
[web]
type = https ; 明确指出此条目为 HTTPS 流量转发
local_ip = 127.0.0.1 ; 内部 Web 应用所在主机 IP 地址,默认即可
local_port = 80 ; 转发至内部 Web 应用开放的端口号
custom_domains = example.com ; 将要绑定到该子域上的自定义域名列表
```
这里设置了与服务端相同的权限令牌以验证身份;同时声明了一个名为 `[web]` 的代理实例,其作用就是把来自外部针对特定域名的所有 HTTPS 请求重定向给本地 web server 处理[^3]。
完成以上步骤之后重启双方的服务进程让更改生效。此时当访问 `https://example.com` 时就会自动被路由到内网中的目标站点上了。
阅读全文
相关推荐















