Cómo instalar la plataforma de red social Friendica en Ubuntu 22.04

Friendica, antes conocida como Friendika, es una plataforma de comunicaciones descentralizada y de código abierto que te permite construir tu propia plataforma de red social en la web. Su objetivo es conectar amigos, conocidos o simplemente personas con los mismos intereses en grupos de miembros. Es una solución alternativa a otras plataformas de redes sociales como Mastodon, Twitter y Diaspora. Puedes importar tus sitios web y blogs a tu flujo social mediante fuentes RSS/Atom.

Esta guía te explicará cómo instalar la red social Friendica con Apache en Ubuntu 22.04.

Requisitos previos

  • Un servidor que ejecute Ubuntu 22.04.
  • Un nombre de dominio válido apuntando a la IP de tu servidor.
  • Se ha configurado una contraseña de root en el servidor.

Cómo empezar

En primer lugar, actualiza todos los paquetes del sistema a la última versión mediante el siguiente comando:

apt update -y
apt upgrade

Una vez actualizados todos los paquetes, puedes pasar al siguiente paso.

Instalar Apache, MariaDB y PHP

Friendica está escrito en PHP y utiliza MySQL como base de datos. Así que necesitarás instalar el servidor LAMP en tu sistema. Puedes instalarlo con el siguiente comando:

apt install apache2 mariadb-server php libapache2-mod-php php-common php-gmp php-curl php-intl php-mbstring php-xmlrpc php-mysql php-gd php-imagick php-xml php-cli php-zip php-sqlite3 curl git -y

Después de instalar todos los paquetes, edita el archivo php.ini y cambia la configuración por defecto:

nano /etc/php/8.1/apache2/php.ini

Cambia las siguientes líneas:

memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 300
max_input_vars = 1500
date.timezone = UTC

Guarda y cierra el archivo cuando hayas terminado.

Configurar la base de datos MariaDB

A continuación, tendrás que crear una base de datos y un usuario para Friendica. Primero, conéctate a MySQL con el siguiente comando:

mysql

Una vez hayas terminado, crea una base de datos y un usuario con el siguiente comando:

MariaDB [(none)]> CREATE DATABASE friendica;
MariaDB [(none)]> CREATE USER 'friendica'@'localhost' IDENTIFIED BY 'password';

A continuación, concede todos los privilegios a la base de datos Friendica con el siguiente comando:

MariaDB [(none)]> GRANT ALL ON friendica.* TO 'friendica'@'localhost' WITH GRANT OPTION;

A continuación, vacía los privilegios y sal de MySQL con el siguiente comando:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Una vez que hayas terminado, puedes pasar al siguiente paso.

Instalar Friendica en Ubuntu 22.04

En primer lugar, descarga la última versión de Friendica desde el repositorio Git al directorio raíz web de Apache:

cd /var/www/html
git clone https://github.com/friendica/friendica-addons.git -b stable

Una vez finalizada la descarga, cambia el directorio a friendica e instala las dependencias PHP necesarias con el siguiente comando:

cd friendica
./bin/composer.phar install --no-dev

A continuación, descarga los addons de Friendica con el siguiente comando:

git clone https://github.com/friendica/friendica-addons.git

A continuación, cambia el nombre del directorio de addons y del archivo .htaccess.

mv friendica-addons addon
mv .htaccess-dist .htaccess

A continuación, establece la propiedad y el permiso adecuados para el directorio friendica:

chown -R www-data:www-data /var/www/html/friendica/
chmod -R 755 /var/www/html/friendica/

Una vez que hayas terminado, puedes pasar al siguiente paso.

Crear un host virtual Apache

A continuación, tendrás que crear un archivo de configuración de host virtual Apache para alojar Friendica. Puedes crearlo con el siguiente comando:

nano /etc/apache2/sites-available/friendica.conf

Añade las siguientes líneas:

<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot /var/www/html/friendica
     ServerName friendica.linuxbuz.com


     <Directory /var/www/html/friendica/>
        Options +FollowSymlinks
        AllowOverride All
        Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Guarda y cierra el archivo y, a continuación, habilita el host virtual Apache y el módulo de reescritura con el siguiente comando:

a2ensite friendica.conf
a2enmod rewrite

A continuación, recarga el servicio Apache para aplicar los cambios:

systemctl restart apache2

Puedes verificar el estado del servicio Apache con el siguiente comando:

systemctl status apache2

Deberías obtener la siguiente salida:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2022-12-21 10:33:18 UTC; 6s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 57027 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 57031 (apache2)
      Tasks: 6 (limit: 2238)
     Memory: 15.8M
        CPU: 43ms
     CGroup: /system.slice/apache2.service
             ??57031 /usr/sbin/apache2 -k start
             ??57032 /usr/sbin/apache2 -k start
             ??57033 /usr/sbin/apache2 -k start
             ??57034 /usr/sbin/apache2 -k start
             ??57035 /usr/sbin/apache2 -k start
             ??57036 /usr/sbin/apache2 -k start

