GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo configurar nZEDb Usenet Indexer en Ubuntu 16.04/17.04

Anteriormente discutimos cómo instalar el cliente SABnzbd Usenet en Ubuntu 16.04/17.04. Este tutorial le mostrará cómo configurar su propio indexador nZEDb Usenet en Ubuntu 16.04/17.04 para que pueda encontrar contenido en Usenet convenientemente. nZEDb es un indexador de Usenet gratuito y de código abierto (con licencia GPL). Es una bifurcación de NewzNab plus, que es un indexador de Usenet comercial y de código cerrado.

¿Por qué configurar su propio indexador de Usenet? Hay varias razones:

  • Es gratis.
  • Puedes descargar tantos archivos NZB como quieras.
  • Llamadas API ilimitadas.
  • Los indexadores de Usenet de terceros pueden desaparecer en cualquier momento.
  • No tiene que dar su información personal a nadie cuando utilice su propio indexador de Usenet.

Requisitos

Para seguir este tutorial, necesitará una computadora con Ubuntu 16.04/17.04 que se ejecute con la pila LAMP o LEMP. Si aún no lo ha hecho, consulte uno de los siguientes tutoriales.

  • Cómo instalar LAMP (Apache, MariaDB, PHP7) en Ubuntu 16.04
  • Cómo instalar LEMP (Nginx, MariaDB, PHP7-FPM) en Ubuntu 16.04

Una vez que haya instalado LAMP o LEMP, vuelva aquí y siga leyendo. También debe tener una cuenta de Usenet, cuyos detalles deberán ingresarse en el instalador web de nZEDb. Ahora siga las instrucciones a continuación para instalar nZEDb en Ubuntu 16.04/17.04.

Configuración de MariaDB

Edite el archivo de configuración del servidor MariaDB utilizando el editor de texto nano.

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

Agregue las siguientes líneas en el [mysqld] sección.

# configurations by nZEDb
innodb_file_per_table = 1
max_allowed_packet = 16M
group_concat_max_len = 8192

Guarde y cierre el archivo. Luego reinicie MariaDB para que los cambios surtan efecto.

sudo systemctl restart mysql

Crear una base de datos y un usuario en MariaDB

Inicie sesión en el servidor de la base de datos MariaDB con el siguiente comando:

mysql -u root -p

Luego cree una base de datos para nZEDb. Este tutorial nombra la base de datos nzedb . Puedes usar el nombre que quieras.

create database nzedb;

Cree el usuario de la base de datos y otorgue a este usuario todos los privilegios en nzedb base de datos. Reemplace your-password con su contraseña preferida.

grant all privileges on nzedb.* to 'nzedb'@'localhost' identified by 'your-password';

Otorgue también permiso de archivo a este usuario.

grant file on *.* TO 'nzedb'@'localhost';

Vacíe los privilegios y salga.

flush privileges;

exit;

Decirle a AppArmor que ignore MariaDB

AppArmor es un módulo de seguridad de Linux habilitado de forma predeterminada en Ubuntu. Sin embargo, evita que nZEDb use los comandos LOAD DATA de SQL. Necesitamos decirle a AppArmor que ignore MariaDB usando los siguientes comandos.

sudo apt install apparmor-utils

sudo aa-complain /usr/sbin/mysqld

Es posible que encuentre el siguiente error. Le dice que MariaDB no está restringida por AppArmor, así que vaya al siguiente paso.

ERROR: /etc/apparmor.d/usr.sbin.mysqld contains no profile

Instalación de herramientas multimedia

Ejecute el siguiente comando.

sudo apt-get install unrar p7zip-full mediainfo lame ffmpeg libav-tools

A continuación, ejecute los siguientes comandos para descargar, compilar e instalar yEnc, lo que acelera el procesamiento de mensajes y encabezados durante la indexación.

cd ~
mkdir yenc
cd yenc
wget https://ayera.dl.sourceforge.net/project/yydecode/yydecode/0.2.10/yydecode-0.2.10.tar.gz
tar xzf yydecode-0.2.10.tar.gz
cd yydecode-0.2.10
sudo apt install gcc make
./configure
make
sudo make install
cd ../..
rm -rf ~/yenc

Instale la extensión php-yenc para un procesamiento de encabezados y mensajes aún más rápido.

wget https://github.com/niel/php-yenc/releases/download/v1.3.0/php7.0-yenc_1.3.0_amd64.deb

sudo dpkg -i php7.0-yenc_1.3.0_amd64.deb

Instalando nZEDb

Cree un directorio para nZEDb.

sudo mkdir /var/www/nZEDb/

Establecer usuario del servidor web (www-data ) como propietario y concede permiso de escritura a www-data grupo.

sudo chown www-data:www-data /var/www/nZEDb -R
sudo chmod g+w /var/www/nZEDb/ -R

Agrega tu cuenta de usuario a www-data grupo.

sudo adduser username www-data

