Servidor de Email –; Parte 2 –; MariaDB
Esta es la segunda parte del proceso de crear el servidor de correo en un CentOS 8. Si llegaste aquí por accidente, Usted debe leer primero la publicación anterior en el Instalación de paquetes
Por qué usar MySQL/MariaDB?
En primer lugar debo aclarar que yo prefiero usar PostgreSQL en vez de MySQL/MariaDB por muchas razones, Sin embargo, Hay uno que pesa contra el uso de PostgreSQL en un servidor unificado con WordPress y servicios de correo electrónico es el simple hecho de que WP no tiene soporte nativo de PostgreSQL. Puede tener más información sobre este tema en la documentación oficial de WordPress Este enlace. Cómo estoy basando en la experiencia personal para redactar este documento y también para pequeños servicios, Estoy usando el más común y más accesible. Si el uso de PostgreSQL es de su interés, Usted puede consultar este documento más adelante donde le mostraré cómo migrar de MariaDB para PostgreSQL.
Configurar MySQL/MariaDB
Asumiendo que usted está siguiendo los pasos de este manual, Estarás con una instalación de MariaDB aún no configurado. Si ya tienes una instalación funcional, Usted puede saltar a la siguiente paso.
Inicialmente bloqueo todos y cada uno de los accesos a la base de datos de origen externa. Sólo de conexiones en el servidor sí mismo es que se puede hacer para la seguridad. Para eso abrimos el archivo /etc/my.cnf. d/server.cnf y añadimos las líneas a continuación justo después de la entrada [mysqld] existentes.
[mysqld]
# Diretorio para o arquivo errmsg.sys no idioma que você desejar usar
language=/usr/share/mysql/portuguese
# Ativa o logging por default para ajudar a encontrar problemas
general-log
# Indica que o log será enviado para uma tabela ao invés de ser escrito em um arquivo. Útil para quem não quer ficar conectando no servidor para analisar os logs. Você poderá utilizar o PHPMyAdmin para fazer as consultas
log_output=TABLE
# Habilita o relatório de consultas lentas
slow_query_log
# Tempo mínimo para considerar uma consulta lenta (em segundos)
long_query_time=5.0
# Indica para desativar o mecanismo de rede e somente aceitar conexões através do arquivo de socket local
skip-networking
bind-address = 127.0.0.1
Si la intención es permitir conexiones remotas a MariaDB, Debe ejecutar los siguientes comandos para habilitar las conexiones remotas.
$ firewall-cmd --add-port=3306/tcp
$ firewall-cmd --permanent --add-port=3306/tcp
Reinicie el servicio para que los cambios surtan efecto
$ sudo systemctl stop mysqld && sudo systemctl start mysqld
Crear usuario para Postfix y las tablas necesarias
Así podemos utilizar el Postfix con MariaDB tenemos que crear un usuario para el acceso a y de él las tablas necesarias para gestionar cuentas y dominios virtuales.
Primero vamos a crear la base de datos.
NOTA: Si no fue hecho ningún cambio en la instalación de MariaDB que puede conectar sin el uso de contraseña para el usuario ‘;root’;@’;localhost’;, de lo contrario, Utilice la opción -p para solicitar la contraseña.
$ mysql -u root
A continuación vamos a crear el usuario y tablas. Voy a utilizar mypostfixdb como el nombre de la base de datos y mypostfixdbuser para el nombre de usuario. Cambiar la información de acuerdo a lo que usted quiere, principalmente mypostfixdbuser_password. Esta información se utilizará en la configuración de Postfix archivos que utilizan tablas creadas.
MariaDB> CREATE DATABASE mypostfixdb;
MariaDB> GRANT SELECT, INSERT, UPDATE, DELETE ON mypostfixdb.* TO 'mypostfixdbuser'@'localhost' IDENTIFIED BY 'mypostfixdbuser_password';
MariaDB> GRANT SELECT, INSERT, UPDATE, DELETE ON mypostfixdb.* TO 'mypostfixdbuser'@'localhost.localdomain' IDENTIFIED BY 'mypostfixdbuser_password';
MariaDB> FLUSH PRIVILEGES;
MariaDB> USE mypostfixdb;
MariaDB> CREATE TABLE virtual_domains (id int(11) NOT NULL AUTO_INCREMENT, name VARCHAR(100) NOT NULL, PRIMARY KEY(id)) ENGINE=InnoDB DEFAULT CHARSET=utf8;
MariaDB> CREATE TABLE virtual_users(id int(11) NOT NULL AUTO_INCREMENT, vdomain_id int(11) NOT NULL, password VARCHAR(100) NOT NULL, email VARCHAR(100) NOT NULL, PRIMARY KEY (id), UNIQUE KEY email(email), FOREIGN KEY (vdomain_id) REFERENCES virtual_domains(id) ON DELETE CASCADE) ENGINE=InnoDB DEFAULT CHARSET=utf8;
MariaDB> CREATE TABLE virtual_aliases (id int(11) NOT NULL AUTO_INCREMENT, vdomain_id int(11) NOT NULL, source VARCHAR(100) NOT NULL, PRIMARY KEY (id),FOREIGN KEY (vdomain_id) REFERENCES virtual_domains(id) ON DELETE CASCADE) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Estas tablas almacenan las cuentas y dominios virtuales y se accederá por Palomar (Según la propuesta de este tutorial).
Y eso es todo.
Ahora estamos listos para configurar el Palomar.
3 Respuestas
[…;] Con todo instalado podemos iniciar la configuración. Empecemos con MariaDB. […;]
[…;] Parte 2 –; Configuración de MariaDB […;]
[…;] Parte 2 –; Configuración de MariaDB […;]