OvenMediaEngine Enterprise
한국어
한국어
  • About
    • Introduction
    • Release Notes
      • 0.18.2
      • 0.18.1
      • 0.18.0
      • 0.17.3
      • 0.17.2
      • 0.17.1
      • 0.17.0
      • 0.16.8
      • 0.16.7
      • 0.16.6
      • 0.16.5
      • 0.16.4
  • Installation
    • Getting Started
      • Getting Started with Ubuntu
      • Getting Started with RHEL
      • Getting Started with Docker
    • Configuration Structure Overview
  • Web Console
    • Getting Started with Web Console
    • Web Console Overview
      • Sign In
      • Change Password
      • Web Console Home
      • Stream List
        • Managed and Instant Streams
        • Scheduled Channels | 0.16.4.0+
        • Multiplex Channels | 0.16.5.0+
      • Event Monitoring | 0.18.1.0+
        • Event Configuration
        • Event Specification
      • Web Console Publishing | 0.18.1.2+
      • Logs
      • Configuration Files
      • Restart
  • Web Console Settings
    • Server Settings
    • Live Sources (Ingress Protocols) Settings
    • ABR and Transcoding Settings
    • Streaming (Egress Protocols) Settings
    • TLS Encryption Settings | 0.14.0.0+
    • Access Control Settings
    • Thumbnail Settings | 0.15.7.0+
    • Recording Settings | 0.16.5.0+
    • Push Publishing Settings | 0.15.14.0+
    • REST API Settings | 0.11.0.0+
    • Alert Settings | 0.15.11.0+
  • CDN Compatibility
    • Origin Server Redundancy
    • Origin Cache Control
  • Protection
    • RTMP Authentication | 0.17.2.0+
    • Proxy Protocol Integration | 0.16.6.2+
    • Digital Rights Management (DRM)
      • OvenMediaEngine Configuration for DRM | 0.16.0.0+
      • PallyCon DRM Configuration | 0.16.4.0+
  • Performance
    • Hardware-Accelerated Video Encoding | 0.16.4.0+
  • Event Insertion
    • Insert SEI into H.264 (AVC) Streams | v0.18.0.0+
    • Insert AMF0 messages in RTMP Push Publisher | 0.17.3.0+
  • Monetization
    • Insert Ad Markers (EXT-X-CUE-OUT/EXT-X-CUE-IN) | v0.17.3.0+
    • Insert onCuePoint messages into YouTube Live | 0.17.3.0+
  • Advanced Management
    • Generate Audio PTS | 0.17.2.3+
    • API Storage | 0.17.0.0+
    • Restart Application | 0.17.0.0+
    • Record Delivery | 0.16.5.0+
    • Add Delay to the Stream
    • Control Default Playlist Creation
  • REST API
    • v2
      • Statistics
        • Current
Powered by GitBook
On this page
  • Access Control에서 HAProxy Protocol 사용하기
  • SignedPolicy
  • Admission Webhooks
  1. Protection

Proxy Protocol Integration | 0.16.6.2+

OvenMediaEngine Enterprise 0.16.6.2-1 버전부터 HAProxy의 The PROXY protocol version 1을 지원합니다.

이 기능을 통해 OvenMediaEngine은 The PROXY protocol을 통해 입력되는 스트림을 처리할 수 있습니다. 이 기능을 활성화 하기 위해서는 다음과 같이 Server.xml에서 <HAProxyProtocol>을 활성화 하십시오.

<Server>
...
  <Modules>
    <!-- Cloudflare를 위한 HAProxyProtocol 기능 활성화, 기본값: false -->
    <HAProxyProtocol>
      <Enable>true</Enable>
    </HAProxyProtocol>
... 

Access Control에서 HAProxy Protocol 사용하기

당신은 HAProxy Protocol 위에서 전달되는 Client Address를 Access Control에서 사용할 수 있습니다.

SignedPolicy

SignedPoicy에 real_ip 정책이 설정되면 당신은 HAProxy Protocol을 통해 전달되는 Client Address를 검증할 수 있습니다. allow_ip는 직접 연결된 클라이언트의 IP이므로, 접속된 IP가 허용된 프록시 서버의 IP인지 먼저 검사하면 보안성을 더 강화할 수 있습니다.

{
    "url_activate":1399711581,                                    
    "url_expire":1399721581,                                    
    "stream_expire":1399821581,                                    
    "allow_ip":"192.168.100.5/32",
    "real_ip":"111.111.111.111/32"
}

HAProxyProtocol이 활성화 될 경우, SignedPolicy는 The Proxy protocol 을 통해 전달되는 Client Address를 real_ip와 비교하여 검증합니다.

세부 가이드: https://airensoft.gitbook.io/ovenmediaengine/v/dev/access-control/signedpolicy

Admission Webhooks

AdmissionWebhooks의 real_ip에 HAProxy Protocol을 통해 전달되는 Client Address가 Control Server에 전달됩니다.

address에는 기존과 동일하게 직접 연결된 클라이언트의 IP가 전달되므로, 그 IP가 허용된 프록시 서버의 IP인지 먼저 검사하면 보안성을 더 강화할 수 있습니다.

POST /configured/target/url/ HTTP/1.1
Content-Length: 325
Content-Type: application/json
Accept: application/json
X-OME-Signature: f871jd991jj1929jsjd91pqa0amm1
{
  "client": 
  {
    "address": "211.233.58.86",
    "port": 29291,
    "real_ip": "192.0.2.43",
    "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"
  },
  "request":
  {
    "direction": "incoming | outgoing",
    "protocol": "webrtc | rtmp | srt | llhls | thumbnail",
    "status": "opening | closing",
    "url": "scheme://host[:port]/app/stream/file?query=value&query2=value2",
    "new_url": "scheme://host[:port]/app/new_stream/file?query=value&query2=value2",
    "time": "2021-05-12T13:45:00.000Z"
  }
}

HAProxyProtocol이 활성화 될 경우, AdmissionWebhooks는 real_ip에 기존의 X-REAL-IP나 X-FORWARDED-FOR 헤더보다, The Proxy protocol 을 통해 전달되는 Client Address를 가장 높은 우선순위로 셋팅합니다.

세부 가이드: https://airensoft.gitbook.io/ovenmediaengine/v/dev/access-control/admission-webhooks

PreviousRTMP Authentication | 0.17.2.0+NextDigital Rights Management (DRM)