GNU/Linux >> Tutoriales Linux >  >> Cent OS

Instalar y configurar Pure FTPd con Mysql en Centos 8

Pure FTPd es un servidor FTP seguro y de código abierto. Es uno de los servidores FTP más utilizados por su seguridad, facilidad de uso y capacidad para conectarse a una base de datos.

En este artículo instalaremos y configuraremos FTPd en CentOS 8.

Obtenga el repositorio EPEL para CentOS 8:

dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Instale FTPd usando el siguiente comando:

dnf install pure-ftpd

Ahora cree un usuario y un grupo para el servidor FTPd.

nano /etc/pure-ftpd/pure-ftpd.conf

realice los siguientes cambios:

   ChrootEveryone              yes
   MaxClientsNumber            50
   MaxClientsPerIP             2
   VerboseLog                  yes
   AnonymousOnly               no
   NoAnonymous                 yes
   MaxIdleTime                 15
   MySQLConfigFile             /etc/pure-ftpd/pureftpd-mysql.conf
   PAMAuthentication    	no
   UnixAuthentication     	no

Ahora editaremos el archivo de configuración mysql pure-ftpd.

nano /etc/pure-ftpd/pureftpd-mysql.conf

Descomente las siguientes líneas:

# Optional : MySQL server name or IP. Don't define this for unix sockets.

 MYSQLServer     127.0.0.1


# Optional : MySQL port. Don't define this if a local unix socket is used.

 MYSQLPort       3306

actualice los siguientes valores:

MYSQLUser       pureftpd
MYSQLPassword   password
MYSQLDatabase   pureftpd
MYSQLCrypt      md5

Permitir el servicio ftp a través del cortafuegos.

firewall-cmd --permanent --zone=public --add-service=ftp
firewall-cmd --reload

Habilite e inicie el servicio FTPd puro.

systemctl enable pure-ftpd.service
systemctl start pure-ftpd.service
systemctl status pure-ftpd.service

Después de la instalación, lo configuraremos para mariaDB.

Instale MariaDB usando el siguiente comando:

dnf install @mariadb

Inicie y habilite el servicio MariaDB.

systemctl enable --now mariadb
systemctl status mariadb

Ahora estableceremos la contraseña de root para MariaDB y otras comprobaciones de seguridad porque no hay una contraseña de root configurada ahora, use el siguiente comando:

mysql_secure_installation

Un mensaje le pedirá que configure la contraseña de root para MariaDB. Una vez que haga eso, el script le pedirá que elimine el usuario anónimo, restrinja el acceso del usuario raíz y elimine la base de datos de prueba. Debe responder "Y" (sí) a todas las opciones.

Ahora iniciaremos sesión en mariaDB y crearemos una base de datos, una tabla y un usuario y almacenaremos la información correspondiente.

mysql -u root -p

Ahora ingrese los siguientes comandos:

CREATE DATABASE pureftpd;
GRANT ALL ON pureftpd.* to 'pureftpd'@'localhost' IDENTIFIED BY '_password_';
FLUSH PRIVILEGES;
use pureftpd;
CREATE TABLE `users` (
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `User` varchar(32) NOT NULL DEFAULT '',
  `Password` varchar(64) NOT NULL DEFAULT '',
  `Uid` int(3) NOT NULL DEFAULT '500',
  `Gid` int(3) NOT NULL DEFAULT '500',
  `Dir` varchar(255) NOT NULL DEFAULT '',
  `QuotaSize` int(4) NOT NULL DEFAULT '50',
  `Status` enum('0','1') NOT NULL DEFAULT '1',
  `ULBandwidth` int(2) NOT NULL DEFAULT '100',
  `DLBandwidth` int(2) NOT NULL DEFAULT '100',
  `Date` date NOT NULL DEFAULT '0000-00-00',
  `LastModif` varchar(255) NOT NULL DEFAULT '',
  PRIMARY KEY (`ID`),
  UNIQUE KEY `User` (`User`),
  KEY `Uid` (`Uid`),
  KEY `Gid` (`Gid`),
  KEY `Dir` (`Dir`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

quit;

Hemos completado la configuración de ftpd puro. Ahora necesitamos probar nuestra configuración creando nuestra primera cuenta de ftp. Para probar nuestra configuración, primero debemos crear un usuario en el sistema Linux. Después de eso, usaremos el UID y el GID de ese usuario para crear nuestras cuentas ftp virtuales.

useradd ftp1
passwd ftp1

Ahora ejecute el siguiente comando para obtener el UID y el GID de esta cuenta.

cat /etc/passwd | grep ftp1

Según el resultado del comando anterior, el UID y el GID de este usuario son 1000.

Ahora, inicie sesión en mariaDB y cree su cuenta.

mysql -u root -p

Ejecute los siguientes comandos:

use pureftpd;
INSERT INTO `users` (`User`, `Password`, `Uid`, `Gid`, `Dir`, `QuotaSize`,
`Status`, `ULBandwidth`, `DLBandwidth`, `Date`, `LastModif`)
VALUES ('ftpuser1', md5('_password_'), '1000', '1000', '/home/ftp1',
'20', 2, '10', '10', now(), '');
quit

Ahora puede iniciar sesión en la cuenta ftp.

Ahora puede crear archivos y directorios mediante FTP. Crearemos un directorio llamado test usando FTPd puro.

Ahora puede usar Pure FTPd según sus necesidades.


Cent OS
  1. Cómo instalar y configurar Nginx en CentOS 7

  2. Cómo instalar y configurar Redis en CentOS 7

  3. Cómo instalar y configurar GitLab en CentOS 7

  4. Cómo instalar y configurar Nextcloud con Apache en CentOS 7

  5. Cómo instalar y configurar Zabbix en CentOS 7

Cómo instalar y configurar MySQL Cluster en CentOS 7

Cómo instalar y configurar OpenLiteSpeed ​​con PHP 7 en CentOS 7

Cómo instalar y configurar la replicación maestro-esclavo con PostgreSQL 9.6 en CentOS 7

Instale y configure Drupal 8 con Nginx y Lets Encrypt en CentOS 8

Cómo instalar y configurar GitLab CE en CentOS 8

Instalación y configuración de PhpMyAdmin con Nginx en CentOS 7