mRemoteNG: administrador de conexiones de código abierto.

Hace unos días hemos descubierto este programa que te permite administrar, en un mismo programa y con una interfaz muy sencilla y amigable, múltiples conexiones con diferentes protocolos.

mRemoteNG te permite añadir, usar y gestionar conexiones con los siguientes protocolos:

  • RDP (Remote Desktop/Terminal Server)
  • VNC (Virtual Network Computing)
  • ICA (Citrix Independent Computing Architecture)
  • SSH (Secure Shell)
  • Telnet (TELecommunication NETwork)
  • HTTP/HTTPS (Hypertext Transfer Protocol)
  • rlogin
  • Raw Socket Connections

Obviamente, esto es útil para administradores de sistemas, creadores de páginas web, editores etc. No para el usuario normal.

Pero para los que gestionamos varios servidores, y varios tipos de conexiones, poder conectarte desde el mismo programa por SSH al servidor, o por https al paner de hosting, o incluso por RDP a ordenadores es muy útil.

Podemos tener las conexiones de Putty en el mismo programa que las conexiones https a las páginas web.

La documentación del programa la tenéis aquí, aunque es muy sencillo de usar.



Instalar Big Blue Button, alternativa a Skype, en un servidor

Recientemente hemos tenido que instalar para varios clientes, dedicados a la formación online, unos sistemas propios de videoconferencia. Para ello hemos usado Big Blue Button, porque obviamente no podían depender de servicios como Skype, querían ser independientes.

Big Blue Button es un sistema de videoconferencia diseñado para la formación online y basado en Linux. Totalmente gratuito (si lo montas en tu servidor en vez de usar su servicio) y open source. Además dispone de una comunidad activa, lleva tiempo en el mercado (lo sacaron en el 2009) , y se integra con la mayoría de los LMS del mercado (Moodle, sistemas de WordPress etc).

Viene bien documentado PERO la documentación no es sencilla, y está algo enrevesada. Así que hoy os explicamos cómo hemos instalado BBB en un servidor, por si os es de ayuda. Verificad siempre que no haya cambiado nada al cambiar de versión.
En otros artículos iremos explicando otras modificaciones que hemos hecho y dudas que hemos resuelto.

Nota: necesita un servidor dedicado sólo para esto, y con especificaciones medias. Así que implica un coste inicial (de harware e instalación) y, por lo tanto, sólo es recomendado para aquellos que vayan a rentabilizarlo rápidamente.

Requisitos previos.

Necesitas:

  • Servidor dedicado que cumpla las especificaciones.
  • Un dominio que usar como dirección o url y apuntar los DNS de ese dominio a la IP del servidor dedicado.
  • El instalador te pedirá una dirección de correo.
  • Conocimientos básicos de conexión a un servidor por SSH.

Instalación del servidor.

Como hemos dicho, necesitamos un servidor dedicado, con ciertas especificaciones, y exclusivo para este servicio (porque ocupa varios puertos, el 80 entre otros).
Al adquirir el servidor dedicado, los desarrolladores recomiendan instalar Ubuntu Server (en estos momentos 16.04 64 bits). Esto va a cambiar pronto con la nueva versión de BBB, pero si que recomendamos instalar lo que digan los desarrolladores. Este es un software muy personalizado y es mejor no usar otras distribuciones.

Uso del script de instalación.

Una vez instalado el servidor, y actualizado (apt-get update, apt-get upgrade), hay que instalar Big Blue Button. Se puede hacer de varias maneras, como indica la documentación, pero recomendamos encarecidamente el script que puedes encontrar en :
https://github.com/bigbluebutton/bbb-install

El script tiene varios parámetros. Recomendamos instalarlo con certificado SSL , HTML5 y Greenlight, con el comando que está al final:

wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s — -v xenial-200 -s bbb.example.com -e info@example.com -t -g

Qué es HTML5

