Ruspo Relay: Обзор последней версии

Рация -Ruspo Relay ПК - сеть - Ruspo Relay ПК - рация (режим ретранслятора)
Ruspo Relay основная панель и журнал
Ruspo Relay основная панель и журнал

Что такое Ruspo Relay?

Ruspo Relay 1 (http://ruspo.com/rrelru.htm) — приложение (программа) для настольных компьютеров и рабочих станций, предназначенное для подключения различных аналоговых аудиоустройств (например, раций, домофонов, удаленных микрофонов и т. д.) и управления ими через локальную сеть или Интернет по технологии VoIP (Vox over IP). Также программа используется в качестве интернет-репитера для соединения географически удаленных радиостанций или других аналоговых устройств между собой.

Этот софт пользуется популярностью как среди профессионалов радиосвязи, так и у любителей, благодаря своей гибкости и универсальности.

В общем случае, благодаря Ruspo Relay можно расположить операторов или диспетчеров там, где им удобнее, а рацию — там, где она будет работать как следует.

Первая версия программы вышла еще в 2011 году и у многих пользователей до сих пор работает в круглосуточном режиме. Данный обзор относится к версии 1.30, актуальной в данный момент (2019 год).

 

Примеры использования Ruspo Relay

Управление удаленным трансивером (рацией):

Ruspo Relay ПК - сеть - Ruspo Relay ПК - рация
Ruspo Relay ПК — сеть — Ruspo Relay ПК — рация

 

Управление звуковыми устройствами типа домофонов и пр.:

Ruspo Relay ПК - сеть - Ruspo Relay ПК - интерком
Ruspo Relay ПК — сеть — Ruspo Relay ПК — интерком
Ruspo Relay ПК - сеть - Ruspo Relay ПК - микрофон
Ruspo Relay ПК — сеть — Ruspo Relay ПК — микрофон

 

Соединение двух трансиверов в совершенно разных местах через сеть так, чтобы они работали как ретранслятор. Таким образом осуществляется координация двух групп пользователей в различных местах:

Рация -Ruspo Relay ПК - сеть - Ruspo Relay ПК - рация (режим ретранслятора)
Рация -Ruspo Relay ПК — сеть — Ruspo Relay ПК — рация (режим ретранслятора)

 

Управление и голосовая связь с трансивером, подключенным непосредственно к компьютеру оператора — для удобства работы или, например, для воспроизведения предварительно записанных сообщений или объявлений (режим автоинформатора).

Ruspo Relay ПК - рация
Ruspo Relay ПК — рация

Как работает Ruspo Relay?

При установке на компьютер, Ruspo Relay позволяет выбрать для работы звуковую подсистему (аудио-адаптер).

Затем, нужно присоединить ПК к рации или иному аналоговому аудиоустройству. Это можно сделать одним из предложенных способов (подробнее в инструкции и здесь).

Ruspo Relay настройки
Ruspo Relay настройки


Также можно воспользоваться недорогим готовым решением — интерфейсом (см., например, здесь:
http://2491040.ru/avtoinf.html ; компания — разработчик интерфейса осуществляет также адаптацию его к различным устройствам и настройку программы.)

Ruspo Relay software, интерфейс и CB рация

Затем производятся настройки звука и соединения. Каждый экземпляр программы может быть сконфигурирован как в качестве сервера (принимающего подключения), так и в качестве клиента (инициирующего подключение). Рация или иное аналоговое устройство (интерком, микрофон и пр.) могут быть подключены как к клиенту, так и к серверу. В случае реализации схемы интернет-репитера, устройства подключаются к обоим компьютерам, соединенным в мост.

Для соединения может быть использована как локальная сеть, так и сеть интернет.

В отличии от некоторых других решений, Relay 1 не требует, в общем случае, для работы никаких сторонних сервисов. Однако, до недавнего времени, как и в любом клиент-серверном приложении, для подключения стороне сервера требовался фиксированный IP-адрес. Теперь возможности использования программы стали еще шире. С октября 2017 года пользователи Ruspo Relay 1 могут соединять между собой разные экземпляры программы через службу Remote Repeater (подробнее здесь: http://ru.blog1.ruspo.com/archives/23 ).

На заключительном этапе производится тестовое соединение и проверка работы. Помимо базовых функций (управление приемом / передачей, прослушивание эфира и передачи голоса), могут быть настроены и дополнительные: автоинформатор, управление дополнительными каналами и прочие.

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

Подробнее о конфигурировании программы и различных настройках можно прочесть в инструкции на официальном сайте разработчика:

Русский: http://ruspo.com/RR1manual.html
English: https://ruspo.com/RR1manual_en.html

 

Аналогичные и конкурирующие решения: Ruspo Relay vx Yaesu Wires-X

Программа Ruspo Relay является оригинальной разработкой, использующей передовые решения в области оцифровки, сжатия и передачи звука. Прямых аналогов программы пока не обнаружено, но есть похожие функциональные решения отдельных производителей радиооборудования. В частности, в среде радиолюбителей и профессионалов известно VoIP решение Yaesu Wires-X ( https://www.yaesu.com/jp/en/wires-x/index.php ). Это решение зарекомендовало себя хорошо, но его применение актуально только при использовании радио оборудования Yaesu. Более того, Yaesu Wires-X рассчитан для подключения только раций Yaesu, имеющих соответствующий интерфейсный разъем Mini-DIN, при этом дополнительно нужно купить Internet Linking Kit HRI-200 и специальный кабель. Тем не менее, из существующих решений, это наиболее достойный объект для сравнения.

Подробное рассмотрение обоих решений показывает следующие преимущества Ruspo Relay 1:

+ Программа Ruspo Relay 1 вендор-независима: не требует для подключения к рации покупки проприетарного интерфейса и кабеля, не привязана к какому-либо типу устройства или модели рации; человек, немного знакомый с радиоэлектроникой, может подключить рацию или иное аудиоустройство к ПК по инструкции к программе с использованием недорогих и доступных компонентов, притом несколькими различными способами;

+ Ruspo Relay 1 не требует, в общем случае, для работы никаких сторонних сервисов; если подключение происходит по локальной сети, голосовой сигнал не покидает локальную сеть; если подключение происходит через интернет, можно обеспечить высокую конфиденциальность переговоров работой в виртуальной частной сети (приватной или корпоративной VPN);

+ Программа Ruspo Relay 1 не требовательна к ресурсам компьютерапри тестировании на ПК с одно-ядерным процессором Celeron 2.4 GHz и ОЗУ 512 МБ (ОС Windows XP SP2 не было выявлено каких-либо задержек и подвисаний; не требуется установки каких-либо дополнительных аудиодрайверов и кодеков; подобный компьютер 10-летней давности можно раздобыть практически бесплатно, и его не жалко выделить для подключения к рации;

+ Благодаря хорошему сжатию речевого сигнала, программа Ruspo Relay 1 не требовательна к ресурсам сети передачи данных, она тестировалась даже при GPRS и dial-up модемном соединении; отлично работает через беспроводные сети мобильных операторов, различные роутеры и хабы; для работы программы используется 1 TCP и 2 UDP порта (для сравнения — Wires-X требует 6 UDP портов и соединение минимум 8 MBpS);

+ Программа Ruspo Relay 1 локализована на русский, английский и испанский языки и дополнительно совместима с Localizator (простое и удобное средство для корректного перевода пользовательского интерфейса программы на любой язык или даже диалект силами самого пользователя http://ruspo.com/locru.htm );

+ Ruspo Relay 1 протестирована на совместимость с другим программным обеспечением, часто используемым в диспетчерских службах — например, при распределении и отслеживании заявок диспетчерами такси часто используется программа «Шашечки» ( http://ruspo.com/shash_ru.htm ), и она может быть запущена на том же ПК;

+ Ruspo Relay 1 имеет уникальные функции:
автоинформатор / радио-маяк (воспроизведение предварительно записанных сообщений или объявлений, притом файл нового сообщения может быть передан на удаленный компьютер дистанционно);
управление дополнительными каналами для перенастройки рации или устройства.

Цена программы и условия распространения

Программа Ruspo Relay 1 — платная, однако имеет бесплатную демонстрационную версию, которая доступна для скачивания на официальном веб-сайте: http://ruspo.com/prodru.htm . Демо-версия программы имеет определенные ограничения (http://ruspo.com/RR1_demo_lim.htm), но позволяет ознакомиться с возможностями программы, поэкспериментировать с подключениями и решить, подходит ли вам эта программа.

Цена платной версии программы колеблется (у разных дистрибуторов от 3000 рублей до $100). Интересно, что цена в рублях (для российских покупателей) фиксированная и, на сегодняшний день, более чем в 2 раза дешевле, чем цена в у.е. по текущему курсу для зарубежных покупателей.

Программа (технически) позволяет использовать несколько экземпляров софта на одном компьютере, что позволяет достичь дополнительной экономии при подключении нескольких раций или аудио устройств к одному компьютеру.

Эта статья изначально была опубликована на английском языке в Ruspo blog: https://blog1.ruspo.com/

и на платформе Medium: https://medium.com/@IgorYanovskiy/ruspo-relay-1-review-of-the-latest-version-46c4bd9441

Новые возможности Ruspo Relay 1: сервис удаленного ретранслятора

Вкладка настройки опций

Ruspo Relay 1 (http://ruspo.com/rrelru.htm) — приложение для настольных компьютеров и рабочих станций, предназначенное для подключения различных аналоговых аудиоустройств (например, раций, домофонов, удаленных микрофонов и т. д.) через локальную сеть или Интернет.
Эта программа пользуется популярностью как среди профессионалов радиосвязи, так и у любителей, благодаря своей гибкости и универсальности.

В отличии от некоторых других решений, Relay 1 не требует, в общем случае, для работы никаких сторонних сервисов.  Однако, до недавнего времени, как и в любом сервер-клиентском приложении, для подключения, стороне сервера требовался фиксированный IP-адрес. Назначать фиксированный IP-адрес в локальной сети (LAN) или виртуальной сети — это не проблема. И, несмотря на оживленные обсуждения на разных форумах о неизбежном исчерпании белых глобальных IP4-адресов, по-прежнему не проблема получить IP4-адрес от провайдера кабельного интернета или оператора LTE. Но, во всяком случае, необходимость заботиться об этом накладывала определенные ограничения на использование программы, скажем, в случайных местах или в определенных сетях.

Теперь возможности использования программы стали еще шире. С  октября 2017 года пользователи Ruspo Relay 1 могут соединять между собой разные экземпляры программы через службу Remote Repeater. Если невозможно или нерационально получить реальный IP-адрес для «серверного» режима, просто свяжитесь с технической поддержкой Ruspo — есть решение «удаленного ретранслятора» по доступной цене ($ 9,9 / мес). За эту плату вы получаете виртуальный канал, где могут быть подключены до 5 экземпляров программы. При этом они могут географически располагаться в разных местах и подключаться к Интернету разными способами.

Служба удаленного репитера имеет 99,1% среднего времени безотказной работы и может использоваться для постоянного соединения (например, если Ruspo Relay 1 используется как интернет-мост (ретранслятор) для раций, расположенных в разных местах.

Для подключения к удаленному ретранслятору необходимо выбрать режим соединения «клиент» и ввести адрес сервера и номера портов (предоставленные поддержкой) в полях IP и Port. В общем случае, также необходимо удалить галочку с флажка «Оставить сервер включенным». Другие настройки аналогичны обычным случаям использования и подробно описаны в инструкции.

Бесплатная демонстрационная версия программы также работает через Remote Repeater, но при обычных ограничениях (http://ruspo.com/RR1_demo_lim.htm).

 

Установка SSL-сертификата Let’s Encrypt и организация автоматического обновления.

Хром предостерегает…

Введение

Существует множество причин использовать шифрование TLS на веб-сайте. Некоторые из них очевидны (например, защита безопасности и конфиденциальности посетителей), некоторые из них связаны с такими тонкостями, как SEO и предпочтения пользователей. Многие аналитики рекомендуют переключиться на HTTPS, потому что поисковая система Google, например, рассматривает HTTPS как один из сигналов ранжирования. Кроме того, новые версии браузеров (например, Chrome) пугают посетителей не зашифрованных веб-сайтов, отмечая их как «небезопасные».

До недавнего времени многие веб-мастера, блогеры и владельцы малого бизнеса использовали, для шифрования своих ресурсов, бесплатные сертификаты StartSSL и WoSign. Поскольку сертификаты StartSSL и WoSign больше не входят в список доверенных для Mozilla (https://blog.mozilla.org/security/2016/10/24/distrusting-new-wosign-and-startcom-certificates/) и Google, и нет других бесплатных вариантов для получения долгоиграющих SSL сертификатов, мы выбрали опцию Let’s Encrypt (https://letsencrypt.org/getting-started/). Поскольку сертификат LetsEncrypt действителен только в течение 90 дней, автоматизация его обновлений действительно необходима. Рекомендуемым инструментом автоматизации является Certbot EFF (https://certbot.eff.org/). Эта утилита полуавтоматически включает HTTPS на вашем веб-сайте, развертывая сертификаты Let’s Encrypt. (На момент установки, не было полностью автоматизированного способа это сделать для нашего сочетания операционной системы ( CentOS7) и веб-сервера (nginx). Поэтому некоторые вещи пришлось делать руками.)

Далее мы расскажем о собственном опыте по первоначальной установке и автоматизации, кратко.

ПРОЦЕСС ИНСТАЛЛЯЦИИ

Вышеупомянутые ресурсы разработчиков дают полные инструкции для самых разных ситуаций. Здесь мы просто демонстрируем логику использования этого программного обеспечения для одного конкретного случая (только один домен / поддомен на VPS, который ранее имел другой сертификат: nginx в качестве веб-сервера и CentOS7 в качестве ОС; root SSH доступ; также предполагается, что мы можем остановить веб-сервер временно без негативных последствий).

Итак, шаг за шагом:

1. Устанавливаем certbot:
yum install certbot

(несколько зависимостей EPEL будут загружены вместе с ним, это нормально)

2. Чтобы получить сертификат с помощью встроенного «автономного» (“standalone”) плагина, может потребоваться временно остановить существующий веб-сервер:

systemctl stop nginx

3. Запускаем процесс:
certbot certonly —standalone -d your.website.com

и убеждаемся, что все идет гладко:

IMPORTANT NOTES:

— Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/your.website.com/fullchain.pem. Your cert will expire on 2017-04-28. To obtain a new or tweaked version of this certificate in the future, simply run certbot again. To non-interactively renew *all* of your certificates, run «certbot renew»

Сертификаты фактически будут размещены в:
/etc/letsencrypt/archive/your.website.com/.

Симлинки к сертификатам будут помещены в
/etc/letsencrypt/live/your.website.com/.

Вы можете использовать плагин Webroot Certbot (он позволяет получить сертификат без остановки / запуска Nginx) вместо автономного Standalone плагина, но вам, вероятно, потребуется перезапустить / перезагрузить Nginx позже, чтобы активировать изменения, внесенные в файл(ы) конфигурации. В нашем случае разницы не было.

4. Найдите файл(ы) конфигурации Nginx. В нашем случае это:
/etc/nginx/nginx.conf и /etc/nginx/conf.d/ext.conf

Обязательно удалите или закомментируйте старые параметры сертификата и добавьте новые:


# disabled 2017-01-28
# ssl_certificate /etc/nginx/conf.d/yourold.crt;
# ssl_certificate_key /etc/nginx/conf.d/yourold.key.open;


# added 2017-01-28
ssl_certificate /etc/letsencrypt/live/your.website.com/fullchain.pem;

ssl_certificate_key /etc/letsencrypt/live/your.website.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/your.website.com/fullchain.pem;

Также полезно добавить каталоги, используемые плагином Webroot в Certbot, к пути Webroot (это позволит в будущем обновлять сертификат без остановки / запуска Nginx). Поэтому добавьте:
location /.well-known {
alias /home/site/.well-known;
}
в обе части конфигурационного файла:
server {
listen 80;

и:

server {
listen 443 ssl;

(Здесь может быть неясный момент — он связан с тем, что мы на опыте обнаружили, что, хотя автономный Standalone плагин использует для проверки порт 443, для плагина Webroot используется порт 80).

Может быть полезно поместить любой тестовый файл (например, файл a.txt) в указанный каталог /.well-known/acme-challenge (чтобы проверить доступ позже).

Кроме того, если раньше SSL на сайте не было совсем, необходимо добавить несколько стандартных опций для этого, но у нас ранее был другой сертификат и мы оставили старые.

5. Затем не забудьте запустить веб-сервер:

systemctl start nginx

Убедитесь, что он работает, и тестовый файл доступен из Интернета через http и https.

 

6. Теперь займемся автоматизацией будущих продлений:

находим .conf файл в /etc/letsencrypt/renewal/

Изменяем параметры, используемые в процессе обновления, следующим образом:

[renewalparams]

# authenticator = standalone
authenticator = webroot
webroot-path = /home/site

раскомментируем строку:
renew_before_expiry = 5 days

7. Запускаем обновление Certbot в тестовом режиме (dry-run):
certbot renew —dry-run -w /home/site

Убеждаемся, что все в порядке, особенно проверка:

 

Congratulations, all renewals succeeded. The following certs have been renewed: …

Если все работает, есть смысл заархивировать папку /etc/letsencrypt и файлы конфигурации (/etc/nginx/conf.d), и сохранить их в сухом, прохладном месте 🙂

8. Добавляем команду

certbot renew -w /home/site -q

в Crontab для ежедневного исполнения. Он не будет перезагружать сертификат каждый день, если вы правильно установите update_before_expiry (см. п. 6).

9. Убедитесь, что Nginx перезагружает конфигурацию после обновления сертификата. Очевидным способом для этого может быть добавление команды вроде
nginx -t -q && nginx -s reload
в Crontab на определенный день. Но немного разумнее было бы связать перезагрузку конфигурации с точным моментом обновления сертификата. Для этого мы можем изменить команду обновления (п. 8) следующим образом, используя хук:
certbot renew —no-self-upgrade -w /home/site -q —renew-hook «nginx -t -q && nginx -s reload»

или (с полными путями):

certbot renew —no-self-upgrade -w /home/site -q —renew-hook «/usr/sbin/nginx -t -q && /usr/sbin/nginx -s reload»

10. Если вы настроили некоторые из других серверов на этой же машине (например, Webmin) для использования тех же сертификатов, не забудьте перезагрузить / перезапустить их конфигурацию, например так:
systemctl stop webmin
systemctl start webmin

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

Этот метод был одобрен и хорошо работает на обоих наших сайтах: www.ruspo.com and www.tree-talk.com.

ВОЗМОЖНЫЕ ПРОБЛЕМЫ / TROUBLESHOOTING

Наш опыт показывает, что LetsEncrypt и сам Certbot работают как часы. Некоторые проблемы могут возникать со стороны Cron, и обычно они вызваны неправильными разрешениями, неправильным именем скрипта или переменными окружения. Если у вас есть проблемы такого рода, вы можете взглянуть на свои логи и изучить несколько полезных статей:
https://www.centos.org/docs/5/html/Deployment_Guide-en-US/ch-autotasks.html
и
6 Reasons Your Cron Job is Not Running (
http://2clickfix.com/6-reasons-cron-job-not-running/ ).

Пути и файлы, относящиеся к Certbot:

/usr/bin/certbot
/root/certbot.log
/usr/share/doc/certbot-0.9.3
/usr/share/licenses/certbot-0.9.3

Эта статья изначально была опубликована на английском языке в Ruspo blog: https://blog1.ruspo.com/

и в https://medium.com/@IgorYanovskiy/installing-the-letsencrypt-ssl-certificate-and-arranging-an-automatic-renewal-b770dafb72e7