2022-01-13

Instalar y Configurar VNC en Linux

Requisito Previo

Si no tiene instalado Lightdm hay que instalaro.

sudo apt-get update
sudo apt-get install lightdm
sudo reboot

Instalar VNC Server

sudo apt install x11vnc

Configuración

En Xubuntu crear el archivo /etc/systemd/system/x11vnc.service O en Ubuntu /lib/systemd/system/x11vnc.service sudo vim /etc/systemd/system/x11vnc.service.
touch /etc/systemd/system/x11vnc.service
Este debe ser el contenido del archivo.
[Unit]
Description=x11vnc service
After=display-manager.service network.target syslog.target

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -forever -display :0 -auth guess -rfbauth /etc/x11vnc.pwd -shared -forever
ExecStop=/usr/bin/killall x11vnc
Restart=on-failure

[Install]
WantedBy=multi-user.target

Configurar Contraseña.

sudo x11vnc -storepasswd MY_PASSWORD /etc/x11vnc.pwd

Ejemplo del Contenido del archivo /etc/x11vnc.pwd

<87>mg<9b>F[r²

Instalar vnc como servicio

sudo systemctl daemon-reload
sudo systemctl enable x11vnc
sudo systemctl start x11vnc

Forzar inicio

En el caso que que no se inicie el sisteme con servicio, se puede hacer que se cargue al inicio creando un archivo en /etc/init.d con el contenido .

#!/bin/bash

sleep 5
x11vnc -forever -usepw -httpdir /usr/share/vnc-java/ -httpport 5800

Instalación Desatendida

Se puede copiar, pegar y ejecutar en cosola el siguiente código, la otra, sería crear un archivo de texto plano donde pagar el codigo, asignarle permisos de ejecución y ejecutar con permisos root.
sudo su
apt-get update
apt install x11vn lightdm
echo " " >  /etc/systemd/system/x11vnc.service
sed -i '$a [Unit]' /etc/systemd/system/x11vnc.service
sed -i '$a Description=x11vnc service' /etc/systemd/system/x11vnc.service
sed -i '$a After=display-manager.service network.target syslog.target' /etc/systemd/system/x11vnc.service
echo " " >>  /etc/systemd/system/x11vnc.service
sed -i '$a [Service]' /etc/systemd/system/x11vnc.service
sed -i '$a Type=simple' /etc/systemd/system/x11vnc.service
sed -i '$a ExecStart=/usr/bin/x11vnc -forever -display :0 -auth guess -rfbauth /etc/x11vnc.pwd -shared -forever' /etc/systemd/system/x11vnc.service
sed -i '$a ExecStop=/usr/bin/killall x11vnc' /etc/systemd/system/x11vnc.service
sed -i '$a Restart=on-failure' /etc/systemd/system/x11vnc.service
echo " " >>  /etc/systemd/system/x11vnc.service
sed -i '$a [Install]' /etc/systemd/system/x11vnc.service
sed -i '$a WantedBy=multi-user.target' /etc/systemd/system/x11vnc.service
x11vnc -storepasswd contraseña /etc/x11vnc.pwd ; systemctl daemon-reload ; systemctl enable x11vnc ; systemctl start x11vnc