LTSP/LocalApps
< LTSP
Версия от 20:03, 3 ноября 2008; Prividen (обсуждение | вклад) (Новая: == Локальные приложения == Локальными приложениями зовутся те программы, что исполняются непосредстве...)
Локальные приложения
Локальными приложениями зовутся те программы, что исполняются непосредственно на терминальном клиенте.
Зачем они нужны?
- Разгрузка ресурсов терминального сервера (в случае, если сервер относительно слаб, а клиенты - мощны)
- Работа с локальным железом
Примеры
- Видеоплеер, чтобы не грузить сеть разжатым видео.
Технология
Внимание: Данная технология описана всего лишь, как концепция, и, наверное, нуждается в уточнении и дополнении.
Довольно безопасный, как мне кажется, механизм воплощения локальных приложений можно себе представить так:
- каждому пользователю, а также root'у (или наверное лучше ltspadmin'у) создаётся по беспарольному ключу авторизации для доступа к терминальному клиенту (что-нибудь вроде ssh-keygen -t dsa -N "" -f ~/.ssh/id_dsa_ltsp)
- при сотворении ltsp-корня:
- устанавливается пакет openssh-server
- копируется публичный ключ получившегося ltsp-клиента в known_hosts:
echo -n "* " >>/etc/openssh/ltsp_known_hosts cat /var/lib/ltsp/i586/etc/openssh/ssh_host_rsa_key.pub >> /etc/openssh/ltsp_known_hosts
- копируется публичный ключ root'а (ltspadmin'а) в /var/lib/ltsp/i586/root/.ssh/authorized_keys2
- в файле /var/lib/ltsp/i586/etc/default/ltsp-client-setup в переменную copy_dirs добавляется /root - там будут добавляться ключи доступа пользователей и Xauthority.
- при логине пользователя на терминальном клиенте:
- из файла, исполняющегося с правами рута (/etc/X11/kdm/Xstartup), заходим по ssh на TC (ключ для этого мы добавили при создании образа клиента) и добавляем в /root/.ssh/authorized_keys2 публичный ключ логинящегося пользователя;
- из файла, исполняющегося от имени пользователя (/etc/X11/profile.d/ltsp-login.sh) узнаём параметры X-аутентификации, заходим по ssh под именем рута на TC (ключ для этого уже добавлен), и добавляем данные X-аутентификации.
- в ходе работы на TC пробуем запустить локальное приложение:
ssh -o GlobalKnownHostsFile=/etc/openssh/ltsp_known_hosts -i ~/.ssh/id_dsa_ltsp root@my_tc "xterm -display :my_display"
--Prividen 17:03, 3 ноября 2008 (UTC)