RustDesk eta RustDesk Web Client

Dokumentu honetan RustDesk soluzioaren hedapen osoa ikusiko dugu, Nola ezagunak diren askorentzat, kontrol urrunetarako open source irtenbiderik onena, TeamViewer-eko doako alternatiba. Post honetan zure instalazio lokal propioa nola egin ikusiko dugu, non hirugarrenik gabe, zure kontrol propioa izan dezazun.

Esan dut, comenzaremos el documento desplegando el servidor de RustDesk en nuestra infraestructura, para luego desplegar los clientes de RustDesk ya preconfigurados en los equipos que queramos controlar remotamente de nuestra organización, sean los PCs de los usuarios para ofrecerles soporte mediante un control remoto, o para conectarnos a nuestros servidores. Azken finean, desplegaremos también el servicio RustDesk Web Client, que como su nombre indica y te podrás imaginar, es un cliente web de RustDesk, para poder conectar a cualquier equipo desde una web, así de fácil.

Por supuesto, en principio todo es local, funcionará en tu red; pero si vas a querer conectarte a los equipos desde Internet (si estás fuera de la organización), o los equipos a controlar están fuera, orduan zure suebaki perimetraleko zenbait ataka irekitu beharko dituzu sarbidea ahalbidetzeko. 21115tcp-tik 21117tcp-ra bitarteko atakak beharrezkoak baitira, eta baita 21116udp ere; eta RustDesk Web Client erabili nahi baduzu, orduan 21118tcp-tik 21119tcp-ra ere.

Ikusiko duzue dena nola azkarra den, eta Dockerri esker, RustDesk zerbitzuak Docker edukiontzietan desplegatuko ditugu, beraz, dokumentua hasteko, Linux makina bat beharko duzu, Ubuntu Server bat ondo dago, Docker eta Docker Compose instalatuta, ohikoa den bezala, makinaren izen bat ezarria, IP helbide estatiko bat, NTP… eta, has gaitezen!

RustDesk zerbitzaria desplegatzeko, bere docker-compose.yml fitxategia sortzea besterik ez da, Ni karpeta batean sartuko dut, ‘rustdesk’ deitzen dudana’ nire etxe karpetan. Os dejo el ejemplo que viene en la documentación oficial, tendremos en cuenta que si querremos acceso desde el exterior deberemos indicar nuestro FQDN en el 'command’ del contenedor 'hbbs':

version: '3'
services:
  hbbs:
    container_name: hbbs
 image: rustdesk/rustdesk-server:latest
 ports:
      - 21115:21115
      - 21116:21116
      - 21116:21116/udp
      - 21118:21118
    #command: hbbs
 command: hbbs -r FQDN. DOMINIO. ESO:21117
    volumes:
      - ./data:/root
 networks:
      - rustdesk-net
 depends_on:
      - hbbr
 restart: unless-stopped
 hbbr:
    container_name: hbbr
 image: rustdesk/rustdesk-server:latest
 ports:
      - 21117:21117
      - 21119:21119
    command: hbbr
 volumes:
      - ./data:/root
 networks:
      - rustdesk-net
 restart: unless-stopped
networks:
  rustdesk-net:
    external: false

Una vez creado y guardado el fichero es hora de desplegar los contenedores de RustDesk, lo hacemos ejecutando:

sudo docker compose up -d

Listo! Ya tenemos el servidor corriendo :-), lo siguiente será desplegar los clientes de RustDesk,

Podremos descargar el cliente de RustDesk desde su GitHub, hay cliente para Windows, Linux, Mac y Android entre otros. La instalación del cliente no tiene ningún misterio, siguiente, siguiente, y una vez instalado quedará funcional, pero con los servidores públicos de RustDesk, y no con el nuestro propio.

El uso del cliente de RustDesk veréis que es muy sencillo, es igual que TeamViewer.

Para ello, tendremos que ir a “Ajustes” > “Red” y ahí cumplimentaremos el “Servidor de IDs” eta “Key” que la podremos obtener del fichero '/home/usuario/rustdesk/data/id_ed25519.pub’ (o vaya, donde se haya montado el volumen de datos del contenedor). Aplicamos y listo. También podríamos copiarnos esta configuración que acabos de realizar pulsando sobre el icono de 'copiar’ para desplegarla en el resto de equipos de manera más rápida.

Para desplegar el cliente de RustDesk de manera masiva en equipos Windows podríamos basarnos en este script llamado 'instala_rustdesk.cmd', que se podrá ejecutar mediante una GPO para desplegarlo de manera desatendida y dejarlo ya configurado. A tener en cuenta que podríamos indicar una contraseña de acceso manual, así como pegaremos el churro exportado con la configuración de RustDesk obtenido en el paso anterior.

@echo off
if not exist "C:\Program Files\RustDesk\" (
  set rustdesk_pw=CONTRASEÑA__DE_ACCESO_MANUAL
 set rustdesk_cfg="CHURRO_EXPORTADO_CON_LA_CONFIGURACIÓN_DE_RUSTDESK"
  rustdesk-1.2.3-1-x86_64.exe --silent-install
 timeout /t 20
  cd "C:\Program Files\RustDesk\"
  rustdesk.exe --install-service
 timeout /t 20
  for /f "delims=" %%i in ('rustdesk.exe --get-id ^| more') ezarri rustdesk_id=%%i  rustdesk.exe --config %rustdesk_cfg%  rustdesk.exe --password %rustdesk_pw%
) else (
    echo RustDesk dagoeneko instalatuta dago. Skriptak ez du exekutatuko.
)

Edota RustDesk bezeroaren instalatzailearen exekutagarria formatu honetara berrizendatu dezakezu, baita modu automatuan instalatzeko ere: ‘rustdesk-host=FQDN_O_IP_SERVIDOR_RUSTDESK,key=CLAVE_PUBLICA.exe’

Bezeroen partea ere prest uzten da 🙂

RustDesk-en ordenagailuetara sartzeko webgune bat izatea interesatzen bazaigu, RustDesk Web Client erabil dezakegu; horrela, tokian RustDesk bezeroa lokalik ez badugu konektatzeko, weba erabiliko dugu.

Orain arte argitaratutako Docker irudi bakarra deskarga dezakegu, exekutatuz:

sudo docker pull keyurbhole/flutter_web_desk:v1.0.0
sudo docker run -p 5000:5000 keyurbhole/flutter_web_desk:v1.0.0

Una vez haya arrancado, ya podremos abrir un navegador al puerto que indicamos, en este caso al 5000tcp.

Deberemos configurar en la esquina superior derecha los datos de nuestro “ID server” eta “Key”, como si se tratase de otro cliente de RustDesk.

Y probaremos a introducir el ID del equipo remoto para conectarnos,

Introducimos la contraseña de acceso que hemos indicado en el cliente de RustDesk del equipo remoto…

¡Y listo! tenemos también el acceso web remoto a escritorios de PC's, equipos o servidores, como sea, nuestra solución interna, segura y open source! La verdad que es una maravilla, hace y cumple lo que dice!

Sé que soy un cansino, pero como siempre, espero que este post te haya podido servir para algo, si has llegado hasta aquí leyendo, al menos te mando un saludete; deseando que os vaya lo mejor posible, cuidaros y ser felices!

Izenburuko mezuak

Egilea

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, ez zalantzarik izan nirekin harremanetan jartzeko, ahal duzun guztietan laguntzen saiatuko naiz, partekatu ahal dudan guztietan ;) . Dokumentuez gozatu!!!