Big Blue Button empezó trabajando con Adobe Flash. Pero la mayoría de navegadores han ido deshabilitando este addon. Hasta el punto que ahora, al entrar con Flash, pregunta si quieres ejecutarlo (esto da mala imagen).

BBB es compatible con HTML5 y es lo recomendable. Pero estamos en un momento de transición en el que la versión 2.0 pone por defecto Adobe Flash (creo que la siguiente que está a punto de salir ya no). Así que pronto escribiremos un artículo sobre cómo activar por defecto HTML5.

Qué es Greenlight.

Una de las cosas que me costó entender, no está bien explicado. Big Blue Button se encarga de las videoconferencias y grabaciones. Pero no tiene gestión de usuarios, estaba pensado para conectarlo con otros sistemas via API (por ejemplo Moodle).
Greenlight es un entorno gráfico que permite a los usuarios creados entrar y usar eses entorno gráfico para gestionar sus salas. Usar la de por defecto o crear nuevas. Además, te da la url para mandar a los clientes para que puedan conectarse por el navegador. Los clientes, por ejemplo, lo están usando para que los profesores se conecten con alumnos que no usen su plataforma online, para entrevistas con candidatos etc.
Es un «Skype» a través del navegador.

Problema: la gestión de usuarios es o a través de cuentas de Google, Twitter, Office365, LDAP o cuentas suyas. El gran problema es que, por defecto, deja a cualquiera registrarse para usarlo. Más abajo explicamos cómo evitarlo.
Y, cuando queremos dar de alta cuentas suyas, tenemos que activarlo, reiniciar el servicio, dar de alta la cuenta, desactivarlo y reiniciar el servicio. Algo primitivo.

Nota: Greenlight muestra el idioma por defecto en el navegador del usuario.

Certificado SSL.

Obviamente cualquier servicio que implica comunicaciones de voz y/o vídeo requiere ir cifrado. BBB permite la instalación de un certificado tuyo o por Lets Encrypt.
El comando que hemos puesto instala y configura Lets Encrypt en tu servidor.

Si no te funciona puedes configurarlo a mano en:
http://docs.bigbluebutton.org/install/install.html#using-lets-encrypt

Siguientes pasos.

  • Una vez acabe el script, recomiendo configurar el servidor para que renueve el certificado de Lets Encrypt cada semana. Para ello hay que editar el crontab y poner:

30 2 * * 1 /usr/bin/letsencrypt renew >> /var/log/le-renew.log
35 2 * * 1 /bin/systemctl reload nginx

Esto lo renueva cada lunes a las 2:30 am. El log de la renovación está en /var/log/le-renew.log

  • Bloquear el que cualquier se pueda registrar en Greenlight. El sistema instala greenlight en /root/greenlight , con un fichero de configuración que se llama env en ese directorio. Edita el fichero y pon
    ALLOW_GREENLIGHT_ACCOUNTS en false para evitar que la gente se registre en tu Greenlight gratis.
  • En el mismo fichero ve al final y
    quita el # en ENABLE_SSL=true para forzar https por defecto.
  • Reinicia Ubuntu con sudo systemctl restart nginx
  • Reinicia Greenlight con los siguientes comandos (Enter después de cada línea). Ejecútalos desde el directorio de Greenlight o el último dará error.
  • docker stop greenlight-v2
  • docker rm greenlight-v2
  • docker run –restart unless-stopped -d -p 5000:80 -v $(pwd)/db/production:/usr/src/app/db/production –env-file env –name greenlight-v2 bigbluebutton/greenlight:v2

Extraer el Shared Secret.

Si vas a usar Big Blue Button en otro entorno, como un LMS, por ejemplo en Mooodle, o WordPress, vas a necesitar el shared secret para que se autentifique.

Lo obtienes por ssh en el servidor con:

bbb-conf --secret

Demos.

