Pull to refresh

Comments 8

Решил подобную задачу с помощью OpenVPN. В датацентре расположены серверы OpenVPN (шлюзы), на Raspberry Pi устанавливается клиент OpenVPN.

Приложение обращается к Raspberri Pi через шлюзы, проксирующие запросы с помощью nginx по сети OpenVPN. При этом для Raspberry Pi выделяются статические IP из сети OpenVPN. На роутере можно использовать NAT, внешние динамические IP. Никакая дополнительная настройка роутеров не требуется.

Работает достаточно надежно даже при использовании беспроводной 4G. При включении и временных перебоях в связи канал автоматически восстанавливается.

В варианте с DDNS нужен "белый" IP, как показала практика, а он есть далеко не всегда.

Глубоко не разбирался, но выглядит как туннель, т. е. вариант №3.
Да, только не нужно организовывать свой выделенный сервер.
Я использую autossh на rpi (устанавливает ssh соединение до сервера и поддерживает его). Что-то типа autossh -M <port на rpi> -o «PubkeyAuthentication=yes» -o «ServerAliveInterval 60» -o «ServerAliveCountMax 3» -R localhost:<port_на_сервере>:localhost:22 <login на сервере>@адрес_сервера -i <путь_до_ключа>. Эту команду ставим в автозагрузку (/etc/rc.local), либо пишем unit для systemd.

На телефоне ставим termux, с него ssh на сервер, оттуда ssh -p <port_на_сервере> pi@localhost.

Либо можно поставить nginx на сервере, прокси-пассить его на shellinabox на сервере же, и тогда получаем терминал сервера через браузер. Из терминала по ssh заходим на rpi

Sign up to leave a comment.

Articles