- Raspberry Pi энтузиаст
- Raspberry Pi по-русски
- Еще раз о VNC. Автоматический запуск сервера
- Создаем загрузочный файл
- Устанавливаем правильные атрибуты файла
- Добавляем файл в список автозагрузки
- Еще раз о VNC. Автоматический запуск сервера : 9 комментариев
- Как мне запустить VNC Server при загрузке?
- Установка VNC сервера, и настройка его работы поверх SSH
- Приступим
- Создание скрипта автостарта vnc сервера.
- использование созданного нами скрипта:
- Шифрование трафика
- Пускаем VNC поверх SSH:
- При использовании Windows и putty агента:
- Как запустить VNC-сервер при загрузке?
- 7 ответов
Raspberry Pi энтузиаст
Raspberry Pi по-русски
Еще раз о VNC. Автоматический запуск сервера
Ниже было описано, как установить и настроить сервер VNC. Теперь поговорим о том, как его запускать автоматически при загрузке системы.
Причина, по которой данная информация вынесена в отдельную статью, заключается в том, что данный способ можно использовать для запуска любых фоновых задач. Достаточно будет минимальных знаний, чтобы изменить предложенный скрипт для загрузки и останова других программ.
Создаем загрузочный файл
Первое, что нам понадобится — загрузочный файл (скрипт). Можно создавать его с помощью удаленного доступа SSH (с использованием программы PuTTY), как было описано в предыдущей статье, а можно сделать все перечисленное непосредственно с консоли Raspberry Pi.
Введите следующую команду:
Замечание: Nano это простой и быстрый редактор текстовых файлов. Команда создаст новый файл, названный tightvncserver в каталоге /etc/init.d и откроет его на редактирование в редакторе Nano (обратите внимание на надпись New File внизу окна):
Теперь введите или скопируйте следующий текст программы:
Замечание: в тексте скрипта указан параметр размера рабочего стола VNC — 1280×800. Его можно изменить под свои нужды.
Для выхода из nano нажмите Ctrl-X. Затем последует вопрос о необходимости сохранения файла — ответьте Y. И, наконец, подтвердите имя файла нажатием клавиши Enter.
Устанавливаем правильные атрибуты файла
Теперь, после создания загрузочного файла, необходимо установить правильные атрибуты, т.е. сделать файл исполняемым. Для этого, введите команду:
Обратите внимание, что эту операцию необходимо повторять всякий раз, когда вы изменяете файл. Если не установить правильные атрибуты файла, то сервер VNC не загрузится.
Добавляем файл в список автозагрузки
Для того, чтобы сделать это, выполните команду:
На этом все шаги выполнены и остается только перезагрузить Raspberry Pi!
Еще раз о VNC. Автоматический запуск сервера : 9 комментариев
Я решил эту проблему несколько иначе, добавив команду запуска в /etc/rc.local и изменив пользователя в файле настроек vncserver.
Не уверен, что я сделал все верно, с точки зрения опытных линуксоводов, но система работает исправно.
Думаю, что сделаю все по «феншую» как написано в данной статье.
Есть вопрос по использованию VNC. Нельзя ли, например, запустив через VNC видео или браузер, видеть происходящее не в VNC у себя на ноутбуке, а на дисплее, подключенном к RPi?
Самый простой способ управлять удаленно Raspberry Pi и видеть результат на дисплее, на мой взгляд, это свободный проект Synergy (http://synergy-foss.org/ru/)
Если коротко, то нужно скачать и установить сервер Synergy себе на ноутбук, затем на Raspberry Pi выполнить команду «sudo apt-get install synergy», а затем «/usr/bin/synergyc —daemon YOUR_SERVER_IP» (с IP адресом своего ноутбука). Все это можно сделать через SSH удаленно.
После этого, перемещая мышь на ноутбуке в правую часть экрана, вы попадаете на экран Raspberry Pi.
Благодарю за наводку
Попробую
Оказалось не все так просто, хотя как пишите вы и как написано тут http://harizanov.com/2012/10/remote-keyboard-and-mouse-for-raspberry-pi/, все должно работать
У меня server Win7 x64 а client соответственно на RPi
Гугление навело на скачку какого-то нестандартного дистрибутива synergy. Пока не пробовал этот способ.
А что конкретно не заработало? Проблема в Windows или в RPi?
Установилось все корректно и на Windows и на RPi.
Но выполнение команды в RPi ни к чему не приводит. В логах Windows «waiting for clients».
Может server на Windows требуется как-то сконфигурировать не по дефолту?
Возможно мешает брандмауэр в Windows. Я специально попробовал, это была единственная проблема. Если, после запуска клиента на Raspberry Pi в окне сервера на Windows нет запросов, то это проблема брандмауэра. Synergy не добавляет себя в исключения автоматически, как это делают многие программы.
Источник
Как мне запустить VNC Server при загрузке?
Как создать общесистемный файл автозапуска? Это будет на облачном сервере под управлением настольной версии Maverick.
Я вошел в систему как root и создал файл автозапуска с использованием, System/Preferences/StartupApplications но он закончился /root/.config/autostart и не выполнил (насколько я могу судить) после перезагрузки. Файл автозапуска предназначен для запуска bash-скрипта, который запускает VNC-сервер.
Я скопировал файл автозапуска .desktop из /root/.config/autostart в /etc/xdg/autostart и перезагрузил. Это, казалось, не имело значения.
Редактировать Как упоминалось в комментарии, цель состоит в том, чтобы запустить мой bash-скрипт, который запускает VNC-сервер при загрузке; не при входе в систему.
Сначала установите сервер TightVNC sudo apt-get install tightvncserver .
Настройте сервер VNC для пользователя, для которого вы хотите войти в систему. Когда вы запускаете «vncserver» в первый раз, он попросит вас установить пароль. разрешить только SSH туннелирование или VPN-соединения. Чтобы запустить программы или сеанс при запуске сеанса VNC, измените
/.vnc/xstartup . Вот пример.
Скопируйте следующее в /etc/init.d/vncserver . Самый простой способ сделать это — скопировать его в буфер обмена, запустить sudo -i && cat > /etc/init.d/vncserver && exit в терминале, вставить в него и набрать CTRL-D. Обязательно измените переменную USER на того пользователя, под которым вы хотите запустить сервер VNC.
Сделайте скрипт исполняемым с sudo chmod +x /etc/init.d/vncserver .
Источник
Установка VNC сервера, и настройка его работы поверх SSH
Да, отчего-то не все клиенты хотят работать в таком удобном и черном терминале, панель полностью не удовлетворяет их эстетические потребности, и вообще — «где мой такой любимый и удобный VNC?». вопрос привычки и вкуса
В данной статье будет рассмотрен пример установки и настройки VNC server и графической оболочки (GUI) на примере OC Debian 8 jessie.
Вводная: на руках имеется чистый Debian 8 и жгучее желание получить на выходе защищенный vnc-доступ к серверу.
Приступим
Обновим список доступных пакетов.
Если система свежеустановленная — стоит обновиться.
(!)Бездумно запускать данную команду не на свежеустановленном сервере не стоит, чревато сломанными зависимостями и перспективой работы напильником.
Устанавливаем Xfce и VNC server (любители GNOME, KDE, LXDE, etc. устанавливают оболочку по своему вкусу).
Создаем пользователя от которого будем запускать vnc сервер.
Устанавливаем sudo (в Debian данный пакет не установлен по умолчанию).
Добавляем пользователя vnc в группу sudo.
Переходим под пользователя vnc.
Запускаем vnc сервер.
Если это первый запуск vnc сервера, будет создан конфиг файл и запрошены некоторые параметры:
по умолчанию порт vnc сервера будет 5901, порт каждого следующего дисплея будет увеличиваться на 1 (5902,5903. ).
Проверить запущен ли VNC сервер и на каком порту слушает можно следующей командой.
Убить конкретный дисплей можно так:
:1 — какой дисплей нужно убить.
Создание скрипта автостарта vnc сервера.
Сначала убьем запущенный дисплей :1 (если он запущен).
создаем скрипт запуска
Добавляем следующие строки в файл:
если требуется — в скрипте можно изменить глубину цвета или разрешение экрана.
Делаем файл исполняемым.
использование созданного нами скрипта:
Теперь нужно позаботиться о том, чтобы настроенный нами vnc стартовал после загрузки сервера (запланированной и не очень).
Для этого создаем файл по следующему пути.
Добавляем следующий текст в файл:
[Unit] — указываем описание скрипта (так же можно указать требуемые зависимости и порядок запуска при загрузке).
[Service] — указываем какими командами запускать сервис, под каким пользователем, и тип сервиса.
[Install] — указываем на каком уровне должен запускаться скрипт (runlevel 3 — многопользовательский режим без графики).
Включаем юнит в автозагрузку при старте системы.
Смотрим статус созданного нами юнита.
Дергаем systemd для поиска новых или измененных юнитов.
Шифрование трафика
Голый VNC не шифрует трафик, и оставлять его в таком виде не стоит.
Кроме того, если на Ваш IP выйдут боты из Китая и начнут стучатся по портам, даже если пароль установлен действительно качественный (учтите, что пароль на vnc сессию ограничен 8 символами) и его не взломают, попасть на сервер посредством VNC будет затруднительно, из-за постоянной ошибки на количество неверных попыток авторизации.
Using password file /home/vnc/.vnc/passwd
Warning: password truncated to the length of 8.
Would you like to enter a view-only password (y/n)? n
Пускаем VNC поверх SSH:
Теперь для подключения к серверу сначала нужно создать тунель.
Под *nix:
Теперь возможно подключение посредством vnc клиента, указав вместо IP удаленного сервера localhost и порт на котором слушает vnc-server.
При использовании Windows и putty агента:
После запуска putty переходим Connection -> SSH -> Tunnels.
В поле Source Port вбиваем порт на котором слушает VNC сервер — 5901, в поле Destination вписываем — localhost:5901 и жмем кнопку Add.
должно получиться как на картинке.
Теперь возвращаемся на вкладку Session вписываем IP сервера и порт 22 (тут же можно и сохранить конфигурацию подключения), жмем Open.
паранойи мало не бывает К осторожности нужно приучать сразу, хоть теперь и попасть на наш сервер посредством VNC извне невозможно (для начала нужно залогиниться по ssh и создать тунель), все же стоит задуматься о дополнительной безопасности ssh подключений (помните — китайские боты не дремлют).
Установим и настроим fail2ban.
По умолчанию защита от брутфорса для SSH включена, что нам собственно и требуется.
при превышении заданного числа неудачных вводов пароля подряд (по умолчанию — 6) бан IP, с которого были попытки подбора на заданное время (по умолчанию — 600 секунд).
Устанавливаем пакет из репозитория.
Основной интересующий нас файл настроек находится по пути /etc/fail2ban/jail.conf
Блок настроек для подключения по ssh:
ignoreip — IP адреса, которые не должны быть заблокированы. Можно задать список IP адресов разделённых пробелами, маску подсети, или имя DNS сервера.
bantime — время бана в секундах, по истечении которого IP адрес удаляется из списка заблокированных.
maxretry — количество подозрительных совпадений, после которых применяется правило. В контексте ssh — это число неудавшихся попыток логина, после которых происходит блокировка.
enabled — значение true указывает что данный jail активен, false выключает действие изолятора.
port — указывает на каком порту или портах запущен целевой сервис. Стандартный порт SSH сервера — 22, или его буквенное наименование — ssh.
filter — имя фильтра с регулярными выражениями, по которым идёт поиск «подозрительных совпадений» в журналах сервиса. Фильтру sshd соответствует файл /etc/fail2ban/filter.d/sshd.conf.
logpath — путь к файлу журнала, который программа Fail2ban будет обрабатывать с помощью заданного ранее фильтра. Вся история удачных и неудачных входов в систему, в том числе и по SSH, по умолчанию записывается в log файл /var/log/auth.log.
Дефолтная настройка удовлетворяет наши требования (6 неверных попыток авторизации по shh и IP летит в бан на 600 секунд), но я бы советовал добавить свой IP в доверенный список.
Обидно будет ждать почти два часа, в случае шестикратной ошибки ввода пароля со своего IP (шанс данного кейса отнюдь не нулевой).
Открываем конфиг файл.
В строке ignoreip = 127.0.0.1/8, адрес 127.0.0.1/8 заменяем на свой IP.
Выходим из редактора nano (ctrl+x, отвечаем y на вопрос сохранения внесенных изменений).
Перегружаем сервис для применения изменений в правилах.
В случае срабатывания бана в логах fail2ban, можно заметить строку предупреждения:
И попытки подключения с данного адреса будут отбиваться сервером автоматически до истечения срока бана.
Готово, настройка VNC сервера завершена.
Источник
Как запустить VNC-сервер при загрузке?
с живым cd откройте терминал как root (sudo -i) и используйте dd.
example: dd if=origin of=destination.
вы можете сделать копию с одного hdd на другой, подобный этому
с одним и тем же live-cd, вы можете использовать gparted и изменять размер, который вы хотите.
7 ответов
/.vnc/xstartup. Вот пример. Скопируйте следующее в /etc/init.d/vncserver. Самый простой способ сделать это — скопировать его в буфер обмена, запустить sudo -i && cat > /etc/init.d/vncserver && exit в терминале, вставить его и набрать CTRL-D. Обязательно измените переменную USER на любого пользователя, с которым вы хотите управлять сервером VNC. Сделайте исполняемый файл сценария с помощью sudo chmod +x /etc/init.d/vncserver. Наконец, подключитесь к вашему серверу с клиентом VNC на порту 590X, где X — значение «DISPLAY» в сценарии vncserver. На OS X мне нравится использовать Chicken of VNC. В Windows и Linux клиент TightVNC работает хорошо.
Одна возможность: /etc/rc.local
Биты выполнения уже установлены на 755 в моей системе. (chmod 755 /etc/rc.local)
Вы можете поместить любую команду там, которая будет выполняться с правами root.
Это нормально для вашей цели, пока вы это делаете не меняйте уровни запуска, я думаю. (Если вы не знаете, какие уровни выполнения, неважно).
Если вы используете TigerVNC, тогда он устанавливает /etc/init.d/vncserver, который запускает все vncservers, настроенные в /etc/sysconfig/vncservers, например. следующий запустил бы 2 экземпляра на дисплее 1 & amp; 2 при запуске.
это, кажется, старое сообщение, но тема может быть интересной для некоторых пользователей. Чтобы запустить vnc при загрузке, вам необходимо
установить программное обеспечение сервера vnc (здесь мы будем использовать x11vnc) настроить сценарий запуска (используемый для запуска службы vnc)
Шаг 1 — установите сервер x11vnc
из командной строки, введите
. Чтобы добавить безопасность, вы должны установить pwd
Шаг 2. Настройте свой сценарий запуска
, если ваша версия ubuntu ниже 15.04,
вы создаете конфигурационный файл в /etc/init.d/x11vnc.conf и заполняете его правильными командами, которые будут выполняться
, если ваша версия ubuntu ниже 15.04,
эти системы используют systemd, и вам нужно будет создать свой файл служебной единицы в разделе /lib/systemd/system/x11vnc.service и заполнить его правильными командами для выполнения
Подробную информацию можно найти на странице справки Ubuntu Community wiki (см. здесь), или вы можете попробуйте использовать этот быстрый способ использовать recice
Для версии Ubuntu ниже 15.04, проверьте это сообщение для U buntu версии 15.04 или новее, проверьте это сообщение
Источник