El script crea unas demos que puedes usar para verificar que tu sistema funciona.
Esas demos pueden ser usadas por cualquier usuario, así que es recomendable quitarlas una vez lo pruebes. Os indicamos dónde están las demos porque no es fácil encontrarlo.

Demo HTML5: https://tudominio/demo/demoHTML5.jsp
Demo Flash (antiguo): https://tudominio/demo/demo1.jsp

IMPORTANTE. Quítalos lo antes posible. Para ello ejecuta por ssh:
 apt-get purge bbb-demo

Ahora, a disfrutar con Big Blue Button.


Capturas de pantalla y capturas aplazadas en Windows. Herramienta recortes.

Hoy os hablamos de una de las herramientas que más usamos en nuestro trabajo diario: la herramienta de recortes de Windows para realizar capturas de pantalla. Lo que todos conocemos como «pantallazo«.
Siempre me impresiona que mucha gente no la conoce y no la use.

Ya hemos hablado otras veces de herramientas de captura de pantalla pero, desde hace unas versiones, Windows incluye una, y muy buena.

Recortes (Snippets) es una herramienta aparentemente muy simple. La ejecutas, le das a Nuevo y capturas el trozo de pantalla que quieres. Hasta ahí perfecto.
Después puedes o copiar y pegar en un correo o un documento de texto, o guardarlo como imagen.

La herramienta tiene además utilidades para pintar, resaltar y realizar selecciones de forma libre o de pantalla completa.

Capturas aplazadas.

Pero, sin duda, la funcionalidad que más me gusta, es la de «Aplazar«. Cuando seleccionamos ahí el delay en segundos, podemos pinchar en Nuevo y realizar lo que queremos en la pantalla. Tras esos segundos realizará «el pantallazo«.

Esto permite capturar hechos que ocurren cuando hacemos hover o acciones con el ratón. Hechos que, de otra manera, no podríamos capturar la ser «dinámicos«.

Cómo abrir ficheros sqlite en Windows.

Hoy necesitábamos consultar el contenido de un fichero .sqlite3 , un fichero de base de datos SQLite. Os dejamos cómo se puede hacer en Windows.

Abrir un fichero de SQLite en Windows.

Podéis bajaros un programa como DB Browser for SQLite, DB4S (aquí Github), que es un visor y editor ligero para ficheros de bases de datos SQLite. Una GUI, parecido a phpMyAdmin o Adminer para SQL.

También existe Spatialite.

Sólo tenéis que descargar el programa de la web, versión para Windows, y ejecutarlo. Desde ahí abrís el fichero y ya podéis ver la estructura, o editarlo.

No es nada avanzado, pero sirve para su función: poder consultar crear, modificar y consultar ficheros SQLite.

Cómo cambiar el hostname en un equipo Ubuntu Linux

Hace unos días instalamos un servidor Ubuntu Linux (por requerimientos del software). Tuvimos que cambiar el nombre de host de ese equipo y aquí os dejamos cómo se hace.

Cambiar el hostname de un equipo Ubuntu.

Si sólo quieres cambiarlo sólo hasta el siguiente reinicio puedes poner:

hostname NUEVONOMBRE

Para hacerlo más permanente, tienes que editar dos ficheros.

  • El fichero etc/hostname que es el que da el nombre al servidor. Hazlo con este comando, o con tu editor favorito
    sudo vim /etc/hostname
  • El fichero etc/hosts que le dice dónde tiene que ir cuando pongan ese nombre. Es su DNS interno. Hazlo con este comando (o pon tu editor)
    sudo vim /etc/hosts

No es necesario reiniciar aunque si muy conveniente (sudo reboot).

Puedes comprobar el cambio con los comandos hostname o
hostnamectl .

Cómo reparar un error de arranque en UEFI (boot error) en Windows con Diskpart.

Recientemente nos han llegado varios ordenadores con errores en el arranque en Windows 10. Alguno simplemente no arrancaba, otros daban errores de arranque, otros arrancaban como si no hubiera sistema operativo.

