Установка proxy сервера на стороне провайдера при работе клиентов через NAT

В случае, если провайдер при предоставлении услуг интернета своим абонентом использует NAT (схему с серыми ip адресами), для корректной работы метода AUTH, необходимо на стороне провайдера установить proxy сервер для того, что бы система 24ТВ смогла могла в методе AUTH передавать серый IP пользователя для последующей его идентификации на стороне оператора. Proxy сервер должен иметь реальный IP и поддерживать работу HTTP и HTTPS.

Для этого, на сервере в сети провайдера, к которому пользователи подключаются со своих серых IP адресов, необходимо установить nginx (версии не меньше 0.7.0),  со следующей конфигурацией:

server
{

   listen       NNNN;
listen PPPP ssl; server_name xxx.providername.ru; access_log logs/proxy.access.log; error_log logs/proxy.error.log; ssl_certificate /x/y/z_fullchain.pem;
ssl_certificate_key /x/y/z_privkey.pem;
ssl_trusted_certificate /x/y/z_chain.pem;
location / {
resolver 1.1.1.1 valid=30s ipv6=off;
set $api https://provapi.24h.tv; proxy_set_header Host provapi.24h.tv; proxy_pass $api;
proxy_ssl_name provapi.24h.tv;
proxy_ssl_server_name on; proxy_set_header X-Forwarded-For $remote_addr; } }

где:

  • NNNN/PPPP - порт, на котором слушает nginx.
  • xxx.providername.ru - имя сервера.

В случае невозможности установить nginx требуемой версии и/или каких-либо иных проблем, касающихся SSL/TLS, допускается конфигурация с проксированием в plain HTTP, однако ее поддержка в будущем не гарантируется:

server
{

   listen       NNNN;
   server_name  xxx.providername.ru;

   access_log  logs/proxy.access.log;
   error_log   logs/proxy.error.log;


   location /
   {
resolver 1.1.1.1 valid=30s ipv6=off;
set $api http://provapi.24h.tv; proxy_set_header Host provapi.24h.tv; proxy_pass $api; proxy_set_header X-Forwarded-For $remote_addr; } }


Данный сервер nginx должен стоять внутри сети, т.е. все клиентские запросы изнутри должны приходить на него напрямую, минуя NAT, трансляцию адресов и т.п. Таким образом появляется возможность передавать серые IP адреса клиентов в рамках интеграции для корректной работы метода AUTH.

После того, как nginx будет настроен, сообщите нам адрес (PROXY URL), на который будет обращаться приложение 24ТВ (xxx.providername.ru:NNNN) 


Внимание! 

Запросы формируются приложением 24ТВ, установленным на Телевизорах или ТВ-Приставках. С других устройств запросы не формируются.

Можно обеспечить работу метода AUTH для WEB-приложения (сайта https://24h.tv/).

Для этого провайдер должен обеспечить работу своего proxy-сервера по доменному имени с поддержкой HTTPS (пример: https://xxx.providername.ru/ ) с корректно настроенным и своевременно обновляемым SSL-сертификатом.

После выполнения этих настроек, необходимо сообщить об этом своему аккаунт-менеджеру (для подачи заявки на включение proxy на стороне web-приложения).

Как проверить?

Для проверки, достаточно открыть URL вашего прокси (http://xxx.providername.ru/v2/users/self/network) и в случае если прокси доступен по доменному имени и по HTTPS, то в ответе будет содержаться JSON код.


Внимание!
Для того чтобы мы могли мониторить ваш прокси со своей стороны, рекомендуем вам открыть доступ к вашему прокси с адресов

  1. 195.191.208.0/23
  2. 85.112.118.13