162 - Hablar por internet utilizando tu servidor

162 - Hablar por internet utilizando tu servidor

Como montar un servicio para hablar por internet utilizando tu VPS o tu Raspberry, de forma sencilla y práctica. Otra manera de comunicarte con tus amigos

1:25
-3:15

En el tutorial sobre servidor virtual dediqué un capítulo del mismo a levantar un servicio Mumble en un VPS. Dadas las circunstancias en las que nos encontramos, he decidido hablar sobre este tema en el podcast. Si no conoces lo que es Mumble, indicarte que se trata de un servicio que te permite levantar una sala con la que hablar con otras personas, a través, directamente, de internet. Es lo que se conoce como VoIP. Así, en este episodio te hablaré de que es Mumble, como puedes levantar tu propio servicio Mumble, y como tenerlo bajo control.

Que conste que Mumble no es un servicio o una tecnología nueva, ni mucho menos. Es algo que viene de largo. Nació como un medio de comunicación entre gamers. Lo cierto es que te da una gran calidad de sonido, y hoy en día es utilizado por algunos podcasters para las entrevistas.

Hable por Internet con tu VPS

Hablar por internet utilizando tu servidor

En que ando metido

Como todos los jueves quiero contarte en que ando metido para que sepas lo que encontrarás los próximos días aquí.

Artículos

Respecto al tema de los artículos…, si todo va bien, que espero que sea así, esta semana, encontrarás dos artículos. El primero de ellos referente a copiar archivos de gran tamaños entre equipos Linux en tu propia red. Este artículo quería haberlo sacado ya la semana pasada, pero lo cierto es que quiero probar con detalle todas las opciones en mi propia red, y con dos de mis equipos, claro.

Por otro lado, he estado trabajando en el penúltimo de los artículos sobre Vim, en el que te cuento algunos trucos, ideas y sugerencias, para mejorar tu productividad con este editor. Probablemente, mucho de lo que te voy a contar, ya lo conozcas, pero, a lo mejor hay alguna que otro aspecto que no, y se trata, precisamente de eso.

Aplicaciones

Esta semana es otra semana en blanco. Lo cierto, es que la semana pasada estuve colaborando en la medida de lo posible en el proyecto de Pedro Mosquetero Web. Como ya comenté, ha montado un VPS para docentes. En ese servidor puedes encontrar salas de videoconferencias online, donde poder impartir tus clases. Un proyecto totalmente desinteresado. Sinceramenta una idea brutal.

Así, implementé un pequeño servicio que te permite ver el estado del servidor, VPS, en cualquier momento. Se trata de una sencilla página web, donde ver algunos parámetros básicos de funcionamiento, como el uso de CPU, RAM, conexiones, etc.

En unos días, subiré todo esto a un repositorio de GitHub para que quien lo quiera lo pueda tener a su disposición para montarlo y utilizarlo de forma sencilla.

Sobre hablar por internet

La cuestión, es que durante este tiempo que llevas escuchando el podcast, has podido ver como montar todo tipo de servicios que te pueden ser de ayuda, y precisamente este es uno de ellos. Es mas, seguro que ahora te puede venir ideal.

Mumble

No voy a profundizar gran cosa en lo que es un servidor Mumble, porque para esto como he comentado en la introducción tienes el capítulo de voz sobre IP del tutorial sobre tu servidor virtual. Sin embargo, y aprovechando el tutorial sobre Docker, si quiero contarte como puedes hacerlo de forma muy sencilla, pero totalmente efectiva, utilizando esta tecnología.

Para ello, lo primero ha sido crear una imagen de un servidor de Mumble que se adecuara a mis necesidades. Te dejo aquí el Dockerfile correspondiente por si tu quieres aprovecharlo y adaptarlo a tus necesidades,

FROM ubuntu:18.04

ARG UID=1000
ARG GID=1000

RUN apt-get update && \
    apt-get upgrade -y && \
    apt-get install -y --no-install-recommends mumble-server gosu  libssl1.0-dev && \
    rm -rf /var/lib/apt/lists

RUN groupadd -g $GID mumble
RUN useradd -r -s /bin/false -u $UID -g $GID mumble
RUN mkdir /mumble && chown -R mumble:mumble /mumble

# Copy configuration
ADD ./mumble-server.ini /etc/mumble-server.ini
ADD ./start.sh /start.sh
RUN chmod +x /start.sh

