Saltar a contenido

Mastodon

En este artículo

Información

Mastodon es la plataforma social descentralizada, gratuita y de código abierto. A diferencia de las plataformas comerciales centralizadas, Mastodon no está controlada por ninguna organización única.

Mastodon. Características principales

  • Mastodon permite a los usuarios suscribirse y comunicarse con otros usuarios de cualquier servidor conectado;
  • La plataforma ofrece flujos de publicaciones públicas para ayudar a los usuarios a descubrir contenido interesante. El flujo local muestra publicaciones de su servidor, mientras que el flujo federado muestra todas las publicaciones públicas de los usuarios suscritos desde su servidor que son conocidas por su servidor;
  • Los usuarios pueden interactuar con las publicaciones directamente en el flujo o en la vista avanzada de publicaciones respondiendo, compartiendo, añadiendo a favoritos, marcando con un marcador o utilizando un menú adicional;
  • Mastodon envía notificaciones para varios eventos de interacción relacionados con su perfil y publicaciones. Estas notificaciones se pueden filtrar por tipo;
  • Para suscribirse a un usuario, simplemente haga clic en el botón Follow en su perfil. También puede habilitar notificaciones para nuevas publicaciones de sus suscripciones;
  • La función de búsqueda en Mastodon le permite encontrar usuarios, hashtags y publicaciones a través de un enlace. Con la búsqueda de texto completo instalada, puede buscar sus propias publicaciones y favoritos;
  • Las publicaciones privadas en Mastodon solo son visibles para los suscriptores. Se muestran en una columna de conversación separada;
  • Las listas de suscripción se pueden utilizar para ver el flujo de publicaciones exclusivamente.

Funcionalidades de implementación

ID Nombre del software SO compatible VM BM VGPU GPU CPU mín. (núcleos) RAM mín. (GB) HDD/SSD mín. (GB) Dominio personalizado Activo
59 Mastodon Ubuntu 22.04 + + + + 2 2 - No ORDER

Para obtener información sobre las funcionalidades de implementación de este software, consulte este enlace

Nota

A menos que se especifique lo contrario, por defecto instalamos la última versión de lanzamiento del software desde el sitio web del desarrollador o los repositorios del sistema operativo.

Primeros pasos después de implementar Mastodon

Se enviará una notificación al correo electrónico especificado durante el registro indicando que el servidor está listo para trabajar después de pagar el pedido. Contendrá la dirección IP del VPS, así como el nombre de usuario y la contraseña para la conexión. Los clientes de nuestra empresa gestionan el hardware en el servidor y el panel de control de API — Invapi.

Puede encontrar los datos de autorización en la pestaña Configuration >> Tags del panel de control del servidor o en el correo electrónico que se envió.

  • Enlace para acceder al panel de control de Mastodon con interfaz web: en la etiqueta webpanel;
  • Login y Password para conectarse al servidor: enviados por correo electrónico a su dirección una vez que el servidor esté listo después de la implementación del software;
  • Login y Password para autenticarse en la interfaz web de Mastodon se establecen manualmente durante la creación de la cuenta a través de la consola del administrador.

El enlace para acceder a la interfaz web será: https://mastodon{Server_ID_from_Invapi}.hostkey.in

Configuración de cambios

Para cambiar la configuración de Mastodon desde la línea de comandos, utilice las utilidades tootctl y rails:

  • Configuración de cuentas, creación, modificación, asignación de permisos, etc.;
  • Configuración del servidor SMTP;
  • Configuración del registro de usuarios.

Información

Consulte la documentación del desarrollador para obtener más información sobre cómo utilizar las utilidades.

Ejemplo de uso

  1. Conéctese al servidor mediante SSH:
    ssh root@<server_ip>
    
  2. Inicie sesión en el contenedor de la aplicación web de Mastodon. Busque y conéctese al contenedor mastodon_web_1:

    docker exec -it mastodon_web_1 bash
    

  3. Para crear un nuevo usuario, utilice el comando tootctl accounts create. Especifique el nombre de usuario, el correo electrónico y la bandera --confirmed para la confirmación de la cuenta.

    RAILS_ENV=production bin/tootctl accounts create new_username --email [email protected] --confirmed
    
    Reemplace new_username con el nombre de usuario deseado y [email protected] con el correo electrónico real del usuario. Después de ejecutar este comando, se creará el usuario. Asegúrese de guardar la contraseña que se muestra en pantalla:

Otorgar privilegios de administrador y aprobar usuario

Después de crear un usuario, debe buscarlo en la base de datos para cambiar sus permisos y estado.

  1. Inicie la consola de Rails:
    RAILS_ENV=production bin/rails console
    
  2. Busque al usuario por correo electrónico o nombre de usuario:
    user = User.find_by(email: '[email protected]')  # o: User.find_by(username: 'new_username')
    
  3. Actualice su estado:

    user.update(approved: true)
    
    Esta acción eliminará la notificación Your application is pending review by our staff... del panel de administración.

  4. Asigne un rol de administrador:

    user.update(role: UserRole.find_by(name: 'Admin'))
    

  5. Verifique:
    user.reload
    
    user.role           # => "Admin"
    
    user.approved       # => true
    
  6. Salga de la consola:
    exit
    

Configuración del servidor de correo

Si necesita configurar o cambiar el servidor de correo, ejecute:

  1. Abra el archivo de configuración:

    nano /opt/mastodon/.env.production
    
    2. Configure los parámetros SMTP (por ejemplo, para MailHog):

    # Sending mail
    # ------------
    SMTP_SERVER=mailhog
    SMTP_PORT=1025
    SMTP_LOGIN=
    SMTP_PASSWORD=
    SMTP_FROM_ADDRESS=notifications@your_domain
    SMTP_AUTH_METHOD=none
    SMTP_OPENSSL_VERIFY_MODE=none
    SMTP_ENABLE_STARTTLS=false
    
    3. Reinicie los contenedores de Mastodon Para aplicar la nueva configuración, reinicie los contenedores de Mastodon:

    cd /opt/mastodon
    
    docker-compose restart
    
    4. Compruebe la funcionalidad del correo - Para MailHog: abra la interfaz web http://your_server:8025 - Compruebe los registros:
    docker-compose -f /opt/mastodon/docker-compose.yml logs sidekiq | grep -i mail
    
    - Pruébalo: registre un nuevo usuario y compruebe la recepción de correos electrónicos

Notas

Comprobación de contenedores Docker: Si no está seguro de qué contenedores están en ejecución, ejecute:

 docker ps
Asegúrese de que los contenedores de Mastodon (mastodon_web_1, mastodon_db_1, etc.) estén en ejecución.

Información

Obtenga más información sobre la configuración en la Documentación del desarrollador.

Información

Obtenga más información sobre el trabajo con setup.sh en la Documentación del desarrollador.

Cambio del nombre de dominio del servidor Mastodon

Información

Esta guía utiliza skaz.online como dominio de ejemplo. Inicialmente, Mastodon se configura con un dominio como mastodon<server_ID>.hostkey.in. Reemplace skaz.online con su dominio real en todos los ejemplos de configuración.

Archivos y directorios clave