Obviamente los métodos de reparación automáticos, con USB de Windows no nos funcionaron, y tampoco había puntos de restauración.
Os dejamos la reparación manual que nos ha funcionado por si queréis probarlo en vuestro caso. Esto debería pasar en particiones GPT para EFI.

Reparar el boot de UEFI.

Seleccionemos la unidad y el volumen.

  • Lo primero es arrancar desde un USB de Windows. Lo puedes crear con el Media Creation Tool de Microsoft.
  • Ve a Opciones Avanzadas -> Símbolo de sístema.
  • Ejecuta los siguientes comandos (Enter después de cada uno):
  • Diskpart
  • list disk
  • sel disk 0
  • list vol 

Con el último comando te van a aparecer los volúmenes del sistema. El volumen UEFI normalmente está en el Volume 2.
Ahora hay que ponerlo como partición del sistema (en el pantallazo ya está). Para ello:

  • sel vol 2
  • Y luego set id=c12a7328-f81f-11d2-ba4b-00a0c93ec93b

Este id es decirle a Windows que ese volumen es una partición de sistema EFI. Es decir la estás poniendo como partición de sistema. Ver aquí .

Opción: Si no funciona ese id también puedes poner
set id=ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
Esto pone ese volumen como una partición de datos básica.

Ahora asigna una letra que no esté usada a ese volumen. Por ejemplo la H. Escribe:
assign letter=H: 

Repara el Boot Record.

  • cd /d H:\EFI\Microsoft\Boot\
  • exit
  • bootrec /fixboot
  • exit

Reparar el BCD Store.

  • ren BCD BCD.old
  • bcdboot C:\Windows /l es-es /s H: /f ALL Aquí C: es la unidad donde esté instalado Windows.
  • exit

Reincia y debería estar resuelto.

Control de horas automatizado tras el nuevo Real Decreto Ley 8/19

El día 8 de Marzo se aprobó el Real Decreto Ley 8/2019, que introduce varias modificaciones desde el punto de vista laboral. La que nos incumbe hoy es el Registro de horas. Vamos que hay que «fichar» en todas las empresas.
Resumimos las novedades de este registro diario de horas
obligatorio :

  • Deberá incluir el horario concreto de inicio y finalización de la jornada de trabajo de cada persona trabajadora. Tiene que constar el número de horas realizadas y en su caso las horas extras.
  • No especifica formato. Puede ser en papel o digital.
  • Entra en vigor el día 12 de mayo del 2019 (dos meses).
  • Se deben conservar 4 años.
  • Las multas son de 206€ a 6.250€
  • Es necesario poder sacar informes que será lo que nos pidan en una inspección.

Obviamente se puede realizar en papel, pero es una lata tanto a modo de gestión diaria, como para almacenar dichos registros. Además de ser un retraso, en nuestra opinión, a estas alturas andar con registros en papel. Así que os dejamos posibles soluciones automatizadas (que nosotros montamos para clientes).

Nota: aunque muchas veces se instalan a la vez, no es necesario que los sistemas de horas sean también control de acceso. Para convertirlos en control de acceso sólo hay que conectarlos a una cerradura electrónica. Pero, por ejemplo a nosotros no nos interesa en nuestra oficina.

Programas gratis para control de horas.

Lo primero es el software que gestione esto, no queremos registro de horas manual por las razones antes esgrimidas. Hay software específico para cada ordenador, pero estamos hablando de soluciones empresariales que se puedan gestionar de modo global. Preferimos las soluciones web que guardan el contenido en bases de datos y permiten control de horas desde cualquier lugar (¿quién no hace teleworking hoy en día?).

El sistema de fichaje online (ya sea en un servidor/pc local o en Internet), permite varias modalidades como fichar por aplicación de móvil, fichar desde casa a través de una web, fichar en una web al llegar al trabajo, automatizar el fichar con tareas al «logarse» cada usuario en su perfil del ordenador, o al hacer doble click en un icono. Es mucho más compatible con el trabajo desde casa, pero también requiere empleados más fiables.