EXPOSE 64738
VOLUME ["/mumble"]

ENTRYPOINT ["/start.sh"]

Por supuesto que lo puedes encontrar disponible todo el contenido en GitHub. Y, como no podía ser de otra manera, también lo tienes a tu disposición en DockerHub. De esta manera la instalación no puede ser mas sencilla.

Traefik

Como te puedes imaginar, yo lo he levantado en mi VPS de nuevo utilizando Traefik, tal y como te comenté en el episodio 142 del podcast. En este episodio, te hablé sobre como tener tus contenedores accesibles desde internet. Así, la configuración es tan sencilla, como lo que puedes ver a continuación,

version: '3'

services:
  mumble:
    image: atareao/mumble:ubuntu
    container_name: mumble
    restart: unless-stopped
    volumes:
      - ./data:/mumble
    environment:
      - MUMBLE_PASSWORD=XXXXXXXXXX
    networks:
      - proxy
    ports:
      - 64738:64738
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.mumble.entrypoints=http"
      - "traefik.http.routers.mumble.rule=Host(`mumble.servidor.duckdns.es`)"
      - "traefik.http.middlewares.mumble-https-redirect.redirectscheme.scheme=https"
      - "traefik.http.routers.mumble.middlewares=mumble-https-redirect"
      - "traefik.http.routers.mumble-secure.entrypoints=https"
      - "traefik.http.routers.mumble-secure.rule=Host(`mumble.servidor.duckdns.es`)"
      - "traefik.http.routers.mumble-secure.tls=true"
      - "traefik.http.routers.mumble-secure.tls.certresolver=myresolver"

networks:
  proxy:
    external: true

De esta manera lo tienes montado en un periquete, con sus comunicaciones cifradas con Let’s Encrypt, etc. Sencillo, simple y sobre todo práctico.

Mumble web

Por otro lado, he estado probando un cliente de Mumble, para facilitar hablar por internet. Para utilizarlo directamente desde la web. Se trata de mumble-web. Un cliente de Mumble web implementado en HTML5. Esto te puede venir fantástico para el caso de que las personas que tengan que participar en la charla no dispongan de otro tipo de cliente. De esta manera eres completamente independiente de la plataforma que esté utilizando el cliente.

Por supuesto, que para levantar este cliente en el servidor, de nuevo he utilizado la mágica combinación de Docker y Traefik, con lo que en unos instantes, lo he puesto en producción. Lo cierto es que esto de en unos instantes es una forma de hablar, porque hasta que he dado con la tecla, con cada uno de los contenedores, imágenes, y me ha quedado como a mi me gustaba, me ha llevado lo mio.

De cualquier forma, también tienes a tu disposición una imagen en DockerHub, con la que instalar fácilmente este cliente de Mumble en HTML5. De nuevo, te dejo aquí mi configuración de Traefik, por si quieres sacarle partido,

version: '3'

services:
  mumbleweb:
    image: rankenstein/mumble-web
    container_name: mumbleweb
    restart: unless-stopped
    networks:
      - proxy
    environment:
      - MUMBLE_SERVER=mumbleweb.servidor.duckdns.es:64738
    ports:
      - 8086:80
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.mumbleweb.entrypoints=http"
      - "traefik.http.routers.mumbleweb.rule=Host(`mumbleweb.servidor.duckdns.es`)"
      - "traefik.http.middlewares.mumbleweb-https-redirect.redirectscheme.scheme=https"
      - "traefik.http.routers.mumbleweb.middlewares=mumbleweb-https-redirect"
      - "traefik.http.routers.mumbleweb-secure.entrypoints=https"
      - "traefik.http.routers.mumbleweb-secure.rule=Host(`mumbleweb.servidor.duckdns.es`)"
      - "traefik.http.routers.mumbleweb-secure.tls=true"
      - "traefik.http.routers.mumbleweb-secure.tls.certresolver=myresolver"

networks:
  proxy:
    external: true

Cliente Android

Por supuesto, existe el correspondiente cliente Android, para hablar por internet utilizando Mubmle, y con lo que comunicarte de esta forma es realmente sencillo. En el artículo sobre mumble en un VPS encontrarás como instalar y configurar este cliente para utilizar con tu propio servidor.


Espero que te haya gustado este nuevo episodio del podcast. Si puedes, te agradecería una valoración en iVoox y/o en Apple Podcast.

Imagen de portada de Pavan Trikutam en Unsplash

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *