Instalando remotamente, Controle remoto de código aberto
Hoje vamos ver um projeto fabuloso, chamado remotamente. Uma solução para controlar remotamente equipamentos pessoais ou da empresa, para acesso remoto ocasional a equipamentos de suporte ou também autônomos. Também permitirá se quisermos a execução de scripts ou comandos remotos.
El proyecto de Remotely es bastante curioso, la verdad que is una solution complete para el day a day quando necesitamos conectarnos a equipas remotos. O que eu disse, quando alguém precisa de um soporte, o quando queremos conectar a un equipo y no hay nadie para atendernos. Es seguro y bastante personalizable, veremos que Remotely se pode usar com seus próprios servidores (servidores públicos) o podemos montarlo en nuestra propia infraestructura. En este post veremos las dos options. Como sempre agradecer e ajudar a este tipo de projetos que melhoram o dia a dia del mundo IT, su autor es Jared Goodwin, y el sitio Website oficial.
Remotely es bastante sencillo, dispondremos de un portal web, donde los usuarios remotos poderão conectarse para descargarse o software 'ligero’ de conexión remota; o donde nosotros como administradores del sitio podemos entrar e controlar remotamente algum equipo que hayamos añadido previamente a nossa conta.
Si queréis probar su servidor público bastará acceder aqui para probar: https://app.remotely.one
Otra opción será como dijimos instalarlo bajo nuestro propio servidor, que es la interesante, pero esta se bifurca otra vez, parece un juego de aventuras 🙂 Al grano, a la hora de instalarla en local podremos escolher utilizar pacotes ya precompilados, esto es el servidor será totalmente funcional, pero há coisas como que el software cliente no se poderá personalizar, ni con los logólogos/cores da empresa ni com la URL, el utilizador tendría que escribirlo a mano. Es una opción. Y la otra seria bastante más larga pero interesante, ya que tendríamos que tener una cuenta en GitHub, hacer un fork del proyecto y alguna cosilla más, pero tendríamos más customizada la solución.
Así que si os parece vamos a ver las dos options, primero con los pacotes ya precompilados y assim depois podemos comparar y cada uno se queda con lo que le interese. Começou! Necesitamos un Ubuntu Server, en mi caso usé un 21.04, que esté actualizado, Recém-instalado, con IP estática; también pensaremos un FQDN para el sitio web, Por exemplo: soporte.midominio.eso y abriremos en el firewall/router el 443tcp HTTPS y 80tcp HTTP contra la máquina, este último para LetsEncript.
Instalación predeterminada
Começamos a instalação:
wget https://github.com/lucent-sea/Remotely/releases/latest/download/Remotely_Server_Installer chmod +x Remotely_Server_Installer sudo ./Remotely_Server_Installer
E durante a instalação o assistente irá perguntar-nos se queremos usar pacotes pré-compilados ou não, indicamos que sim, assim como o caminho para o site e usaremos Nginx como serviço web:
Descarregar pacote pré-construído (sim/não)?
Se não, um pacote de servidor personalizado será criado através do GitHub Actions.
Introduzir Resposta: sim
Em que diretório devem ser extraídos os ficheiros do servidor (ex.. /var/www/remotely/)?
Introduzir Resposta: /var/www/remotely
Qual é a URL pública do seu servidor (ex.. https (em inglês)://app.remotely.one)?
Introduzir Resposta: https (em inglês)://suporte.osmeudominio.eso
Qual servidor web será usado?
[0] - Caddy no Ubuntu
[1] - Nginx no Ubuntu
[2] - Caddy no CentOS
[3] - Nginx no CentOS
[4] - IIS no Windows Server 2016+
Introduzir Resposta: 1
...
Após alguns segundos o site estará configurado, abrimos un navegador contra o nosso FQDN o IP de Remotely. Sin loguearnos podremos simplesmente pulsar en Downloads para descargar los distintos softwares para conexión remota de Windows, Linux ou Mac. Así que la primera vez nos crearemos un usuario nuevo para trabajar como administradores del sitio, Clique em “Registro”,
Indicamos un mail y una contraseña & “Registro”,
Y bueno tendremos acesso a más posibilidades, darle un paseo que es muy sencillito y completo, a lo largo de este post iremos descubriendo las options que tenemos.
Por fazer la primera prueba y no seguir más con este entorno preestablecido, si na zona de Downloads nos descargamos o cliente leve, al executarlo veremos que há que escrever manualmente a URL do nosso sitio, Isso é, a la persona remota entregaremos un EXE y al abrirlo deberá de escribir siempre la URL. No gusta. Y luego ya el tema del Logo o los colores, pues que este sería el default.
Una vez se conectó contra la URL ya tendremos un ID de conexión,
Que se lo daremos a nuestro agente/técnico, desde el menu lateral “Remote Control” poderá escrever e conectarse à sessão do cliente.
Y no solo lo que nos espera de um control remoto, si no que la sesión se pode gravar em vídeo, podremos mandar ficheros, bate-papo, privilégios de lectura… muy elegante!
Instalação personalizável
Poço, vistas algumas das suas possibilidades e o seu poder vamos a darle à instalação personalizável, Isso é, que no sólo podamos cambiar Logos, Cores, URL embebida… si no que también los idiomas o lo que nos interessa, ya que tendremos el código para nós.
Em primeiro lugar, necesitamos tener una cuenta en GitHub, así que si no la tienes, regístrate!
Posterior, si tampoco lo tenemos hecho, deberemos copiar la clave pública de nuestra equipa a nuestra cuenta de Github, ya que posteriormente accederemos a un repo nuestro. Poço, com o próximo comando que criamos e vemos:
ssh-keygen -t rsa -b 4096 -C "Equipo remotely" cat /root/.ssh/id_rsa.pub ssh-rsa AAAAAAAAAAAAAAAAAAAAAAAAAADDDDDDDDDDDDDDDDdfdsfsdfxxxxxxxxxxxxxdssadlkjasdksaljdalksjdalskdjakdsjaskdljasdhfffffffffffffffffffffffffffffffasddddddddddddddddddddddddddddddddddddddddassxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxsssssssssssssssssssssssssssssssssssqqqqqqqqqqqqqqqqqqqqqqqwwwwwwwwwwwwwwwwwwwwweeeeeeeeeeeeeeeeeeeeeeerrrrrrrrrrrrrrrrrrrttttttttttttttttttttyyyyyyyyyyyyyyyyyyyyyuuuuuuuuuuuuuuuuuuuuuiiiiiiiiiiiiiiiiiiiiiiiiiioooooooooooooopppppppppppppppppppp== Equipo remotely
En Github, vamos a nossos Settings > SSH and GPG Keys > New SSH Key… indicamos un nombre y la pegamos.
Nós vamos https://github.com/lucent-sea/Remotely e clique em “Fork”, vamos a bifurcar o projeto e vamos a copiar nós exatamente uma cópia do original na nossa conta.
E depois desde a shell podremos desinstalar o projeto da nossa máquina, podría ser un buen momento si queremos hacerle alguna modificación (idioma…), y tras ello hacemos un pull & un push:
clone do git gi*@****ub.com:USUARIO_GITHUB/remotely cd ./remotely git remote add upstream https://github.com/lucent-sea/remotely git pull upstream master git push origin master
Necesitaremos también un Personal Access Token, Então, vamos https (em inglês)://github.com/settings/tokens > “Generate new token”
Ponemos nombre descriptivo para qué lo usaremos, expiração, marcamos únicamente el tick de ‘repo’ y abajo pulsamos en “Generate token”,
Y nos copiamos en un lugar seguro nuestro Token, lo necesitaremos.
Una última cosina, dentro de nuestro repo de Remotely, vamos a Actions y pinchamos en “I understand…”, necesitaremos que funcionen algunas acciones de los workflows para la instalación de Remotely.
Ahora ya de verdad que podremos comenzar con la instalación, y esta vez indicaremos que no queremos usar pacotes pré-compilados, É claro, a change nos pedirá a nosso utilizador de GitHub y el Token entre outros, os dejo los passos para sua instalação final:
wget https://github.com/lucent-sea/Remotely/releases/latest/download/Remotely_Server_Installer chmod +x Remotely_Server_Installer sudo ./Remotely_Server_Installer
Y donde amablemente deberemos mudar as nossas respostas, os dejo como proceder com el asistente:
Descarregar pacote pré-construído (sim/não)?
Se não, um pacote de servidor personalizado será criado através do GitHub Actions.
Introduzir Resposta: no
Em que diretório devem ser extraídos os ficheiros do servidor (ex.. /var/www/remotely/)?
Introduzir Resposta: /var/www/remotely
Qual é a URL pública do seu servidor (ex.. https (em inglês)://app.remotely.one)?
Introduzir Resposta: https (em inglês)://soporte.misitio.eso
Que servidor web será usado?
[0] - Caddy no Ubuntu
[1] - Nginx no Ubuntu
[2] - Caddy no CentOS
[3] - Nginx no CentOS
[4] - IIS no Windows Server 2016+
Introduzir Resposta: 1
Qual é o teu nome de utilizador no GitHub?
Introduzir Resposta: USUARIO_GITHUB
Que Token de Acesso Pessoal do GitHub deve ser usado?
Introduzir Resposta: ghp_XXXXXXXXXXXXXX_TOKEN_XXXXXXXXXXXXXX
Criar nova build (sim/não)?
Se não, será usado o último artefacto de compilação existente no GitHub.
Introduzir Resposta: sim
Qual versão gostarias de compilar??
[0] - Última versão oficial
[1] - Alterações na pré-visualização (ou seja. ramo mestre)
[2] - Release específico
Enter Response: 1
...
A propósito, si os atascáis en algún paso, os dejo este vídeo de su tutorial de instalación: https://remotely.one/Tutorials
E é isso! ya tendremos el portal levantado! Recordar (O mesmo de antes) crear una cuenta con privilégios administrativos desde “Registro”. Recuerda que sólo se pode por defecto registrarse una primeira vez no sitio, nadie más sin nuestro consentimento lo podrá fazer.
E indicarle unas credenciales,
Antes de nada me vou ao tema, tenemos un apartado chamado “Branding” onde podemos personalizarnos la imagen del software cliente, indicando el logótipo da nossa empresa, um título, Cores, tema claro/oscuro…
Quedaría algo así cuando el cliente lo abre, precioso, y sin que tengan que meter ninguna URL. Al agente (técnico de soporte) le podemos copiar e mandar o link o diretamente dictarle el ID de sesión. Já que o agente poderá entrar também desde o portal web de Remotely desde “Remote Control”,
Cuando el agente introduzca el código del ID de la sesión, al usuario final le saldrá un message para aceptar la sesión remota.
E o que eu disse, tendríamos un control remoto de manera puntual con alguien que lo necessite.
Por último con lo del tema, tenemos dos ficheros CSS que nos ayudarán también a customizar el frontal web, os los dejo por si queréis hacerlo un pelín más corporativo: /var/www/remotely/wwwroot/css/Themes/yeti.min.css y /var/www/remotely/wwwroot/Remotely_Server.styles.css. Bueno y os dejo este exemplo de pantallazo donde se ven las descargas que se podem fazer desde o lado do cliente, podrá descargarse el portable instantáneo de Windows, Linux ou Mac. Así como la opción instalable, para que no se lo tengan que andar instalando, pero ojo, este no es el de la opción desatendida, que também temos chamado Resilent Agent, y es el que veremos a continuación.
Este agente que nos poderíamos descargar uma vez nos hayamos logueado com a nossa conta administrativa e podíamos instalarlo onde queremos, en um servidor remoto para administrarlo más tarde, en un equipo de salto, de um cliente/empresa/utilizador que nos interessa… Clique em “Instalar” no hay que cumplimentar ningún dato ya que vendrá todo embebido.
… esperamos unos segundos enquanto instala…
“Fechar”,
Y ya tendremos en el menu “Início” los equipos que hemos ido añadiendo el agente de conexión desatendida, para conectarnos a qualquer um deles será pinchar en ele y nas opções lo veremos.
Y el tema de Scripts también existe, la posibilidad de executar algún comando en alguna de estas máquinas, o de programarlo en algún horário… Esto personalmente me llama menos, cubre menos la necesidad que tenía.
Ah! Y espera que todavía no hemos acabado! ¿Te preocupa la seguridad? pues nada, te recuerdo que deberías habilitar el double factor de autenticación en tu cuenta administrativa, así que desde el menu lateral “Account” habilitaremos 2FA o Two-factor authentication. Nos saldrá un asistente donde deberemos escanear el típico código QR y adicionar a nossa app del móvil y copiar los códigos de segurança por si la perdemos.
Espero que os haya parecido chulo, la verdad que es una pasada, habrá que ver cómo crescer el project, pero no me digáis que no es una solution buenísima para hacer conexiones remotas con utilizadores torpes o con tus clientes para algum soporte/necesidad que tengan de ti. Queda corporativa total y funcional, cumple con lo que se le pediría de sobra.
Um abraço para tod@s, y como siempre agradeceros a los que movéis este tipo de conteúdo en las redes sociais, por los likes, retuits, recomendações… salu2!
































































