如何给srs配置https协议,并通过nginx转发请求访问到srs

本文介绍了如何在局域网环境中,通过创建Ubuntu虚拟机作为nginx和SRS服务器,配置桥接模式并进行DNS劫持,实现域名对内网SRS服务器的WebRTC流量代理。详细步骤包括安装、配置、证书生成和HTTPS代理设置等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

背景 

目的

局域网实验

1、创建2个Ubuntu虚拟机,分别作为nginx服务器、SRS服务器。配置为桥接模式连接局域网(有独立IP)

2、通过Linux的ifconfig命令,分别查看两服务器的IP

3、修改C:\Windows\System32\drivers\etc\hosts文件,添加如下内容:(做DNS劫持,在局域网模拟公网环境)

4、SRS服务器配置

        1、git clone SRS代码仓库到~/,按readme执行初始化

        2、安装go语言环境

         3、在~/srs/trunk/3rdparty/httpx-static下编译httpx-static:

        4、 使用OpenSSL发布自签名证书,得到证书mysrs.crt和私钥mysrs.key,复制到~/srs/trunk/3rdparty/httpx-static:

        5、启动httpx-static,代理SRS到https协议:

        6、启动SRS,此时可以通过https协议访问SRS服务器。

5、nginx服务器配置

        1、安装nginx:

        2、输入sudo nginx -t,找到config所在的位置,如:/etc/nginx,将证书复制到此

        3、在该目录下的./conf.d文件夹,创建新的conf文件srs.conf(文件名称不做要求)

        4、启动nginx

        5、测试


背景 

nginx服务器(公网暴露访问,挂域名)

SRS服务器(内网IP访问,也可公网IP访问,无域名)

目的

实现用户通过域名nginx服务器发送WebRTC推拉流请求,由nginx服务器代理到SRS服务器SRS服务器不在公网暴露。

局域网实验

1、创建2个Ubuntu虚拟机,分别作为nginx服务器、SRS服务器。配置为桥接模式连接局域网(有独立IP)

2、通过Linux的ifconfig命令,分别查看两服务器的IP

3、修改C:\Windows\System32\drivers\etc\hosts文件,添加如下内容:(做DNS劫持,在局域网模拟公网环境)

4、SRS服务器配置

        1、git clone SRS代码仓库到~/,按readme执行初始化

        2、安装go语言环境

        sudo apt install golang-go

         3、在~/srs/trunk/3rdparty/httpx-static下编译httpx-static

srs@ubuntu:~/srs/trunk/3rdparty/httpx-static$ go build -mod=vendor .

        4、 使用OpenSSL发布自签名证书,得到证书mysrs.crt私钥mysrs.key,复制到~/srs/trunk/3rdparty/httpx-static

openssl genrsa -out mysrs.key 2048 &&
subj="/C=CN/ST=Beijing/L=Beijing/O=Me/OU=Me/CN=192.168.0.110" &&	# 这里需要替换内网IP
openssl req -new -x509 -key mysrs.key -out mysrs.crt -days 3650 -subj $subj &&

        5、启动httpx-static,代理SRS到https协议:

srs@ubuntu:~/srs/trunk/3rdparty/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值