Saltar a contenido

Mastodon

En este artículo

Información

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

Mastodon. Funcionalidades clave

  • Mastodon permite a los usuarios suscribirse y comunicarse con otros usuarios de cualquier servidor conectado;
  • La plataforma ofrece feeds de publicaciones públicas para ayudar a los usuarios a descubrir contenido interesante. El feed local muestra las publicaciones de su servidor, mientras que el feed federado muestra todas las publicaciones públicas de los usuarios suscritos de su servidor que son conocidos por su servidor;
  • Los usuarios pueden interactuar con las publicaciones directamente en el feed o en la vista avanzada de la publicación respondiendo, compartiendo, añadiendo a favoritos, marcando como bookmark o utilizando un menú adicional;
  • Mastodon envía notificaciones para varios eventos de interacción relacionados con su perfil y sus 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 las 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 diálogo separada;
  • Las listas de suscripción pueden utilizarse para ver exclusivamente el feed de publicaciones.

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 PEDIR

Información

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 tras desplegar 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 haber pagado el pedido. Contendrá la dirección IP del VPS, así como el login y la contraseña para la conexión. Los clientes de nuestra empresa gestionan el hardware en el panel de control del servidor y de la API — Invapi.

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

  • Enlace para acceder al dashboard 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 tras el despliegue del software;
  • El Login y la Password para autenticarse en la interfaz web de Mastodon se configuran 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

Cambiar la configuración

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

  • Ajustes de cuenta, crear, modificar, asignar permisos, etc.;
  • Ajustes del servidor SMTP;
  • Ajustes de registro de usuarios.

Información

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

Ejemplo de uso

  1. Conéctese al servidor vía 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 su nombre de usuario deseado y [email protected] con el correo electrónico real del usuario. Tras ejecutar este comando, se creará el usuario. Asegúrese de guardar la contraseña que aparece en pantalla:

Otorgar privilegios de administrador y aprobar usuarios

Después de crear un usuario, debe encontrarlo 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. Asígnele un rol administrativo:

    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 los nuevos ajustes, reinicie los contenedores de Mastodon:

    cd /opt/mastodon
    
    docker-compose restart
    
    4. Compruebe la funcionalidad del correo electrónico: - Para MailHog: abra la interfaz web http://your_server:8025 - Comprobar logs:
    docker-compose -f /opt/mastodon/docker-compose.yml logs sidekiq | grep -i mail
    
    - Probarlo: registre un nuevo usuario y compruebe la recepción del correo electrónico

Nota

Comprobación de contenedores Docker: Si no está seguro de qué contenedores se están ejecutando, 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 de ajustes en la Documentación para Desarrolladores.

Información

Obtenga más información sobre cómo trabajar con setup.sh en la Documentación para Desarrolladores.

Cambiar el nombre de dominio del servidor Mastodon

Información

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

Archivos y directorios clave

File/Directory 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 utiliza 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 apuntando al servidor de correo.

    Información

    Gestión de DNS

  3. Añada un registro PTR en los ajustes de la dirección IP en Invapi; !!! info "Información" Obtenga más información sobre cómo configurar 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 la configuración de Nginx Importante: Cree un nuevo archivo de configuración, reemplazando el anterior. Las configuraciones antiguas pueden contener diferentes directivas proxy_pass, lo que provocaría 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 el certificado SSL Compruebe si existe 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 cámbiele el nombre 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 el error duplicate listen options
  • Las configuraciones antiguas podrían tener diferentes direcciones o puertos de proxy_pass
  • Nginx puede malinterpretar las solicitudes con múltiples bloques de servidor

  • Reiniciar servicios En el directorio que contiene el archivo 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; la página de inicio de Mastodon debería cargarse.

Ajustes iniciales del panel de administración

Para acceder al panel de administración, siga el enlace de la etiqueta webpanel, haga clic en el botón Log In e introduzca las credenciales configuradas 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 de decencia generalmente aceptados para evitar desincentivar a los usuarios;
  • Indique claramente los tipos de contenido prohibido, como la crueldad, la violencia y las 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 límites de tiempo;
  • 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.

Invitar usuarios

Mastodon tiene múltiples pestañas en el feed para gestionar suscripciones e invitar a nuevos usuarios:

  • Follows and Followers - esta pestaña muestra las cuentas a las que el usuario actual está suscrito, y el feed mostrará entradas de estos usuarios. Además, esta pestaña enumera a quienes están suscritos a esta cuenta, lo cual 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 puede compartirse para permitir que otros usuarios se unan al servidor Mastodon.

.

Nota

Para obtener información detallada sobre los ajustes básicos de Mastodon, consulte la documentación para desarrolladores.

Pedir un servidor con Mastodon mediante la API

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

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