# Введение.

Операции с сервером осуществляются при помощи скрипта c:\Program Files\KeenVision3Server\wizard.ps1, который нужно запускать при помощи PowerShell.

ВОЗМОЖНОСТЬ!

Работу скрипта можно прервать в любой момент - нажмите клавиши Ctrl+C

При помощи меню нужно выбрать схему подключения:

KeenVision3 Server Vx.x.x
  Health
  Start
  Stop
 >Settings
  Install
  Backup & Restore
  Exit

KeenVision3 Server settings:
 >Connection scheme
  Email account
  reCAPTCHA
  Back

KeenVision3 Server connection scheme:
 >LAN
  Secure Internet and LAN
  Back

Активная схема подключения отображается курсором меню >.

ВНИМАНИЕ!

После изменении параметров схемы подключения, связь с подключенными устройствами будет потеряна!

Как не потерять связь с устройствами написано здесь.

ВНИМАНИЕ!

Перед изменением схемы подключения создайте резервную копию текущей схемы подключения.

# Схема подключения "LAN" - доступ из локальной сети.

В этой схеме доступ к веб-приложению возможен только из локальной сети, устройства отображения также должны подключаться к локальной сети.

Для настройки этой схемы нужно ввести адрес сервера и три порта:

KeenVision3 Server connection scheme:
 >LAN
  Secure Internet and LAN
  Back

Server's Domain name or IP-address: 192.168.0.12
Port number for Web-interface: 80
Port number for connecting devices via HTTPS: 443
Port number for connecting devices via AMQPS: 9053

# Параметр "Server's Domain name or IP-address"

В этот параметр нужно ввести локальное доменное имя сервера или IP-адрес интерфейса сервера, которым он подключен к локальной сети.

Этот параметр определяет:

  • что нужно будет набирать в веб-браузере для подключения к порталу;
  • что нужно вводить в устройствах, при их первичном подключении к порталу.

Предпочтительный вариант - короткое локальное доменное имя сервера. В этом случае при входе на портал и при настройке устройств не придется вводить длинный IP-адрес сервера.

Имя сервера задается в настройках DNS-сервера локальной сети.

Проверить правильность присвоения локального доменного имени можно командой ping, которую можно запустить прямо в командной строке сервера.

Например, для доменного имени сервера "cloud":

ping cloud
  Обмен пакетами с cloud [192.168.0.12] с 32 байтами данных:
  Ответ от 192.168.0.12: число байт=32 время=9мс TTL=63

Если локальный DNS-сервер настроен верно, то отобразится строка "Ответ от 192.168.0.12", в нашем примере 192.168.0.12 - это IP-адрес сервера.

ВАЖНО!

IP-адрес сервера нужно обязательно зафиксировать! В сервере нужно прописать статический IP-адрес или зафиксировать IP-адрес сервера в DHCP-сервере локальной сети.

# Порты:

  • "Port number for Web-interface" - порт для доступа к веб-интерфейсу сервера по протоколу HTTP. Предпочитаемое значение 80, если ввести другой номер порта, то его придется вводить при входе в веб-интерфейс;
  • "Port number for connecting devices via HTTPS" - порт для первичного подключения устройств по протоколу HTTPS. Предпочитаемое значение 443, если ввести другой номер порта, то его придется вводить в устройстве, при его первом подключении;
  • "Port number for connecting devices via AMQPS" - порт для штатной связи с устройствами по протоколу AMQPS, любой свободный порт.

ВНИМАНИЕ!

Указываемые порты должны быть свободны.

# Схема подключения "Secure Internet and LAN" - доступ из Интернет и локальной сети.

Эта схема позволяет пользователям и устройствам подключаться, как из локальной сети, так и из сети Интернет.

ВНИМАНИЕ!

Эта схема требует высокой квалификации ИТ-специалиста:

  • регистрация и делегирование доменных имен
  • настройка DNS-серверов
  • настройка HTTP/HTTPS reverse-proxy
  • проброс портов

# Подготовка: прокси, реальный IP-адрес, доменные имена, DNS.

В этой схеме между локальной сетью, к которой подключен сервер KeenVision™️3, и сетью Интернет стоит устройство, которое будем называть прокси (это может быть маршрутизатор, или сервер).

Для подключения к сети Интернет прокси должен использовать реальный IP-адрес. Например, 77.77.77.77

Нужно зарегистрировать доменное имя, например, example.com

ВОЗМОЖНОСТЬ!

Доменное имя можно зарегистрировать бесплатно!

Произвести делегирование этого домена — указать список DNS-серверов.

Настроить DNS-сервер в сети Интернет, создать две доменные зоны:

  • имя cloud.example.com, значение 77.77.77.77
  • имя amqp.example.com, значение 77.77.77.77

