[recovery mode] Raspberry Pi как информационное табло — с помощью VNC на localhost
Идея использовать одноплатный миникомпьютер Raspberry Pi в качестве информационного табло не нова, однако, как мне кажется, раскрыта далеко не полностью. Одним из не достаточно раскрытых аспектов, по моему мнению, является ограничение доступа. Безусловно, самым надежным способом ограничения доступа является физическое ограничение — для каких-нибудь публичных табло (к примеру на остановках маршрутного транспорта) такое ограничение необходимо, иначе не избежать вандализма, краж (если не самого Raspberry Pi то как минимум SD карты) или «спуффинга» (путем подмены той же SD карты). Но предположим что речь идет не о совсем публичном табло, а о таком, которое расположенном внутри офиса какой-нибудь компании — к примеру о «билд мониторе» для отображения статуса билдов на каком-нибудь Дженкинсе или ТимСити. Было бы неплохо ограничить возможность молодым горячим джуниорам открывать на билд мониторе порносайты. Об этом и пойдет речь. Т.к. информационное табло работает, вероятно, не в режиме терминала, а с GUI, для управления ним логично использовать VNC (с ssh туннелем для пущей безопасности). Суть освновной идеи вкратце сводится к тому, что для отображения информации на табло можно использовать VNC viewer в view-only режиме, запущенный от имени пользователя с ограниченными правами. Таким образом подключив к Малинке клавиатуру и мышь нельзя будет «просто так взять» и помешать работе вашего табло. Конечно, знатоки линуксов всегда найдут обходные пути, но по крайней мере пользователей Windows это гарантированно отпугнет (-: Тоесть вкратце задача сводится к следующему — при запуске Raspberry Pi: Автоматически запускать VNC сервер от имени заданного пользователя (хотя бы того же pi); Автоматически запускать VNC просмотрщик, настроенный на отображение происходящего на локальном VNC сервере, от имени заданного ограниченного пользователя (какого-нибудь guest); Автозапуск какого-нибудь софта, отображающего собственно контент (например, веб-браузера показывающего Дженкинс), и отключение скринсейвера. Сразу оговорюсь — знатоком Линукс я ни в коей мере не являюсь, поэтому подход может быть неполноценным и «нубским» — за это сразу прошу прощения. Инструкция составлялась по принципу «с миру по нитке» на основе других инструкций — так сказать «от нубов для нубов». Вобщем ногами не бейте плз. И еще одна ремарка — в данной статье предполагается использование Raspbian (Debian Wheezy) в качестве ОС для Raspberry Pi. Итак, пошаговая инструкция по достижению результата.Читать дальше →