Настройка запуска X11VNC до авторизации пользователей.
Ниже опишу как установить и настроить X11VNC (Сервер удаленного доступа по протоколу VNC) так, чтобы он запускался при старте дисплей менеджера (до авторизации пользователей):
1) Зайдем под root’ом:
su root
2) Установим пакет x11vnc:
apt-get install x11vnc
3) Зададим пароль для удаленного доступа (запишем его в файл «/etc/x11vnc.pass»):
x11vnc -storepasswd /etc/x11vnc.pass
4) Напишем демона для управление x11vnc как службой:
nano /lib/systemd/system/x11vnc.service
[Unit] Description=Start x11vnc at startup. After=multi-user.target [Service] Type=simple ExecStart=/usr/bin/x11vnc -display :0 -auth $(ls /var/run/xauth/) -forever -loop -noxdamage -repeat -rfbauth /etc/x11vnc.pass -rfbport 5900 -shared -env FD_XDM=1 [Install] WantedBy=multi-user.target
5) Добавим демона x11vnc в автозагрузку:
systemctl enable x11vnc.service
6) Обновим данные о демонах:
systemctl daemon-reload
7) Запустим демона x11vnc:
systemctl start x11vnc
На этом всё. X11vnc работает и будет работать сразу после загрузки не дожидаясь пока пользователь войдет в систему.
Стоит обратить внимание на такой момент, если, вы подключены удаленно к системе (не важно до авторизации пользователя или после), и в этот момент завершить графический сеанс пользователя, то сессия VNC прервется и вы отключитесь от удаленной системы. Но не стоит пугаться, x11vnc продолжает работать и вы тут же сможете подключиться к системе вновь.
vladimirk1211
New member
После обновления до версии 2.12.40 описанный выше вариант перестал работать, а вот вариант описанный здесь работает. Так же apt начал ругаться на репозитории debian (или вернее сказать начал просить gpg ключ), если их просто прописать в «/etc/apt/sources.list «, что в общем-то не совсем корректно, но раньше у меня работало. Учитывая это всё инструкция получилась следующей (всё делаем под root’ом):
1) Установим пакеты «debian-archive-keyring dirmngr» для того, чтобы подключить репозиторий debian, как советуют здесь:
apt install debian-archive-keyring dirmngr
2) Подключим репозиторий debian:
echo «deb https://mirror.yandex.ru/debian/ stretch main contrib non-free» >> /etc/apt/sources.list
apt update
3) Установим пакет x11vnc:
apt install x11vnc
4) Отключим репозиторий debian:
head -n -1 /etc/apt/sources.list > /etc/apt/sources.list.sav ; mv /etc/apt/sources.list.sav /etc/apt/sources.list
apt update
5) Зададим пароль для удаленного доступа (запишем его в файл «/etc/x11vnc.pass»):
x11vnc -storepasswd /etc/x11vnc.pass
6) Напишем демона для управление x11vnc как службой:
nano /lib/systemd/system/x11vnc.service
[Unit] Description=Start x11vnc at startup. After=multi-user.target [Service] Type=simple ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbport 5900 -shared -dontdisconnect -rfbauth /etc/x11vnc.pass -o /var/log/x11vnc.log [Install] WantedBy=multi-user.target
7) Добавим демона x11vnc в автозагрузку:
systemctl enable x11vnc.service
8) Обновим данные о демонах:
systemctl daemon-reload
9) Запустим демона x11vnc:
systemctl start x11vnc
Удалённая графическая сессия
Ну, вообще то говоря, RDP может нормально обрабатывать или не обрабатывать протокол X11, а всё уже что выше (DE самые разные, GUI программы, . ) — это уже его не касается . я так это понимаю.
С каким клиентом вы наблюдали проблемы?
Это был Windows? или Linux? (на клиентской стороне)
Я для RDP перепробовал клиентов: vinagre (freerdp2-x11) [-], remmina [+], rdesktop [+], krdc [+/-] (в скобках [ ] — удовлетворительность работы).
Olej
New member
Давайте только по порядку, не сваливая всё в кучу:
— RDP — это протокол — Windows-приблуда . вообще-то говоря, закрытый и проприетарный протокол, кроме того у него версий . от 4-й до 8-й; xrdp — это сервер RDP под Linux, другого я и не знаю, он действительно очень неплохо работает, как мне показалось.
— VNC — это совершенно другой протокол, это вещь которая рождалась в недрах UNIX/Linux, это должна быть, по идее, гораздо больше защищённая и надёжная вещь, для неё есть несколько серверов: x11vnc, tightvncserver, tigervnc-standalone-server, vino (это, кажется?, дефаултный сервер в Ubuntu), krfb.
3d3
New member
Я ставил и то и другое одновременно. rdp клиент стандартный для виндовс mstsc , vnc клиенты пробовал RealVNC, TightVNC, UltraVNC так же для винды.
Olej
New member
Я ставил и то и другое одновременно. rdp клиент стандартный для виндовс mstsc , vnc клиенты пробовал RealVNC, TightVNC, UltraVNC так же для винды.
Т.е. . как я уже высказывал предположение раньше в этой теме:
— удалённая графическая сессия — это выдумка, идущая от привычек выработанных в Windows и от желания перенести эти привычки в Linux.
— всем хотелось бы (тем кому хотелось ) чтобы рабочий стол Linux отображать в Windows . но никак не наоборот — никому нормальному пользователю Linux такое в голову не придёт (этот станет просто использовать X11 с туннелем через SSH).
— и это огромная дополнительная дыра в безопасности, которая вообще принципиально не закрываемая (все эти сервера RDP, VNC и пр. вносят свою собственную систему аутентификации + шифрования или не шифрования паролей при передаче);
Но ещё, по моим наблюдениям, все реализации, по крайней мере в Linux, страдают в той или иной мере «недоделанностью»: то оно в графике при перемещении окон какие-то полосы оставляет, то курсор какого-то дикого изображения, то оно начинает заикаться если сеть не самая быстрая LAN, а быстрая, но через WAN.
Оно и объяснимо, если учитывать, что все без исключения реализации удалённой графической сессии — это не органичная часть Linux-проектов, а реализации от разных сторонних фирм-производителей.
Удалённая графическая сессия
Возникла такая задачка: необходимо осуществлять удалённый вход в графической оболочке, с возможностью видеть происходящие действия на мониторе.
Такие пробовались варианты:
1) vino-server
Свои функции выполняет, но возникает проблема с постоянными вылетами типа «Аварийный останов», после которых необходимо отправлять сервис в перезапуск.
2) NoMachine
Свои функции выполнял ровно до того момента как мы пробросили порты на коммутаторе. Пробросили порты — всё, белый экран, до свидания. Внутри локальной сети, не доходя до внешнего коммутатора, функционирует нормально.
3) xrdp
Во-первых, не видно как там шалит пользователь со своей Windows-машины, а во-вторых не даёт полного функционала в плане открытия окон.
4) AnyDesk
Принимаешь подключение — программа уходит в ошибку.
Хотелось бы узнать, какими удалёнными программами для аналогичных задач пользуетесь вы?
Какую не замороченную программу, желательно из состава дистрибутива, можно установить для исполнения данного функционала?
rudnikovsa
New member
3d3
New member
Еще актуальный вопрос загружать vino-server автоматически при загрузке и чтобы было видно меню ввода пароля соответственно и что не маловажное чтобы после ввода пароля загрузился рабочий стол который виден как пользователю так и удаленному пользователю подключоному через клиент vnc — уточнение чтобы был один и тот же рабочий стол — уточнение2 чтобы было видно все действия производимые пользователем — уточнение3 чтобы клиент vnc не отваливался —уточнениеn+1 и т.д. и т.п.
Fd1501h
Moderator
Еще актуальный вопрос загружать vino-server автоматически при загрузке и чтобы было видно меню ввода пароля соответственно и что не маловажное чтобы после ввода пароля загрузился рабочий стол который виден как пользователю так и удаленному пользователю подключоному через клиент vnc — уточнение чтобы был один и тот же рабочий стол — уточнение2 чтобы было видно все действия производимые пользователем — уточнение3 чтобы клиент vnc не отваливался —уточнениеn+1 и т.д. и т.п.
# ################################################################## # # Описание Автоматическая установка и настройка X11vnc для # работы в качестве службы # Дата Дек 2018 # Версия 1.0 # # Запуск выполнить команду "sudo sh vnc-startup.sh" или # сделать исполняемым и запустить # "sudo chmod +x vnc-startup.sh" # "sudo ./vnc-startup.sh" # # ################################################################# # раскомментируй следующие строку, если нужно добавить репозиторий Debian т.к. в Орле нет x11vnc #echo "deb http://ftp.ru.debian.org/debian/ stretch main non-free contrib" > /etc/apt/sources.list.d/debian.list # обновление списка пакетов apt-get update -y # удаление родного VINO apt-get remove vino -y # установка X11VNC apt-get install x11vnc -y # установка пароля для подключения к VNC # можно задать пароль в самом скрипте командой # x11vnc -storepasswd ВАШПАРОЛЬ /etc/x11vnc.pass x11vnc -storepasswd /etc/x11vnc.pass # создание LOG файла touch /var/log/x11vnc.log # создание Unit файла для службы cat > /lib/systemd/system/x11vnc.service
Смоленск 1.6 Удаленный доступ к графическому интерфейсу
Ребята, когда вы наконец-то сделаете подробную и понятную инструкцию по установке VNC-сервера, которая будет работать на всех машинах сразу, без предварительного запуска и не вылетать после смены пользователя или иных вполне привычных операций?
Fd1501h
Moderator
Ребята, когда вы наконец-то сделаете подробную и понятную инструкцию по установке VNC-сервера, которая будет работать на всех машинах сразу, без предварительного запуска и не вылетать после смены пользователя или иных вполне привычных операций?
q0p
New member
Чтобы пользователям показывать какую кнопочку тыкнуть. Обучение по астре проводится лишь формально, за полчаса видеоролика люди асами в астре не станут.
OIvanov
New member
Ребята, когда вы наконец-то сделаете подробную и понятную инструкцию по установке VNC-сервера, которая будет работать на всех машинах сразу, без предварительного запуска и не вылетать после смены пользователя или иных вполне привычных операций?
Абсолютно рабочего варианта с VNC я не обнаружил, но скажу следующее:
1) В Astra Linux v 1.6 по-умолчанию есть VNC-сервер vino и подобные tigervnc, но эти вещи не работают достаточно хорошо, ибо встречаются проблемы с вылетами из системы и т.п.
2) Из более-менее нормально работающих средств, наиболее приемлемым считаю x11vnc.
Для установки на AL 1.6 мне потребовались следующие пакеты:
libvncclient1_0.9.11+dfsg-1.3~deb9u1_amd64.deb
libvncserver1_0.9.11+dfsg-1.3~deb9u1_amd64.deb
x11vnc-data_0.9.13-2+deb9u1_all.deb
x11vnc_0.9.13-2+deb9u1_amd64.deb
Все эти вещи скачивал из интернета, подправил под себя скрипт из https://forum.astralinux.ru/threads/1086/
Но в боевых системах такой набор использовать нельзя, так как x11vnc не входит в состав Астры, да и установить его без интернета/флешки, попросту не получится.
Других ЛЕГАЛЬНЫХ (помимо vino) средств удалённого доступа Linux-Linux, мне найти не удалось