Dec 21 10:33:18 ubuntu2204 systemd[1]: apache2.service: Deactivated successfully.
Dec 21 10:33:18 ubuntu2204 systemd[1]: Stopped The Apache HTTP Server.
Dec 21 10:33:18 ubuntu2204 systemd[1]: Starting The Apache HTTP Server...

En este punto, el servidor web Apache está instalado y configurado. Ahora puedes pasar al siguiente paso.

Instalar Let’s Encrypt SSL

Siempre es una buena idea proteger tu sitio web con Let’s Encrypt SSL. Necesitarás instalar el cliente Certbot para instalar y gestionar el SSL.

Primero, instala el gestor de paquetes Snap con el siguiente comando:

apt install snapd

A continuación, actualiza el paquete Snap a la última versión:

snap install core
snap refresh core

A continuación, instala el paquete certbot con el siguiente comando:

snap install --classic certbot

A continuación, crea un enlace simbólico para el binario de Certbot en la ubicación del sistema:

ln -s /snap/bin/certbot /usr/bin/certbot

A continuación, ejecuta el siguiente comando para descargar e instalar los certificados SSL de Let’s Encrypt:

certbot --apache

Se te pedirá que aceptes las condiciones del servicio y que proporciones tu dirección de correo electrónico válida.

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Enter email address (used for urgent renewal and security notices)
 (Enter 'c' to cancel): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.3-September-21-2022.pdf. You must
agree in order to register with the ACME server. Do you agree?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing, once your first certificate is successfully issued, to
share your email address with the Electronic Frontier Foundation, a founding
partner of the Let's Encrypt project and the non-profit organization that
develops Certbot? We'd like to send you email about our work encrypting the web,
EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Account registered.

A continuación, se te pedirá que selecciones el dominio en el que deseas instalar Let’s Encrypt SSL:

Which names would you like to activate HTTPS for?
We recommend selecting either all domains, or all domains in a VirtualHost/server block.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: friendica.linuxbuz.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter 'c' to cancel): 1

Escribe 1 para seleccionar el dominio predeterminado y pulsa la tecla Intro para instalar SSL en tu sitio web.

Requesting a certificate for friendica.linuxbuz.com

Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/friendica.linuxbuz.com/fullchain.pem
Key is saved at:         /etc/letsencrypt/live/friendica.linuxbuz.com/privkey.pem
This certificate expires on 2023-03-21.
These files will be updated when the certificate renews.
Certbot has set up a scheduled task to automatically renew this certificate in the background.

Deploying certificate
Successfully deployed certificate for friendica.linuxbuz.com to /etc/apache2/sites-available/friendica-le-ssl.conf
Congratulations! You have successfully enabled HTTPS on https://friendica.linuxbuz.com
We were unable to subscribe you the EFF mailing list because your e-mail address appears to be invalid. You can try again later by visiting https://act.eff.org.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
If you like Certbot, please consider supporting our work by:
 * Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
 * Donating to EFF:                    https://eff.org/donate-le
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Accede a la interfaz web de Friendica

Ahora, abre tu navegador web y accede a la interfaz web de Friendica utilizando la URL https://friendica.linuxbuz.com. Serás redirigido a la página de comprobación del sistema:

Asegúrate de que todas las dependencias de PHP están instaladas y haz clic en el botón Siguiente. Deberías ver la siguiente página:

Proporciona el nombre de tu dominio y la ruta de instalación, y pulsa el botón Enviar. Deberías ver la siguiente página:

Proporciona el nombre de tu base de datos, el nombre de usuario y la contraseña, y haz clic en Enviar . Deberías ver la página Configuración del sitio:

Indica el correo electrónico del administrador, el idioma, la zona horaria y pulsa el botón Enviar. Una vez completada la instalación, deberías ver la siguiente página:

Ahora, haz clic en el botón Página de registro. Deberías ver la siguiente página.

Proporciona toda la información requerida y haz clic en el botón Regístrate ahora. Deberías ver la siguiente página con tu nombre de usuario y contraseña.

Ahora, abre tu navegador y accede a la página de inicio de sesión de Friendica utilizando la URL https://friendica.linuxbuz.com. Deberías ver la página de inicio de sesión de Friendica.

Introduce tu nombre de usuario y contraseña y haz clic en el botón Iniciar sesión. Deberías ver el panel de control de Friendica en la siguiente página.

Conclusión

¡Enhorabuena! Has instalado y configurado correctamente la plataforma de red social Friendica en un servidor Ubuntu 22.04. Ahora puedes gestionar tu comunidad de la red social desde la ubicación central. No dudes en preguntarme si tienes alguna duda.

También te podría gustar...