Проверить командой ping доступность доменных зон. Например:

ping cloud.example.com
  Обмен пакетами с cloud.example.com [77.77.77.77] с 32 байтами данных:
  Ответ от 77.77.77.77: число байт=32 время=9мс TTL=63

ping amqp.example.com
  Обмен пакетами с amqp.example.com [77.77.77.77] с 32 байтами данных:
  Ответ от 77.77.77.77: число байт=32 время=9мс TTL=63

Теперь наш прокси доступен из сети Интернет по доменному имени.

Принцип работы:

  • подключение к веб-приложению осуществляется по имени cloud.example.com через порт 443 прокси по протоколу HTTPS
  • первичное подключение устройств к серверу осуществляется по имени cloud.example.com через порт 443 прокси по протоколу HTTPS
  • штатное подключение устройств к серверу из Интернет осуществляется по имени amqp.example.com через специальный порт прокси по протоколу AMQPS
  • штатное подключение устройств к серверу из локальной сети осуществляется по локальному имени amqp.example.com через специальный порт сервера по протоколу AMQPS

Пусть сервер KeenVision™️3, в локальной сети, имеет IP-адрес 192.168.0.12

ВАЖНО!

IP-адрес сервера нужно обязательно зафиксировать! В сервере нужно прописать статический IP-адрес или зафиксировать IP-адрес сервера в DHCP-сервере локальной сети.

HTTP/HTTPS reverse-proxy

Теперь нужно установить на наш проки и настроить HTTP/HTTPS reverse-proxy, так чтобы пакеты с интерфейса, подключенного к сети Интернет, с порта 443 (обязательно 443), с доменного имени cloud.example.com преобразовывались из протокола HTTPS в протокол HTTP и отправлялись на порт 80 сервера KeenVision™️3 (на адрес 192.168.0.12:80).

Реализовать HTTP/HTTPS reverse-proxy можно при помощи nginx, apache и других приложений.

Для работы HTTP/HTTPS reverse-proxy потребуются SSL-сертификаты. Лучше использовать бесплатные Let’s Encrypt сертификаты.

Настройка штатного подключения устройств из локальной сети

Чтобы было возможно подключение устройств из локальной сети, нужно настроить локальный DNS-сервер: для IP-адреса 192.168.0.12 нужно задать имя amqp.example.com. Проверяем настройку локального DNS. На любом компьютере, подключенном к локальной сети, выполняем команду ping

ping amqp.example.com
  Обмен пакетами с amqp.example.com [192.168.0.12] с 32 байтами данных:
  Ответ от 192.168.0.12: число байт=32 время=9мс TTL=63

Должен отображаться IP-адрес KeenVision™️3 сервера.

Настройка штатного подключения устройств из Интернет

Порт прокси 9053 с интерфейса, подключенного к сети Интернет, пробрасываем на 9053 порт сервера KeenVision™️3. Этот порт будет использоваться для штатного подключения устройств.

# Настройка сервера KeenVision™️3

Для нашего примера, настройка сервера Keenvision™️3 будет выглядеть так:

KeenVision3 Server connection scheme:
  LAN
 >Secure Internet and LAN
  Back

KeenVision3 Server port number for Web-interface: 80
KeenVision3 Server and Proxy port number for connecting devices via AMQPS: 9053
KeenVision3 Server port number for connecting devices via HTTP (any free port) : 12443
Proxy Domain name for Web-interface: cloud.example.com
Proxy port number for Web-interface: 443
Proxy Domain name for connecting devices via AMQPS: amqp.example.com

В параметре KeenVision3 Server port number for connecting devices via HTTP (any free port) нужно указать любой свободный порт.

ВНИМАНИЕ!

Указываемые порты должны быть свободны.

ОПАСНО!

Настоятельно рекомендуем включить reCAPTCHA - это защитит портал от подбора имени пользователя и пароля. Для включения reCAPTCHA нужно задать параметры в меню /Settings/reCAPTCHA

ВОЗМОЖНОСТЬ!

Для того, чтобы было возможно восстанавливать пароли при помощи Email, необходимо настроить Email-сервер - меню /Settings/Email account

# Конфигурационный файл

Скрипт wizard.ps1 сохраняет все настройки в конфигурационном файле C:\Program Files\KeenVision3Server\Tools\config.xml

ВНИМАНИЕ!

Для типовых применений конфигурационный файл изменять не нужно.

В то же время, есть настройки, которые нужно напрямую задавать в конфигурационном файле.

После изменения конфигурационного файла, запустите следующие меню:

  • Stop
  • Settings / Connection scheme - выберете вашу схему и проверьте все параметры
  • Start

После запуска сервера конфигурационный файл может измениться, проверьте сохранились ли внесенные вами изменения.