GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo configurar un sitio web para compartir archivos con Jirafeau en Debian 10

Jirafeau es una sencilla aplicación web de alojamiento y uso compartido de archivos construida en PHP. No requiere una base de datos y proporciona una interfaz de usuario limpia y fácil de usar compatible con protección de contraseña, caducidad programada, descargas únicas (autodestrucción) y vista previa en el navegador, entre otras características útiles.

Este artículo lo guiará a través de la instalación y configuración de Jirafeau en Debian 10 desde cero, con Nginx y PHP-FPM.

Requisitos

  • Un sistema Debian 10 en el que tenga acceso de root.
  • Un nombre de dominio que apunte a su servidor.
  • Se debe establecer la variable de entorno $EDITOR.

Si ha iniciado sesión como usuario sudo no root, use un shell privilegiado para ejecutar los comandos que se muestran en esta guía. Puede iniciar un shell raíz con:

sudo -s

Instalación de Jirafeau

Actualizando el sistema e instalando dependencias

Comience por actualizar su sistema:

apt update
apt upgrade -y
reboot

Una vez que el sistema vuelva a funcionar, instale los paquetes de software necesarios con el siguiente comando:

apt install -y nginx php php-fpm certbot git

Luego, asegúrese de que Nginx y PHP-FPM estén habilitados y ejecutándose:

systemctl enable --now nginx.service php7.3-fpm.service

Obtener certificado SSL

Antes de configurar el servidor web, deberá obtener un certificado SSL para su dominio. Para hacerlo, use la herramienta certbot como se muestra:

certbot certonly --webroot -m [email protected] -d your_domain --agree-tos

Después de ejecutar este comando, primero se le preguntará si desea recibir correos electrónicos de la EFF. Luego, cuando se le solicite ingresar la webroot para su dominio, ingrese /var/www/html:

Obtaining a new certificate
Performing the following challenges:
http-01 challenge for example.com
Input the webroot for example.com: (Enter 'c' to cancel): /var/www/html

Se verificará la propiedad del dominio y su certificado y los archivos relacionados se guardarán en /etc/letsencrypt/live/your_domain/. Ahora podemos configurar Nginx.

Configuración de Nginx

Deshabilite el archivo de configuración predeterminado ya que no es necesario:

rm /etc/nginx/sites-enabled/default

Luego cree un nuevo archivo de configuración:

$EDITOR /etc/nginx/sites-available/your_domain.conf

E ingresa lo siguiente:

server {
    listen 80;
    listen [::]:80;
    server_name your_domain;
    return 301 https://your_domain$request_uri;
}
 server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name your_domain;
    root /var/www/html/jirafeau;
    index index.php;
    ssl on;
    ssl_certificate /etc/letsencrypt/live/your_domain/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/your_domain/privkey.pem;
    location ~ \.php$ {
    fastcgi_split_path_info  ^(.+\.php)(/.+)$;
    fastcgi_index            index.php;
    fastcgi_pass             unix:/var/run/php/php7.3-fpm.sock;
    include                  fastcgi_params;
    fastcgi_param   PATH_INFO       $fastcgi_path_info;
    fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}

NOTA: Con la configuración proporcionada, todas las solicitudes HTTP se redirigirán a HTTPS.

A continuación, habilite el nuevo archivo de configuración creando un enlace simbólico en el directorio /etc/nginx/sites-enabled/:

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

Compruebe si hay errores de configuración con:

nginx -t

Luego cárguelo emitiendo el comando:

systemctl reload nginx.service

Instalando Jirafeau

Descarga Jirafeau desde su repositorio Gitlab:

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

Cree un directorio de datos para Jirafeau. Este directorio no debe ser accesible a través de su servidor web (es decir, debe residir fuera del directorio raíz web, que es /var/www/html con nuestra configuración). Usaremos /var/data/jirafeau.

mkdir -p /var/data/jirafeau

Otorgue al usuario de Nginx la propiedad de los directorios de configuración y datos utilizados por Jirafeau. De manera óptima, debe ajustar los permisos de archivo una vez que se complete la configuración.

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

Luego abra su navegador web y vaya a https://your_domain/install.php. Primero se le pedirá que elija una contraseña para la interfaz de administración. Ingrese una contraseña segura y continúe con el siguiente paso. Para la dirección base, ingresa https://tu_dominio/ y /var/data/jirafeau/ para el directorio de datos. Continúe con el siguiente paso, durante el cual el instalador creará un archivo de configuración básico para Jirafeau.

Configuración de Jirafeau

El script de instalación incorporado solo configura lo esencial. Para una configuración más completa, abra el archivo correspondiente:

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

Reemplace el nombre de la organización predeterminado y configure las claves de persona de contacto y título. Los valores de la organización y la persona de contacto se mostrarán en sus términos de servicio (https://su_dominio/tos.php).

  'organisation' => 'Your Organisation/Company',
  'contactperson' => 'Your Name <[email protected]>',
  'title' => 'Title of your choice',

De forma predeterminada, el acceso a la función de carga no está restringido. Puede establecer una o más contraseñas para restringir este acceso. Utilice la sintaxis que se muestra:

  'upload_password' =>
  array (
          'password1',
          'password2',
  ),

Al cargar un archivo, hay diferentes límites de tiempo disponibles en el formulario de carga. Jirafeau por defecto permite límites de tiempo de hasta un mes, después del cual se eliminan los archivos cargados. Para cambiar los períodos disponibles, modifique la matriz de disponibilidades. Por ejemplo, para permitir todos los períodos de vencimiento, use lo siguiente:

  array (
    'minute' => true,
    'hour' => true,
    'day' => true,
    'week' => true,
    'month' => true,
    'quarter' => true,
    'year' => true,
    'none' => true,
  ),

Una vez que esté satisfecho con su configuración, no se requiere ninguna acción para aplicar los cambios.

Su sitio web de alojamiento de archivos ahora está listo para usar. Se puede acceder a la interfaz de administración en https://your_domain/admin.php


Debian
  1. Cómo instalar Phorum con Nginx en Debian 9

  2. Cómo configurar la replicación de transmisión de PostgreSQL con ranuras de replicación en Debian 10

  3. Cómo instalar Ghost en Debian con Nginx

  4. Cómo instalar FuelPHP con Nginx en un VPS Debian 8

  5. Cómo instalar WonderCMS con Nginx en Debian 11

Cómo configurar el certificado Let's Encrypt SSL con Nginx en Debian 10 / Debian 9

Cómo configurar ModSecurity con Nginx en Debian/Ubuntu

Cómo instalar phpMyAdmin con Nginx en Debian 11 Bullseye

Cómo instalar phpMyAdmin con Nginx en Debian 11

Cómo instalar Nginx con PHP-FPM en Debian 11

Cómo instalar Nginx en Debian 10