Tu propio wetransfer con Jirafeau

JIRAFEAU

En esta ocasión vamos hablar de como crear tu propio wetransfer con jirafeau en Debian 11, un software opensource muy potente y con una API básica que te permitirá automatizar muchas tareas.

Lo primero es actualizar tu sistema

apt-get update

apt-get upgrade

init 6

Una vez actualizado instalaremos el siguiente software 

apt-get  install nginx php php-fpm certbot git

Y habilitaremos los servicios de nginx y pfp-fpm

systemctl enable –now nginx.service php7.4-fpm.service

A continuación solicitaremos el certificado SSL con certbot

certbot certonly –webroot -m tuemail@example.com -d tudominio –agree-tos

Cuando te pida el webroot introducimos /var/www/html

Si todo sale bien encontraras los archivos en /etc/letsencrypt/live/tudominio/

Hecho esto configuraremos nginx borrando el sitio por defecto

rm /etc/nginx/sites-enabled/default

Y ahora creamos nuestro sitio

nano /etc/nginx/sites-available/tudominio.conf

Pegando el siguiente contenido, claro está, sustituyendo el nombre de tu dominio

server {
listen 80;
listen [::]:80;
server_name tudominio.com;
return 301 https://tudominio.com$request_uri;
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name tudominio.com;
root /var/www/html/jirafeau;
index index.php;

ssl_certificate /etc/letsencrypt/live/tudominio.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/tudominio.com/privkey.pem;
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
include fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}

Ahora creamos el enlace simbólico para activarlo

ln -s /etc/nginx/sites-available/tudominio.conf /etc/nginx/sites-enabled/

Comprobamos que no haya ningún error en la configuración

nginx -t

Y lo recargamos

systemctl reload nginx.service

Continuaremos con la descarga e instalación de Jirafeau, fijaros que creamos primero el directorio que le dimos en el fichero de configuración.

mkdir /var/www/html/jirafeau
git clone https://gitlab.com/jirafeau/Jirafeau.git /var/www/html/jirafeau

Además crearemos el directorio donde almacenará los ficheros fuera de nuestro webroot para que no sea accesible desde el servidor web, por ejemplo, /var/data/jirafeau

mkdir -p /var/data/jirafeau

Y hacemos dueño a www-data tanto de este directorio como del directorio donde almacena la configuración.

chown -R www-data:www-data /var/www/html/jirafeau/lib /var/data/jirafeau

Ahora ya podrás acceder desde tu navegador por https://tudominio.com, teniendo que meter primero la clave que quieras para la administración vía web. En el siguiente paso introduce la dirección base, es decir, https://tudominio.com/ y el directorio donde estarán los datos /var/data/jirafeau/. Continuamos y tras ello ya funcionará con las opciones básicas que ha creado en el fichero

/var/www/html/jirafeau/lib/config.local.php

¿Que opciones podemos utilizar aquí?

Si editamos el fichero 

cat /var/www/html/jirafeau/lib/config.original.php

Podremos ver todas las alternativas disponibles que podemos copiar y pegar en nuestro fichero de producción. Está en Inglés pero es muy fácil e intuitiva cada opción. Por ejemplo, quieres que para poder subir ficheros necesites una password, solo tienes que ir a tu fichero de configuración y añadir la password de la siguiente manera:

‘upload_password’ =>
array (
‘password’
),

Puedes añadir las password que quieras como te indica en el fichero comentado. La opciones son muchas y muy completas.

¿Y la API?

Podéis encontrar la info en https://tudominio.com/script.php, donde incluso tienes el un script en bash. Basta con copiar dicho contenido en un fichero .sh como por ejemplo, testapi.sh y darle permiso de ejecución chmod +x testapi.sh, lo ejecutamos:

./testapi.sh

Y nos devolverá la ayuda

jirafeau ayuda api

OJO!!!! Faltaría un detalle, editamos el fichero testapi.sh y debemos añadir https://  en JIRAFEAU_URL delante de nuestro dominio.

POR ÚLTIMO

Certbot ya mete en esta versión el cron para autorenovar, pero nos fallará puesto que en la petición del certificado le dijimos que nuestro webroot es /var/www/html/ y lo hemos instalado en /var/www/html/jirafeau/ , en este caso tenemos que editar el fichero:

nano /etc/letsencrypt/renewal/tudominio.conf

y en la sección de [[webroot_map]] añadimos el directorio quedando así:

tudominio.com = /var/www/html/jirafeau

Guardamos y ya no fallará el autorenew. Podemos comprobarlo con:

certbot renew –dry-run

Ya sabéis cualquier duda, escribir un comentario.

TL.

Preguntas Frecuentes

Jirafeau es una aplicación web de código abierto que facilita el intercambio de archivos de manera sencilla. Entre sus características destacan:

  • Carga y compartición de archivos en un solo clic: Permite subir un archivo y obtener un enlace único para compartirlo.

  • Sin necesidad de base de datos: Funciona sin requerir una base de datos, lo que simplifica su instalación y mantenimiento.

  • Protección con contraseña: Ofrece la opción de proteger tanto la carga como la descarga de archivos mediante contraseñas.

  • Configuración de expiración de enlaces: Permite establecer un tiempo de expiración para los enlaces de descarga, e incluso la opción de autodestrucción después de una única descarga.

  • Soporte para archivos de gran tamaño: Gracias a la API de archivos de HTML5, Jirafeau puede manejar la carga de archivos grandes sin las limitaciones habituales de PHP.

  • Control total: Al instalarlo en tu propio servidor, tienes control absoluto sobre los archivos y su privacidad.
  • Sin límites comerciales: No hay restricciones de tamaño o cantidad de archivos, solo las que tú definas.
  • Mayor privacidad: No dependes de terceros que puedan analizar o almacenar tus archivos.
  • Interfaz sencilla: Permite compartir archivos con un solo enlace sin necesidad de registros.

Sí, puedes desplegarlo en VPS o servicios en la nube como AWS, DigitalOcean, o cualquier otro que soporte PHP.

Sí, al ser de código abierto, puedes modificar el diseño y la apariencia para adaptarlo a tus necesidades.

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Últimos artículos

artículo uds enterprise 4.0

UDS Enterprise 4.0

UDSENTERPRISE 4.0 VDI FLEXIBLE Y EFICIENTE En 2019 ya os hablamos sobre UDS Enterprise 2.2,

Más visitados