Además, los que presentamos, permiten una gestión global de recursos humanos (vacaciones, empleados, bajas etc).

Os dejamos alguna opción que recomendamos ahora y que iremos actualizando.

OrangeHRM.

La solución con versión Open Source más conocida de gestión de recursos humanos. Tiene un módulo para gestión de horas que incluye, entre otras, «fichar»

Podéis probarlo en esta demo.
Dispone además de una app para poder gestionarlo desde el móvil (lo que permite fichar fácilmente ). iOS y Android.
En su web tienes que registrarte para descargar la versión. Pero tienen página en Source Forge con el programa.
Se puede optar poner en un Windows con un WAMP, o en un Linux.

IceHRM

Es la competencia más directa de OrangeHRM. Visualmente más atractivo pero requiere algo más de conocimientos para instalar.

También tiene una demo aquí.
Y la versión Open Source en Github y en Source Forge.
App tiene en iOS y Android.

Hardware.

Con respecto al hardware hay varias opciones, dependiendo de lo que os fiéis de vuestros empleados, de si se trabaja sólo en un sitio o varios (varias oficinas o desde casa) etc. El hardware automatiza el proceso de fichar y además identifica mejor al usuario (aunque todos se pueden engañar) y algunos aseguran que sea en un sitio concreto. Si se necesita combinar con control de acceso son necesarios.

  • Control dactilar. El que está más de moda, porque permite identificar mejor al usuario y combinar con controles de acceso. Suele incluir software de gestión de horas o en el propio aparato, o para instalar en un PC. Nosotros trabajamos con varios modelos y precios.
  • NFC. Es el mismo sistema del «pago contactless» de las tarjetas de crédito. Es más barato que el anterior y permite crear tarjetas, pulseras, o llaveros que el empleado pueda llevar (y por lo tanto también ceder para que «fichen» por él). También permite «fichar» con algunos móviles que lo leen. Algunos modelos tienen el sistema de gestión en el hardware, en otros casos el software puede estar en un PC o en un servidor de Internet y el dispositvo NFC accede a él. También permite automatizar el fichar a través de la web porque dichos dispositivos permiten que se graben órdenes y tareas.

Esperamos que esto os ayude. Para cualquier duda ya sabéis, consultarnos.

Cómo cambiar el nombre de una base de datos en phpMyAdmin.

Si usas phpMyAdmin puede que quieras cambiar el nombre de una base de datos. No es tan directo como parece.
Por si a alguien más le ha pasado el no encontrar cómo hacerlo, os dejamos los pasos

Cambiar el nombre de la base de datos en phpMyAdmin

Tienes que:

  • Entrar en phpMyAdmin (lógico).
  • Pinchar en la base de datos en cuestión en la lista de la izquierda.
  • Pinchar en la pestaña Operaciones.
  • Ir a Renombrar base de datos a
  • Poner el nuevo nombre en el recuadro y pinchar en Continuar.

Te pedirá confirmación y lo que hace es copiar la base de datos a una nueva con ese nombre y borrar la anterior.

Como exportar e importar la configuración de Putty (cliente de SSH).

Los que nos conectamos a servidores u otros dispositivos de red, solemos usar un protocolo que se llama SSH. El cliente de SSH más usado es Putty.
¿Qué ocurre si tenemos la configuración en un ordenador y lo queremos pasar a otro? Hoy os enseñamos a hacerlo.

Cómo exportar e importar la configuración de Putty.

Curiosamente Putty no guarda la configuración en carpetas, como otros programas, sino en el registro. Por lo que el proceso implica exportar una clave del registro en el ordenador original, e importarla en el nuevo (después de haber instalado Putty).

La clave es Equipo\HKEY_CURRENT_USER\Software\SimonTatham