Cierre sesión y vuelva a iniciarla para que este cambio surta efecto. Luego ejecute el siguiente comando para cambiar el grupo de inicio de sesión actual a www-data .

newgrp www-data

Usaremos la herramienta git para clonar el repositorio nZEDb de Github. Así que instala git en Ubuntu 16.04/17.04 con el siguiente comando.

sudo apt install git

Cambiar directorio a /var/www/ .

cd /var/www/

Luego clone el repositorio nZEDb.

git clone https://github.com/nZEDb/nZEDb.git

En /var/www/nZEDb/_install/ directorio hay un script de instalación para nZEDb. Necesitamos copiarlo a /var/www/ .

sudo cp /var/www/nZEDb/_install/install.sh /var/www/

Añadir permiso de ejecución.

sudo chmod a+x /var/www/install.sh

Antes de ejecutar este script, necesitamos instalar algunas extensiones de PHP.

sudo apt install php7.0-mcrypt php-imagick php-pear php7.0-curl php7.0-gd php7.0-json php7.0-dev php7.0-gd php7.0-mbstring php7.0-xml

Ahora asegúrate de estar en /var/www/ directorio y ejecute el script de instalación.

cd /var/www/

./install.sh

Durante la instalación, Composer instalará todas las dependencias de PHP necesarias y deberá ingresar su contraseña de sudo para establecer los permisos. Una vez finalizado el script, debemos configurar el servidor web. Puede usar Apache o Nginx.

Configuración del servidor virtual de Apache

Cree un host virtual en /etc/apache2/sites-available/ directorio para nZEDb.

sudo nano /etc/apache2/sites-available/nzedb.conf

Coloque el siguiente texto en el archivo. Reemplazar 12.34.56.78 con la dirección IP de su servidor Ubuntu. También puede usar un nombre de dominio.

<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName 12.34.56.78
    DocumentRoot "/var/www/nZEDb/www"
    LogLevel warn
    ServerSignature Off
    ErrorLog /var/log/apache2/error.log
    <Directory "/var/www/nZEDb/www">
       Options FollowSymLinks
       AllowOverride All
       Require all granted
    </Directory>
    Alias /covers /var/www/nZEDb/resources/covers
</VirtualHost>

Guarde y cierre el archivo. Luego deshabilite el host virtual predeterminado y habilite el nuevo host virtual.

sudo a2dissite 000-default

sudo a2ensite nzedb.conf

Habilitar módulo de reescritura.

sudo a2enmod rewrite

Vuelva a cargar Apache para que los cambios surtan efecto.

sudo systemctl reload apache2

Ahora visite la siguiente URL para acceder al asistente de instalación de nZEDb.

your-server-ip/install

o

your-domain.com/install

Configuración del bloque del servidor Nginx

Cree un nuevo archivo de bloque de servidor en /etc/nginx/conf.d/ directorio para nZEDb.

sudo nano /etc/nginx/conf.d/nzedb.conf

Coloque el siguiente texto en el archivo. Reemplazar 12.34.56.78 con la dirección IP de su servidor Ubuntu. También puede usar un nombre de dominio.

server {
    listen 80;
    server_name 12.34.56.78;

    access_log /var/log/nginx/nzedb-access.log;
    error_log /var/log/nginx/nzedb-error.log;

    root /var/www/nZEDb/www/;
    index index.html index.htm index.php;

    location ~* \.(?:css|eot|gif|gz|ico|inc|jpe?g|js|ogg|oga|ogv|mp4|m4a|mp3|png|svg|ttf|txt|woff|xml)$ {
        expires max;
        add_header Pragma public;
        add_header Cache-Control "public, must-revalidate, proxy-revalidate";
    }

    location / {
        try_files $uri $uri/ @rewrites;
    }

    location ^~ /covers/ {
        # This is where the nZEDb covers folder should be in.
        root /var/www/nZEDb/resources;
    }

    location @rewrites {
        rewrite ^/([^/\.]+)/([^/]+)/([^/]+)/? /index.php?page=$1&id=$2&subpage=$3 last;
        rewrite ^/([^/\.]+)/([^/]+)/?$ /index.php?page=$1&id=$2 last;
        rewrite ^/([^/\.]+)/?$ /index.php?page=$1 last;
    }

    location /admin {
    }

    location /install {
    }

    location ~ \.php$ {
        include /etc/nginx/fastcgi_params;
        fastcgi_param  SCRIPT_FILENAME    $request_filename;

        # Uncomment the following line and comment the .sock line if you want to use TCP.
        #fastcgi_pass 127.0.0.1:9000;
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;

        # The next two lines should go in your fastcgi_params
        fastcgi_index index.php;
    }
}

Guarde y cierre el archivo. A continuación, edite fastcgi_params archivo.

sudo nano /etc/nginx/fastcgi_params

Busque la siguiente línea.

fastcgi_param  REDIRECT_STATUS    200;

Comente esta línea poniendo el símbolo # al principio.

