0
(0)

Microblogging es una manera maravillosa de expresar sus pensamientos. Es breve, sucinto y dulce. En este sentido, Twitter ha sido una de las plataformas de microblogging más populares del mundo. Sin embargo, confiar en esta empresa en particular para sus microblogging no tiene por qué ser la mejor solución para todos.

Afortunadamente, existen alternativas como Pleroma , que es un Twitter autohospedado. Esta es una plataforma ligera de microblogging federada. El uso de la federación permite que la plataforma se comunique con otras instancias federadas, lo que significa que no necesita reunir a muchas personas para su propio Twitter privado para comenzar a compartir información. Este artículo tiene como objetivo ayudarlo a comenzar con Pleroma.

.toc{background-color:#f3f4f6;font-size:16px;font-weight:500;padding:1em;}.toc h4{text-align:center;text-transform:mayúsculas;font-size:0.9375rem; margin-bottom:1rem;}.toc ul{margen:0;padding:0;font-size:15px;}.toc-content{overflow-y:auto;max-height:600px;}.toc-content li{ estilo de lista: ninguno! importante; margen inferior: 1em;}. {.toc-wrap{posición:absoluta;}.toc{;superior:50px;tamaño de fuente:14px;relleno:0,5em;}.toc-content li{margin-bottom:0,5em;}}

El problema con Twitter

Se sabe que Twitter bloquea aleatoriamente cuentas por infracciones de políticas vagas. Si eres alguien que ha acumulado años de publicaciones en Twitter, perder ese historial puede ser devastador. No solo eso, también se sabe que Twitter entrega datos de usuarios tanto a anunciantes como a agencias gubernamentales.

Esto convierte a Twitter en una plataforma insegura para las personas que desean tener control total sobre sus datos o para los periodistas que informan sobre temas controvertidos.

¿Qué es la federación y cómo funciona?

Una solución a este problema es construir una red social a través de la federación de servidores . Este es un sistema en el que permite que varios servidores que ejecutan un software similar se comuniquen entre sí de forma transparente.

Por eso, cualquier servidor federado puede actuar como un nodo para toda la red donde puede acceder y participar con otros servidores.

Servidor Pleroma 03 Red Federada

A su vez, esto crea un ecosistema resistente que puede adaptarse fácilmente a cualquier circunstancia. Por ejemplo, si un servidor de Pleroma deja de funcionar, no finalizará la red federada de Pleroma. Puede reducir la cantidad de publicaciones dentro de la red, pero otros servidores aún podrán comunicarse entre sí.

Cómo instalar Pleroma

Pleroma requiere una serie de cosas antes de que pueda comenzar a configurarlo:

  • Primero, debe tener una máquina visible públicamente. Esto podría ser una máquina en su hogar que puede transferir hacia adelante o un VPS que compró a un proveedor.
  • Además, si está utilizando un VPS para instalar Pleroma, debe tener acceso de root a ese VPS. Esto se debe a que instalará paquetes que requiere Pleroma para que funcione correctamente.
  • Por último, debe tener un nombre de dominio. Esto se debe a que certbot , la utilidad de certificados SSL, requerirá un nombre de dominio para generar un certificado para su instancia de Pleroma.

Con eso en mente, esta guía se centrará en la instalación de Pleroma en un VPS basado en Debian de Digitalocean .

1. Configure sus registros DNS A y AAAA

Antes de comenzar, es aconsejable vincular primero su nombre de dominio a la dirección IP de su VPS.

Pleroma Server 05 Ejemplo de registro Dns

Esto garantiza que cualquier comando que haga referencia a su nombre de dominio a continuación se resolverá correctamente. Como tal, esto se vuelve especialmente útil una vez que configura sus certificados SSL más adelante.

  1. Para vincular su nombre de dominio a la dirección IP de su VPS, debe editar el registro DNS de su nombre de dominio. Si bien es posible que utilice un servicio de registro de dominios diferente al mío, el proceso de vincular su nombre de dominio a la dirección de su VPS es prácticamente el mismo.
  2. En mi caso, vinculé mi nombre de dominio: yetanotherpleromaserver.xyz a mi VPS de Digitalocean a través de Namesilo. Para hacer eso, primero accedí a la ventana del administrador de dominios de Namesilo.

Servidor Pleroma 06 Administrador de dominios

  1. Desde aquí, debe hacer clic en el nombre de dominio. Esto abre la configuración para ese dominio específico.
  2. A continuación, haga clic en el enlace «Registros DNS». Esto mostrará todos los registros DNS disponibles para su nombre de dominio.

Servidor Pleroma 38 Dns Registros 2

  1. Una vez hecho esto, agregué un recurso «A» a mi registro DNS haciendo clic en el enlace «A» en el cuadro «Agregar/Editar un registro de recursos» en la página de registro de Namesilo.

Pleroma Server 08 Resalta un récord

  1. A partir de ahí, lo único que tenía que hacer era agregar la dirección IPv4 de mi VPS de Digitalocean.

Pleroma Server 09 agregó un registro

  1. The process of adding an “AAAA” record is also the same. However, instead of clicking the “A” link I will be clicking the “AAAA” link. Further, instead of adding the IPv4 address I will be adding the IPv6 address.

Servidor Pleroma 10 Agregó registro Aaaa

2. Obtain the Pleroma Dependencies

The next thing that you need to do is to download all of the packages that Pleroma requires. As discussed above, I am only going to highlight the installation process for Debian and Ubuntu-based Linux distributions. As such, I will be using apt to install all of the required packages.

With that in mind, Pleroma depends on three major programs: postgresql, elixir and erlang. Therefore, you need to install these programs as well as a couple more which will complement those three on doing their work.

To do that, you can run the following command:

sudo apt install git build-essential postgresql postgresql-contrib cmake libmagic-dev elixir erlang-dev erlang-nox nginx certbot

Pleroma Server 11 Instalación de paquetes

3. Crear el Usuario Pleroma

Una vez hecho esto, lo siguiente que debe hacer es crear la cuenta de usuario «pleroma». Esta es la cuenta que utilizará para descargar e instalar el paquete Pleroma. Hacerlo de esta manera garantiza que el programa Pleroma no tenga acceso de superusuario a su sistema.

Para hacer esto, puede ejecutar el siguiente comando:

sudo useradd -r -s /bin/false -m -d /var/lib/pleroma -U pleroma
  • La -ropción establecerá que el usuario «pleroma» sea una cuenta del sistema en lugar de una cuenta de usuario.
  • Además, la -sopción configurará el shell de inicio de sesión para este usuario como «falso». Esto asegura que el usuario pleroma, por sí mismo, no pueda ejecutar ningún comando desde un shell.
  • Por otro lado, las banderas -my -destablecen el directorio de inicio para el usuario «pleroma». La -mbandera configura explícitamente la cuenta para que tenga un directorio de inicio y la -dbandera configura ese directorio para que apunte a «/var/lib/pleroma».
  • Por último, la -Ubandera crea un grupo de usuarios con el mismo nombre y agrega el usuario de Pleroma recién creado a ese grupo.

Servidor Pleroma 12 Añadir usuario Pleroma

4. Descargar Pleroma

Desde allí, ahora puede descargar el paquete Pleroma desde sus repositorios. Para hacer eso, primero debe crear el directorio donde se descargarán los archivos:

sudo mkdir -p /opt/pleroma
sudo chown -R pleroma:pleroma /opt/pleroma
  • El primer comando creará el directorio «pleroma» donde descargará todos los archivos para el programa.
  • El segundo comando, por otro lado, transferirá la propiedad de esa carpeta de root a pleroma. Entonces, esto permitirá que pleroma lea y escriba desde esta carpeta sin ningún problema.

Servidor Pleroma 13 Crear directorio

Una vez hecho esto, lo siguiente que debe hacer es descargar el código fuente de Pleroma. Para hacer eso, necesitas usar git:

sudo -Hu pleroma git clone -b estable /opt/pleroma

Servidor Pleroma 14 Git Clon

5. Preparar e instalar Pleroma

Ahora puede ir al directorio /opt/pleroma para iniciar el proceso de instalación del programa:

cd /opt/pleroma

A partir de ahí, debe ejecutar el programa Mix para obtener todas las dependencias adicionales para Pleroma. Para hacer eso, puede ejecutar el siguiente comando:

sudo -Hu pleroma mezcla deps.get

Servidor Pleroma 15 Obtener Deps

Una vez hecho esto, ahora puede continuar con la compilación e instalación de Pleroma. En eso, solo necesita ejecutar un comando:

sudo -Hu pleroma MIX_ENV=prod mix pleroma.instance gen

Este comando hará tres cosas:

  • Primero, la MIX_ENV=prodopción establecerá la variable de entorno del programa para apuntar a una configuración de producción. Esto significa que el programa no contendrá herramientas ni archivos de desarrollo.
  • La genopción creará un archivo de configuración que apunta a la variable de entorno que ha proporcionado.
  • Por último, este comando también compilará e instalará Pleroma desde su código fuente. Debido a eso, este proceso llevará algún tiempo dependiendo del hardware en el que lo esté ejecutando.

Pleroma Server 16 Instalar y compilar Pleroma

6. Configure la instalación de Pleroma

Una vez que Pleroma haya terminado de compilar, le pedirá información sobre su servidor.

  1. Primero, necesitará el nombre de dominio que desea usar para el programa. En mi caso, utilicé mi nombre de dominio: “yetanotherpleromaserver.xyz”.

Configuración de nombre de dominio Pleroma Server 17

  1. A partir de ahí, el script de configuración le pedirá el nombre que desea para su servidor Pleroma. En mi caso, usé el mismo nombre: “Yet Another Pleroma Server” para mi servidor.

Servidor Pleroma 18 Nombre del servidor

  1. A continuación, ingrese su dirección de correo electrónico de administrador. Este debe ser un correo electrónico adecuado que pueda recibir y enviar correos electrónicos.

Servidor Pleroma 19 Correo electrónico del administrador

  1. Ahora seleccione si desea que los motores de búsqueda puedan buscar su instancia de Pleroma. Esto es útil si desea crear una instancia pública de Pleroma a la que otras personas puedan unirse e iniciar sesión. En mi caso, quería que este servidor fuera privado, así que seleccioné «n».

Pleroma Server 21 Indexación de motores de búsqueda

  1. Después de eso, el script le preguntará si desea guardar su configuración en un archivo de base de datos. En su mayor parte, querrá seleccionar «sí» aquí y seleccionar las opciones predeterminadas que le pedirá.

Servidor Pleroma 22 Base de datos local

  1. Lastly, the script will require you to add some details about which port and address to listen to. If you are installing Pleroma on the same machine that you are configuring it on, it is safe to leave the defaults here.

Pleroma Server 23 Servicio de escucha

7. Media-specific Configurations

  1. Now, the configuration script will require you to select where you want to save the media files that will be uploaded to the server. Similar to the settings above, it is safe to leave these on default.

Pleroma Server 24 Ubicación de carga

  1. Next, decide whether you want to strip any geolocation from the EXIF data of the photos that you’ll receive. This is useful if you want to preserve the privacy of the uploader. Since I will only be using this as a private instance I selected “no” here.

Pleroma Server 25 Strip Geolocalización

  1. Además, deberá decidir si desea anonimizar los nombres de archivo de las cargas. Esto es especialmente útil si desea eliminar cualquier asociación con el cargador y lo que cargó. En mi caso, también seleccioné “no” aquí.

Pleroma Server 26 Anonimizar cargas

  1. Por último, el script de configuración le permitirá elegir si desea crear varias copias de los archivos que se cargan en su servidor. En mi caso, seleccioné “no”.

Deduplicación de archivos Pleroma Server 27

8. Finalice su configuración de Pleroma

  1. Ahora puede ver su archivo de configuración. Este se encuentra en “/opt/pleroma/config/generated_config.exs”. Puedes usar lesspara verlo:
menos /opt/pleroma/config/generated_config.exs
  1. Para finalizar esta configuración, debe cambiar el nombre de este archivo como «prod.secret.exs». Puede hacerlo ejecutando el siguiente comando:
sudo -Hu pleroma mv config/{generated_config.exs,prod.secret.exs}

Carpeta de configuración del servidor Pleroma 28

9. Inicie la base de datos Pleroma

  1. Lo siguiente que debe hacer es iniciar el programa de base de datos. Para hacer eso, puede usar la base de datos que proporcionó Pleroma. Puede cargar esa base de datos ejecutando el siguiente comando:
sudo -Hu postgres psql -f /opt/pleroma/config/setup_db.psql

Pleroma Server 29 Base de datos de importación

  1. Desde allí, ahora puede vincular postgres y Pleroma migrando la base de datos de postgres a Pleroma. Para hacer eso, puede ejecutar el siguiente comando:
sudo -Hu pleroma MIX_ENV=prod mix ecto.migrate

Pleroma Server 30 Migrar base de datos

10. Inicie su servidor Pleroma

Ahora es el momento de ejecutar su servidor Pleroma. Puede hacer esto ejecutando el siguiente comando:

sudo -Hu pleroma MIX_ENV=prod mix phx.server

Servidor Pleroma 31 Primera ejecución

Sin embargo, este servidor sigue siendo inaccesible desde el navegador normal. Para permitir eso, primero debe configurar certbot y nginx.

Configuración de Certbot para Pleroma

  1. Configurar certbot es relativamente sencillo. Primero, debe crear la carpeta donde se guardarán los certificados. Puede hacerlo ejecutando el siguiente comando:
sudo mkdir -p /var/lib/letsencrypt/
  1. Una vez hecho esto, ahora puede generar un certificado para su servidor Pleroma. Para hacer eso, puede ejecutar este comando:
sudo certbot certonly --email your@email.address -d yourpleromaserver.com --standalone

Servidor Pleroma 32 Certbot terminado

Configuración de Nginx para Pleroma

  1. A partir de ahí, lo siguiente que debe hacer es configurar su servidor web nginx para Pleroma. La instalación de Pleroma ya proporciona una plantilla que puede copiar en el directorio de configuración de nginx. Para hacer eso, puede ejecutar el siguiente comando:
sudo cp /opt/pleroma/installation/pleroma.nginx /etc/nginx/sites-available/pleroma.nginx
  1. A continuación, debe editar este archivo de configuración para adaptarlo a su servidor Pleroma. En la mayoría de los casos, esto solo implicará cambiar cuatro variables: server_name, ssl_trusted_certificate, ssl_certificate y ssl_certificate_key.
  2. Para la primera variable, debe cambiar el valor «example.tld» al nombre de dominio de su servidor. En mi caso, cambié esto a «yetanotherpleromaserver.xyz».

Servidor Pleroma 33 Nombre del servidor de configuración de Nginx

  1. A partir de ahí, las siguientes tres variables apuntan a la ubicación del certificado SSL de su dominio. Si realizó su certificado a través de esta guía, esa ruta será «/etc/letsencrypt/live/yourdomain.name/».
  2. Esto ya lo proporciona la plantilla nginx y lo único que queda por hacer es cambiar el valor «example.tld» a su nombre de dominio.

Servidor Pleroma 34 Configuración de certificado Ssl

  1. Una vez hecho esto, ahora puede habilitar su configuración de nginx creando un enlace simbólico al directorio activo de nginx. Para hacer eso, puede ejecutar el siguiente comando:
sudo ln -s /etc/nginx/sites-disponible/pleroma.nginx /etc/nginx/sites-enabled/pleroma.nginx
  1. Después de eso, ahora puede iniciar nginx habilitando su servicio systemctl:
sudo systemctl habilitar nginx.servicio

11. Configuraciones finales

  1. Desde aquí, ahora puede configurar el servicio del sistema para Pleroma y crear su primer usuario. Por defecto, Pleroma incluye una plantilla systemctl para habilitar su servicio a través de systemd. Para usar esa plantilla, puede ejecutar el siguiente comando:
sudo cp /opt/pleroma/installation/pleroma.service /etc/systemd/system/pleroma.service

Servicio Pleroma Server 35 Copy Systemd

  1. Ahora, puede habilitar Pleroma a través de systemctl ejecutando este comando:
sudo systemctl habilitar pleroma.servicio

Servidor Pleroma 36 Habilitar servicio Pleroma

  1. Por último, ahora puede crear su primer usuario para su instancia de Pleroma ejecutando el pleroma.usercomando:
sudo -Hu pleroma MIX_ENV=prod mix pleroma.user new sunombredeusuario sucorreoelectrónico@dominio.com --admin

Servidor Pleroma 37 Terminado de instalar

Preguntas frecuentes

1. Las imágenes que subo todavía tienen datos de geolocalización. ¿Qué hice mal?

Esto puede deberse a varias cosas. Sin embargo, la razón más común por la que esto sucedió es porque no tiene el paquete exiftool. Para la guía anterior, exiftool no era un paquete instalado de forma predeterminada.

Como tal, para eliminar la geolocalización de las imágenes que carga, debe agregar ese paquete manualmente. Para hacer eso, puede ejecutar el siguiente comando:

sudo apt install exiftool

2. No puedo generar un Certificado Letsencrypt. ¿Qué hice mal?

Esto también puede deberse a varias cosas. Sin embargo, la causa más común de esto es que nginx aún se está ejecutando.

Para que el comando certbot funcione, debe tener los puertos web comunes abiertos y que ningún programa los tome. Para deshabilitar nginx, puede ejecutar el siguiente comando:

sudo systemctl detener nginx

Crédito de la imagen: Pleroma

¿Le ha parecido útil este contenido?

¡Haz clic en una estrella para puntuar!

Promedio de puntuación 0 / 5. Recuento de votos: 0

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.