Archivo/Directorio Qué cambia
/opt/mastodon/.env.production Variables de entorno, dominios
/data/nginx/user_conf.d/*.conf Configuración de Nginx para el nuevo dominio
/etc/letsencrypt/live/ Certificados SSL (si se usa certbot)
Archivos Docker Compose Dominio en docker-compose.yml o variables
Configuración SMTP Actualizar direcciones relacionadas con el dominio

Para cambiar el nombre de dominio, siga estos pasos:

  1. Registre su propio dominio, por ejemplo, mastodon.mydomain.com.

  2. Configure los registros DNS para este dominio:

    • Establezca un registro A que apunte a la dirección IP del servidor Mastodon;
    • Configure el registro MX que apunte al servidor de correo.

    Información

    Gestión de DNS

  3. Agregue un registro PTR en la configuración de la dirección IP en Invapi; !!! info "Información" Obtenga más información sobre la configuración de registros PTR en Invapi aquí.

  4. Actualice las variables de entorno de Mastodon Edite el archivo /opt/mastodon/.env.production, reemplazando el valor actual (por ejemplo, mastodon<server_ID>.hostkey.in) con su nuevo dominio:

    # Previous:
    # LOCAL_DOMAIN=mastodon<server_ID>.hostkey.in
    
    
    # Updated:
    LOCAL_DOMAIN=skaz.online
    WEB_DOMAIN=skaz.online
    
    5. Configure Nginx con soporte HTTPS

    5.1 Crear configuración de Nginx Importante: Cree un nuevo archivo de configuración, reemplazando el antiguo. Las configuraciones antiguas pueden contener directivas proxy_pass diferentes, lo que provocará un mal funcionamiento. Cree un archivo de configuración de Nginx /data/nginx/user_conf.d/skaz.online.conf con el siguiente contenido:

    server {
        listen 80;
        server_name skaz.online;
        return 301 https://$host$request_uri;
    }
    server {
        listen 443 ssl;
        listen [::]:443 ssl;
        server_name skaz.online;
    
    
        # SSL certificates
        ssl_certificate         /etc/letsencrypt/live/skaz.online/fullchain.pem;
        ssl_certificate_key     /etc/letsencrypt/live/skaz.online/privkey.pem;
        ssl_trusted_certificate /etc/letsencrypt/live/skaz.online/chain.pem;
        ssl_dhparam /etc/letsencrypt/dhparams/dhparam.pem;
    
    
        # Main Mastodon application (port 3000)
        location / {
            proxy_set_header X-Forwarded-Proto https;
            proxy_set_header X-Forwarded-Ssl on;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-Host $host;
            proxy_set_header X-Forwarded-Server $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://127.0.0.1:3000;
            real_ip_header X-Forwarded-For;
            # WebSocket support
            proxy_http_version 1.1;
            proxy_set_header X-Scheme $scheme;
            proxy_buffering off;
        }
    
    
        # Mastodon Streaming API (port 4000)
        location ^~ /api/v1/streaming {
            proxy_set_header X-Forwarded-Proto https;
            proxy_set_header X-Forwarded-Ssl on;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-Host $host;
            proxy_set_header X-Forwarded-Server $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://127.0.0.1:4000;
            real_ip_header X-Forwarded-For;
            # WebSocket support
            proxy_http_version 1.1;
            proxy_set_header X-Scheme $scheme;
            proxy_buffering off;
        }
    }
    
    5.2 Obtener certificado SSL Compruebe el certificado:
    docker exec -it mastodon-nginx-1 ls /etc/letsencrypt/live/
    
    Si falta el certificado, obténgalo:
    docker compose stop nginx
    
    docker compose run --rm nginx certbot certonly --standalone -d skaz.online
    
    docker compose start nginx
    

  5. Limpiar configuraciones conflictivas

¡Importante! Elimine las configuraciones antiguas de Nginx, ya que múltiples archivos .conf pueden causar conflictos: Elimine la configuración antigua (por ejemplo, para mastodon<server_ID>.hostkey.in)

rm /data/nginx/user_conf.d/mastodon<server_ID>*.conf
O renombre para mantener una copia de seguridad

mv /data/nginx/user_conf.d/mastodon<server_ID>.hostkey.in.conf /data/nginx/user_conf.d/mastodon<server_ID>.hostkey.in.conf.backup

Razones de los conflictos:

  • Las directivas duplicadas listen 443 ssl causan un error duplicate listen options
  • Las configuraciones antiguas pueden tener direcciones o puertos proxy_pass diferentes
  • Nginx puede malinterpretar las solicitudes con múltiples bloques de servidor

  • Reiniciar servicios En el directorio que contiene docker-compose.yml, ejecute:

    docker compose down
    
    docker compose up -d
    

  • Verificar funcionalidad Prueba desde la línea de comandos

    curl -Ik https://skaz.online
    
    Respuesta esperada: HTTP/1.1 200 OK Comprobar en un navegador Abra el dominio en un navegador: debería cargarse la página principal de Mastodon.

Configuración inicial del panel de administrador

Para acceder al panel de administrador, siga el enlace de la etiqueta webpanel, haga clic en el botón Log In e introduzca las credenciales establecidas anteriormente.

Gestión de las reglas del servidor

Los administradores y moderadores de cada servidor individual en esta red social descentralizada establecen las reglas para Mastodon. Para gestionar las reglas, vaya a Administration >> Server Rules.

Principios básicos para establecer reglas:

  • Asegúrese de que las reglas sean razonables y sigan los estándares generalmente aceptados de decencia para no desanimar a los usuarios;
  • Declare claramente los tipos de contenido prohibidos, como crueldad, violencia y actividades ilegales, y aclare los niveles aceptables de contenido NSFW;
  • Especifique los procedimientos para advertir, bloquear o restringir a los infractores de las reglas, así como las acciones disciplinarias y los plazos;
  • Las reglas del servidor deben ser fácilmente accesibles para todos los usuarios y mostrarse públicamente durante el registro;
  • Es importante revisar y actualizar periódicamente las reglas a medida que el servidor crece, e involucrar a la comunidad en el proceso de moderación y mejora de las mismas.

Invitar usuarios

Mastodon tiene varias pestañas en el flujo para gestionar suscripciones e invitar a nuevos usuarios:

  • Follows and Followers - esta pestaña muestra las cuentas a las que está suscrito el usuario actual, y el flujo mostrará entradas de estos usuarios. Además, esta pestaña enumera a quienes están suscritos a esta cuenta, que es la audiencia en Mastodon.
  • Invite people - la función permite a los usuarios invitar a amigos y conocidos a su red social. Este texto describe la creación de un enlace único que se puede compartir para permitir que otros usuarios se unan al servidor Mastodon.

.

Nota

Para obtener información detallada sobre la configuración básica de Mastodon, consulte la documentación de los desarrolladores.

Pedido de un servidor con Mastodon mediante la API

Para instalar este software mediante la API, siga estas instrucciones.


Parte del contenido de esta página fue creado o traducido utilizando IA.

question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×