#fastcgi_param  REDIRECT_STATUS    200;

Guarde y cierre el archivo. Luego pruebe la configuración de Nginx.

sudo nginx -t

Si la prueba es exitosa, vuelva a cargar Nginx para que los cambios surtan efecto.

sudo systemctl reload nginx

Ahora visite la siguiente URL para acceder al asistente de instalación de nZEDb.

your-server-ip/install

o

your-domain.com/install

Finalización de la instalación en el navegador web

Haga clic en el botón en la parte inferior. En el primer paso, el asistente de instalación verifica sus extensiones y configuraciones de PHP.

Ya instalamos todas las extensiones de PHP necesarias anteriormente. Para un mejor rendimiento, también necesitamos configurar algunos ajustes de PHP. Si usa Apache y el módulo PHP7, abra el siguiente archivo.

sudo nano /etc/php/7.0/apache2/php.ini

Si usa Nginx y PHP-FPM, abra el siguiente archivo.

sudo nano /etc/php/7.0/fpm/php.ini

Cambiar el valor de max_execution_time de 30 a 120.

max_execution_time = 120

Cambia el valor de memory_limit de 128M a 1024M.

memory_limit = 1024M

Defina una zona horaria como America/New_York .

date.timezone = America/New_York

Guarde y cierre el archivo. Si usa Apache y el módulo PHP7, debe volver a cargar Apache para que los cambios anteriores surtan efecto.

sudo systemctl reload apache2

Si usa Nginx y PHP-FPM, debe volver a cargar el servicio PHP-FPM para que los cambios anteriores surtan efecto.

sudo systemctl reload php7.0-fpm

Ahora vuelva a cargar el asistente nZEDb y todo el estado debería estar bien. Podemos ir al segundo paso para configurar la base de datos. Ingrese los detalles de la base de datos así.

El paso 3 es configurar OpenSSL. necesitamos descargar un paquete de certificados para verificar los certificados de su proveedor de Usenet.

sudo wget -P /etc/ssl/certs/ http://curl.haxx.se/ca/cacert.pem

Luego haz que sea legible para todos los usuarios.

sudo chmod 744 /etc/ssl/certs/cacert.pem

Ahora, en el asistente de configuración de nZEDb, ingrese la ruta del paquete de CA (/etc/ssl/certs/cacert.pem ) y la carpeta del certificado (/etc/ssl/certs/ ). Asegúrate de Verificar par y Verificar host se comprueban. NO marca Permitir certificados autofirmados .

En el paso 4, ingrese los detalles del servidor de su proveedor de Usenet, como giganews.

A continuación, configure una cuenta de administrador para nZEDb.

El último paso es configurar las rutas de los archivos. Puede aceptar valores predeterminados.

Indización del contenido de Usenet

Una vez que se complete la configuración, podrá visitar la página de administración de nZEDb y seguir las instrucciones allí para activar algunos grupos de noticias, obtener los últimos encabezados de los grupos elegidos y actualizar los lanzamientos.

Para obtener los últimos encabezados, ejecute

cd /var/www/nZEDb/misc/update

php update_binaries.php

Luego cree lanzamientos y archivos NZB usando el siguiente comando.

cd /var/www/nZEDb/misc/update/nix/multiprocessing

php releases.php

Importar PreDB a la base de datos MariaDB

Importe volcados diarios de nZEDb desde 2014.

cd /var/www/nZEDb/cli

php data/predb_import_daily_batch.php 0 local true

Obtención de portadas de películas y programas de televisión de IMDB, TMDB

Para mostrar portadas en su sitio nZEDb, debe obtener su propia clave API de IMDB o TMDB. Una vez que obtenga su clave API, vaya al panel de administración de nZEDb> configuración del sitio> editar sitio> Claves API de terceros e ingrese las claves API allí.

Espero que este tutorial te haya ayudado a configurar el indexador nZEDb Usenet en Ubuntu 16.04/17.04.


Ubuntu
  1. Cómo configurar e instalar Squid Proxy Server en Ubuntu 18.04

  2. Cómo instalar Redis en Ubuntu 20.04/18.04

  3. ¡Lanzamiento de Wine 6.15! Cómo instalarlo en Ubuntu 20.04/21.04/18.04

  4. Cómo instalar y configurar mysql 8 en Ubuntu 20.04

  5. Cómo instalar Flatpak en Ubuntu 20.04/18.04

Cómo instalar Redis en Ubuntu 20.04/22.04

Cómo instalar KDE Plasma 5.16 en Ubuntu 16.04/Ubuntu 18.04, 19.04

Cómo instalar el cliente SABnzbd Usenet en Ubuntu 16.04/18.04

Cómo instalar MediaWiki en Ubuntu 16.04/17.04 con Apache o Nginx

Cómo configurar nZEDb Usenet Indexer en Ubuntu 16.04/17.04

Cómo instalar Jenkins en Ubuntu 20.04/18.04