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.