Настройка HTTPS для редактирования конфигурации на локальном диске терминала

Настройки терминалов, хранящиеся на локальных дисках самих терминалов, начиная с wtware версии 5.4.26 редактируются только с паролем и по безопасному протоколу https. Пока только конфигурации терминала и config.txt на Raspberry, но дальше будет больше.

Есть проблема: https сделан для настоящих серверов. С заранее известными именами. Сертификаты шифрования, необходимые для https, привязаны к именам или IP адресам серверов. Но мы же не знаем ни адресов, ни имен ваших терминалов с WTware.

Нельзя выдать https сертификат на произвольный IP. Браузеры такой не понимают.

Нельзя выдать https сертификат на любое имя. Максимум, на что согласны браузеры — произвольная часть доменного имени на третьем уровне.

Есть три варианта:

  1. Соглашаться на исключение безопасности для каждого терминала, на котором приходится что-то редактировать. Шифрование в https всегда работает, и, хоть браузер и ругается, все равно такой https с ошибками безопаснее, чем нешифрованный http. Можно работать так и не читать дальше.
  2. Можно установить наш корневой сертификат и настроить DNS. Сложнее, зато браузер будет показывать зеленый замок, как с настоящими https сайтами.
  3. Можно сделать свой корневой сертификат, установить его на свою машину и раздать терминалам. И настроить DNS. Еще сложнее, зато не придется доверять нашему корневому сертификату.

Установить наш корневой сертификат

Наш корневой сертификат можно взять на любом терминале. Откройте IP терминала по http (не https) и зайдите в раздел "About HTTPS". При установке сертификата на Firefox надо поставить одну галку:

Установка сертификата

Internet Explorer и Chrome:





Настроить DNS

Сертификат сделан на *.wtware.local. Надо настроить DNS, чтобы у терминалов были имена в этой зоне, и в браузере обращаться по имени, а не IP терминала. Простой и скучный вариант: руками в Notepad добавить в файл C:\Windows\System32\drivers\etc\hosts несколько строчек такого вида про нужные терминалы:

192.168.5.25 term1.wtware.local
192.168.5.26 term2.wtware.local
192.168.5.33 buh.wtware.local

Интереснее настроить DNS. WTware умеет присылать обновления DNS при настройке по DHCP, но инструкции про настройку обновления DNS от DHCP в Windows придется искать в Google самостоятельно.

Сделать свой сертификат

Если вы не хотите устанавливать наш корневой сертификат. Или хотите использовать другие имена, не из *.wtware.local.

  1. Скачать архив и достать и него файл https.inf.
  2. Из командной строки, в том же каталоге, где находится https.inf:
    certreq.exe -new https.inf https.req
    Должно получиться так:
  3. Файлы https.inf и созданный https.req больше не нужны, можно удалить.
  4. Win-R, certmgr.msc. Экспортировать созданный сертификат:
  5. Выбрать "Yes, export the private key"
  6. Выбрать "Export all extended properties"
  7. Установить пароль: wtware Шесть маленьких латинских букв.
  8. Сохранить под именем https.pfx.
  9. Импортировать сохраненный https.pfx в Trusted Root:
  10. Скопировать https.pfx в корень загрузочной USB флешки или SD карты WTware.

Этот сертификат тоже привязан к именам *.wtware.local. DNS все равно придется настраивать. Можно привязать сертификат к другим именам, отредактировав https.inf.

Результат

Когда корневой сертификат установлен и DNS имя терминала прописано, должно получиться так:

Сертификат успешно установлен



Появились комментарии, поправки к этой статье? Пожалуйста, напишите в форум!