Podemos exportar esta clave entera, o exportar Equipo\HKEY_CURRENT_USER\Software\SimonTatham\Putty\Sessions (sólo las sessiones).

Recordad que esto guarda configuraciones, usuarios y contraseñas. Pero no los ficheros de clave (que son ficheros y deben pasarse individualmente).

Por línea de comandos se puede hacer así:

CMD:

regedit /e "%USERPROFILE%\Desktop\putty.reg" HKEY_CURRENT_USER\Software\SimonTatham

POWERSHELL:

reg export HKCU\Software\SimonTatham ([Environment]::GetFolderPath("Desktop") + "\putty.reg")

Cómo crear una VPN con OpenVPN en Windows. Parte 2: Cliente

Ok, ya tenemos el servidor Windows funcionando con OpenVPN como indicamos en este artículo. Vamos a configurar los clientes que se van a conectar en remoto. Podéis usar la guía de OpenVPN en inglés también.

Cada cliente tiene que instalar OpenVPN, tener un fichero de configuración, dos ficheros de clave y certificado (crt y key) y dos ficheros de servidor (certificado y ta.key). Vamos a ello.

Configurar las claves de cliente en el servidor.

Vamos a ir al servidor, con un terminal (siempre usamos con permisos de administrador por si acaso) a la carpeta:
C:\Program Files\OpenVPN\easy-rsa  

Ahí escribiremos:
vars (ENTER)
build-key nombredelcliente (ENTER) por ejemplo build-key pgomez

Si hemos configurado bien el servidor, dejamos todo por defecto y damos a ENTER salvo donde pone Common Name que ponemos de nuevo el nombredelcliente. En el ejemplo pgomez.
Al resto Enter para la selección por defecto y dos y cuando lo pida firmar y confirmar.
Tomar nota que los certificados tienen una fecha de caducidad….es decir luego hay que realizar el proceso de nuevo para renovarlos (por seguridad).

En adelante cambia todo lo que ponemos nombredelusuario por el que has puesto en este paso.

Instalación de OpenVPN en el cliente.

Nos vamos al ordenador cliente e instalamos OpenVPN de aquí. Con la opción marcada de Easy-rsa. Si nos pide instalar y confiar en el interfaz TAP decimos que si.

Después, una vez instalado, tenemos que copiar los ficheros:

ca.crt
ta.key
nombredelusuario.key
nombredelusuario.crt


de la carpeta C:\Program Files\OpenVPN\easy-rsa\keys del servidor a la carpeta C:\Program Files\OpenVPN\config del ordenador del cliente remoto.
Nota: ta.key está en C:\Program Files\OpenVPN\easy-rsa

Vamos después, en el ordenador del cliente remoto a la carpeta 
C:\Program Files\OpenVPN\sample-config y copiamos el fichero client.ovpn a la carpeta C:\Program Files\OpenVPN\config (la misma donde hemos puesto los certificados).

Ahora renombramos el fichero client.ovpn que hemos copiado en config a nombredelusuario.ovpn y lo editamos.

  • Busca la línea dev tun y ponle un ; delante y quita el del dev tap. Tiene que tener dev tap para estar igual que el servidor.
  • Ve a la línea que pone
ca ca.crt 
cert client.crt
key client.key

Y lo cambias por
ca "C:\\Program Files\\OpenVPN\\config\\ca.crt"
cert "C:\\Program Files\\OpenVPN\\config\\nombredelusuario.crt"
key "C:\\Program Files\\OpenVPN\\config\\nombredelusuario.key"
  • Ve a la línea remote my-server-1 1194 y cambia my-server-1 por tu IP fija o por tu dominio (estático o dinámico). Esto le dice a la configuración dónde tiene que apuntar (al servidor OpenVPN).

    Ya lo tienes, sólo ejecuta el OpenVPN GUI del escritorio, y en el icono de la barra de tareas (zona del reloj) botón derecho y conectar. Debería ponerse en verde. Con eso ya tienes conexión.