Voulant installer un serveur mail sur mon dédié fraîchement Archlinuquisé ( \o/ ), j'ai installé postfix, dovecot et enfin postfixAdmin.
Je peux envoyer des mails, me connecter en imap ou pop3 depuis mon client de messagerie ; tout va bien me direz-vous !
Et bien non !
Voulant vérifier que tout fonctionne comme attendu, j'ai créé un nouveau compte. Il ne fonctionnait pas. J'ai vidé la base postfix et je l'ai repeuplé avec postfixAdmin. C'est la que j'ai compris que postfix et postfixAdmin ne se comprenaient pas ! Et finalement, plus rien ne marchait à part l'envoi d'email avec Apache(PHP).
En fait je ne comprends pas du tout comment les 3 gugus (postfix dovecot & postfixadmin) peuvent communiquer : postfix encode le user password avec ENCRYPT de mysql, dovecot & postfixadmin avec CRAM-MD5, ils vont chercher dans des tables différentes... je suis un peu perdu :/
Objectif :
Utilisation de compte mails virtuels uniquement, via MySQL.
Administration des comptes avec PostfixAdmin.
Envoyer des mails via le serveur postfix.
Pouvoir se connecter en TLS://SMTP, POP3(S) et IMAP(S) depuis un client mail.
Voici la situation actuelle :
Aucune erreur au démarrage des démons postfix & dovecot.
La connexion aux différents services fonctionne pour le compte contact@domaine.tld
Si je créé une nouvelle entrée dans la base, pour la table users (utilisée pour l'authentification par postfix si j'ai bien compris) et une dans la table mailbox (via postfixAdmin) : je ne peux rien faire avec cette adresse.
J'ai tenté d'envoyer un mail à cette adresse, et le répertoire n'est pas créé dans /home/vmailer/domaine.tld. Impossible de se connecter en pop3 sur cette adresse :
log a écrit :dovecot: auth-worker(31481): mysql(localhost): Connected to database postfix
dovecot: pop3-login: Login: user=<test@domaine.tld>, method=PLAIN, rip=127.0.0.1, lip=127.0.0.1, mpid=31484, secured, session=<YCgY6wPEOQB/AAAB>
dovecot: pop3(test@domaine.tld): Error: user test@domaine.tld: Initialization failed: Initializing mail storage from mail_location setting failed: Ambiguous mail location setting, don't know what to do with it: domaine.tld/test@domaine.tld/ (try prefixing it with mbox: or maildir:)
dovecot: pop3(test@domaine.tld): Error: Invalid user settings. Refer to server log for more information.
Toute la config :
postconf -n
Code : Tout sélectionner
alias_database = $alias_maps
alias_maps = hash:/etc/postfix/aliases
broken_sasl_auth_clients = yes
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/lib/postfix
data_directory = /var/lib/postfix
debug_peer_level = 2
debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5
html_directory = no
inet_interfaces = all
inet_protocols = ipv4
mail_owner = postfix
mailq_path = /usr/bin/mailq
manpage_directory = /usr/share/man
mydestination = localhost
mydomain = domaine.tld
myhostname = mail.domaine.tld
mynetworks_style = host
myorigin = $myhostname
newaliases_path = /usr/bin/newaliases
queue_directory = /var/spool/postfix
readme_directory = no
recipient_delimiter = +
relay_domains = localhost
sample_directory = /etc/postfix/sample
sendmail_path = /usr/sbin/sendmail
setgid_group = postdrop
smtpd_banner = $myhostname ESMTP $mail_name (Archlinux)
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $mydomain
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_sasl_tls_security_options = $smtpd_sasl_security_options
smtpd_sasl_type = dovecot
smtpd_tls_auth_only = no
smtpd_tls_cert_file = /etc/ssl/certs/server.crt
smtpd_tls_key_file = /etc/ssl/private/server.key
smtpd_tls_loglevel = 1
smtpd_tls_security_level = may
unknown_local_recipient_reject_code = 550
virtual_alias_maps = hash:/etc/postfix/virtual_alias, mysql:/etc/postfix/mysql_virtual_forwards.cf
virtual_gid_maps = static:5003
virtual_mailbox_base = /home/vmailer
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains.cf
virtual_mailbox_limit = 5120000000
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailboxes.cf
virtual_minimum_uid = 5003
virtual_uid_maps = static:5003
Code : Tout sélectionner
user = postfixuser
password = *
hosts = localhost
dbname = postfix
table = domains
select_field = 'virtual'
where_field = domain
Code : Tout sélectionner
user = postfixuser
password = *
hosts = localhost
dbname = postfix
table = forwardings
select_field = destination
where_field = source
Code : Tout sélectionner
user = postfixuser
password = *
hosts = localhost
dbname = postfix
table = username
select_field = maildir
where_field = username
Code : Tout sélectionner
auth_mechanisms = PLAIN CRAM-MD5
auth_verbose = yes
base_dir = /var/run/dovecot/
mail_location = maildir:/home/vmailer/%d/%u
passdb {
args = /etc/dovecot/dovecot-sql.conf
driver = sql
}
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0660
user = postfix
}
}
ssl_cert = </etc/ssl/certs/server.crt
ssl_key = </etc/ssl/private/server.key
userdb {
args = /etc/dovecot/dovecot-sql.conf
driver = sql
}
Code : Tout sélectionner
driver = mysql
connect = host=localhost dbname=postfix user=postfixuser password=*
default_pass_scheme = CRAM-MD5
password_query = SELECT password FROM mailbox WHERE username = '%u' AND active = '1'
user_query = SELECT maildir AS mail, 5003 AS uid, 5003 AS gid, "/home/vmailer" AS home FROM mailbox WHERE username = '%u' AND active = '1'
Code : Tout sélectionner
<?php
$CONF['configured'] = true;
$CONF['setup_password'] = '****************************************************';
$CONF['postfix_admin_url'] = 'http://xxx.xxx.xxx.xxx/postfixAdmin';
$CONF['postfix_admin_path'] = dirname(__FILE__);
$CONF['default_language'] = 'fr';
$CONF['database_type'] = 'mysqli';
$CONF['database_host'] = 'localhost';
$CONF['database_user'] = 'postfixuser';
$CONF['database_password'] = '*';
$CONF['database_name'] = 'postfix';
$CONF['database_prefix'] = '';
$CONF['database_tables'] = array (
'admin' => 'admin',
'alias' => 'alias',
'alias_domain' => 'alias_domain',
'config' => 'config',
'domain' => 'domain',
'domain_admins' => 'domain_admins',
'fetchmail' => 'fetchmail',
'log' => 'log',
'mailbox' => 'mailbox',
'vacation' => 'vacation',
'vacation_notification' => 'vacation_notification',
'quota' => 'quota',
'quota2' => 'quota2',
);
$CONF['admin_email'] = 'postmaster@domaine.tld';
$CONF['smtp_server'] = 'www.domaine.tld';
$CONF['smtp_port'] = '25';
$CONF['encrypt'] = 'dovecot:CRAM-MD5';
$CONF['authlib_default_flavor'] = 'md5raw';
$CONF['dovecotpw'] = "/usr/bin/doveadm pw";
$CONF['min_password_length'] = 5;
$CONF['generate_password'] = 'NO';
$CONF['show_password'] = 'NO';
$CONF['page_size'] = '10';
$CONF['default_aliases'] = array (
'abuse' => 'abuse@domaine.tld',
'hostmaster' => 'hostmaster@domaine.tld',
'postmaster' => 'postmaster@domaine.tld',
'webmaster' => 'webmaster@domaine.tld'
);
$CONF['domain_path'] = 'YES';
$CONF['domain_in_mailbox'] = 'YES';
$CONF['maildir_name_hook'] = 'NO';
$CONF['aliases'] = '10';
$CONF['mailboxes'] = '10';
$CONF['maxquota'] = '5120';
$CONF['quota'] = 'NO';
$CONF['quota_multiplier'] = '1024000';
$CONF['transport'] = 'NO';
$CONF['transport_options'] = array (
'virtual', // for virtual accounts
'local', // for system accounts
'relay' // for backup mx
);
$CONF['transport_default'] = 'virtual';
$CONF['vacation'] = 'NO';
$CONF['vacation_domain'] = 'autoreply.change-this-to-your.domain.tld';
$CONF['vacation_control'] ='YES';
$CONF['vacation_control_admin'] = 'YES';
$CONF['alias_control'] = 'NO';
$CONF['alias_control_admin'] = 'NO';
$CONF['special_alias_control'] = 'NO';
$CONF['alias_goto_limit'] = '0';
$CONF['alias_domain'] = 'YES';
$CONF['backup'] = 'YES';
$CONF['sendmail'] = 'YES';
$CONF['logging'] = 'YES';
$CONF['fetchmail'] = 'YES';
$CONF['fetchmail_extra_options'] = 'NO';
$CONF['show_header_text'] = 'NO';
$CONF['header_text'] = ':: Postfix Admin ::';
$CONF['user_footer_link'] = "http://change-this-to-your.domain.tld/main";
$CONF['show_footer_text'] = 'YES';
$CONF['footer_text'] = 'Return to change-this-to-your.domain.tld';
$CONF['footer_link'] = 'http://change-this-to-your.domain.tld';
$CONF['welcome_text'] = <<<EOM
Hi,
Welcome to your new account.
EOM;
$CONF['emailcheck_resolve_domain']='YES';
$CONF['show_status']='NO';
$CONF['show_status_key']='NO';
$CONF['show_status_text']=' ';
$CONF['show_undeliverable']='NO';
$CONF['show_undeliverable_color']='tomato';
$CONF['show_undeliverable_exceptions']=array("unixmail.domain.ext","exchangeserver.domain.ext","gmail.com");
$CONF['show_popimap']='NO';
$CONF['show_popimap_color']='darkgrey';
$CONF['show_custom_domains']=array("subdomain.domain.ext","domain2.ext");
$CONF['show_custom_colors']=array("lightgreen","lightblue");
$CONF['recipient_delimiter'] = "+";
$CONF['create_mailbox_subdirs_prefix']='INBOX.';
$CONF['used_quotas'] = 'NO';
$CONF['new_quota_table'] = 'NO';
$CONF['theme_logo'] = 'images/logo-default.png';
$CONF['theme_css'] = 'css/default.css';
$CONF['xmlrpc_enabled'] = false;
if (file_exists(dirname(__FILE__) . '/config.local.php')) {
include(dirname(__FILE__) . '/config.local.php');
}
Code : Tout sélectionner
-- phpMyAdmin SQL Dump
-- version 3.5.1
-- http://www.phpmyadmin.net
--
-- Client: localhost
-- Généré le: Mer 04 Juillet 2012 à 18:30
-- Version du serveur: 5.5.25-log
-- Version de PHP: 5.4.4
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- Base de données: `postfix`
--
-- --------------------------------------------------------
--
-- Structure de la table `admin`
--
CREATE TABLE IF NOT EXISTS `admin` (
`username` varchar(255) NOT NULL,
`password` varchar(255) NOT NULL,
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`modified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`active` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`username`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Postfix Admin - Virtual Admins';
--
-- Contenu de la table `admin`
--
INSERT INTO `admin` (`username`, `password`, `created`, `modified`, `active`) VALUES
('postmaster@domaine.tld', 'bd500fb8ed26089fa7a54aedf9712dcd0d9b6cbf9a2739e9dc9f4f5a38a809fe', '2012-07-02 20:55:22', '2012-07-02 20:55:22', 1);
-- --------------------------------------------------------
--
-- Structure de la table `alias`
--
CREATE TABLE IF NOT EXISTS `alias` (
`address` varchar(255) NOT NULL,
`goto` text NOT NULL,
`domain` varchar(255) NOT NULL,
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`modified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`active` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`address`),
KEY `domain` (`domain`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Postfix Admin - Virtual Aliases';
--
-- Contenu de la table `alias`
--
INSERT INTO `alias` (`address`, `goto`, `domain`, `created`, `modified`, `active`) VALUES
('contact@domaine.tld', 'contact@domaine.tld', 'domaine.tld', '2012-07-02 20:56:13', '2012-07-02 20:56:13', 1);
-- --------------------------------------------------------
--
-- Structure de la table `alias_domain`
--
CREATE TABLE IF NOT EXISTS `alias_domain` (
`alias_domain` varchar(255) NOT NULL,
`target_domain` varchar(255) NOT NULL,
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`modified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`active` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`alias_domain`),
KEY `active` (`active`),
KEY `target_domain` (`target_domain`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Postfix Admin - Domain Aliases';
-- --------------------------------------------------------
--
-- Structure de la table `config`
--
CREATE TABLE IF NOT EXISTS `config` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) CHARACTER SET latin1 NOT NULL DEFAULT '',
`value` varchar(20) CHARACTER SET latin1 NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='PostfixAdmin settings' AUTO_INCREMENT=2 ;
--
-- Contenu de la table `config`
--
INSERT INTO `config` (`id`, `name`, `value`) VALUES
(1, 'version', '740');
-- --------------------------------------------------------
--
-- Structure de la table `domain`
--
CREATE TABLE IF NOT EXISTS `domain` (
`domain` varchar(255) NOT NULL,
`description` varchar(255) CHARACTER SET utf8 NOT NULL,
`aliases` int(10) NOT NULL DEFAULT '0',
`mailboxes` int(10) NOT NULL DEFAULT '0',
`maxquota` bigint(20) NOT NULL DEFAULT '0',
`quota` bigint(20) NOT NULL DEFAULT '0',
`transport` varchar(255) NOT NULL,
`backupmx` tinyint(1) NOT NULL DEFAULT '0',
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`modified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`active` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`domain`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Postfix Admin - Virtual Domains';
--
-- Contenu de la table `domain`
--
INSERT INTO `domain` (`domain`, `description`, `aliases`, `mailboxes`, `maxquota`, `quota`, `transport`, `backupmx`, `created`, `modified`, `active`) VALUES
('ALL', '', 0, 0, 0, 0, '', 0, '0000-00-00 00:00:00', '0000-00-00 00:00:00', 1),
('domaine.tld', '', 0, 0, 5120, 0, 'virtual', 0, '2012-07-02 20:55:52', '2012-07-02 20:55:52', 1);
-- --------------------------------------------------------
--
-- Structure de la table `domains`
--
CREATE TABLE IF NOT EXISTS `domains` (
`domain` varchar(50) NOT NULL DEFAULT '',
PRIMARY KEY (`domain`),
UNIQUE KEY `domain` (`domain`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Structure de la table `domain_admins`
--
CREATE TABLE IF NOT EXISTS `domain_admins` (
`username` varchar(255) NOT NULL,
`domain` varchar(255) NOT NULL,
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`active` tinyint(1) NOT NULL DEFAULT '1',
KEY `username` (`username`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Postfix Admin - Domain Admins';
--
-- Contenu de la table `domain_admins`
--
INSERT INTO `domain_admins` (`username`, `domain`, `created`, `active`) VALUES
('postmaster@domaine.tld', 'ALL', '2012-07-02 20:55:22', 1);
-- --------------------------------------------------------
--
-- Structure de la table `fetchmail`
--
CREATE TABLE IF NOT EXISTS `fetchmail` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`mailbox` varchar(255) NOT NULL,
`src_server` varchar(255) NOT NULL,
`src_auth` enum('password','kerberos_v5','kerberos','kerberos_v4','gssapi','cram-md5','otp','ntlm','msn','ssh','any') CHARACTER SET utf8 DEFAULT NULL,
`src_user` varchar(255) NOT NULL,
`src_password` varchar(255) NOT NULL,
`src_folder` varchar(255) NOT NULL,
`poll_time` int(11) unsigned NOT NULL DEFAULT '10',
`fetchall` tinyint(1) unsigned NOT NULL DEFAULT '0',
`keep` tinyint(1) unsigned NOT NULL DEFAULT '0',
`protocol` enum('POP3','IMAP','POP2','ETRN','AUTO') CHARACTER SET utf8 DEFAULT NULL,
`usessl` tinyint(1) unsigned NOT NULL DEFAULT '0',
`extra_options` text,
`returned_text` text,
`mda` varchar(255) NOT NULL,
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
-- --------------------------------------------------------
--
-- Structure de la table `forwardings`
--
CREATE TABLE IF NOT EXISTS `forwardings` (
`source` varchar(80) NOT NULL DEFAULT '',
`destination` text NOT NULL,
PRIMARY KEY (`source`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Structure de la table `log`
--
CREATE TABLE IF NOT EXISTS `log` (
`timestamp` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`username` varchar(255) NOT NULL,
`domain` varchar(255) NOT NULL,
`action` varchar(255) NOT NULL,
`data` text NOT NULL,
KEY `timestamp` (`timestamp`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Postfix Admin - Log';
--
-- Contenu de la table `log`
--
INSERT INTO `log` (`timestamp`, `username`, `domain`, `action`, `data`) VALUES
('2012-07-02 20:56:13', 'postmaster@domaine.tld (82.233.72.201)', 'domaine.tld', 'create_mailbox', 'contact@domaine.tld');
-- --------------------------------------------------------
--
-- Structure de la table `mailbox`
--
CREATE TABLE IF NOT EXISTS `mailbox` (
`username` varchar(255) NOT NULL,
`password` varchar(255) NOT NULL,
`name` varchar(255) CHARACTER SET utf8 NOT NULL,
`maildir` varchar(255) NOT NULL,
`quota` bigint(20) NOT NULL DEFAULT '0',
`local_part` varchar(255) NOT NULL,
`domain` varchar(255) NOT NULL,
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`modified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`active` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`username`),
KEY `domain` (`domain`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Postfix Admin - Virtual Mailboxes';
--
-- Contenu de la table `mailbox`
--
INSERT INTO `mailbox` (`username`, `password`, `name`, `maildir`, `quota`, `local_part`, `domain`, `created`, `modified`, `active`) VALUES
('contact@domaine.tld', '598e120cc4ce947fb33cca0d735bb7094151a9673e00cc91b1df7622a9d1dfa8', 'Equipe LePireDuNet.fr', 'domaine.tld/contact@domaine.tld/', 0, 'contact', 'domaine.tld', '2012-07-02 20:56:13', '2012-07-02 20:56:13', 1);
-- --------------------------------------------------------
--
-- Structure de la table `quota`
--
CREATE TABLE IF NOT EXISTS `quota` (
`username` varchar(255) CHARACTER SET latin1 NOT NULL,
`path` varchar(100) CHARACTER SET latin1 NOT NULL,
`current` bigint(20) DEFAULT NULL,
PRIMARY KEY (`username`,`path`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Structure de la table `quota2`
--
CREATE TABLE IF NOT EXISTS `quota2` (
`username` varchar(100) CHARACTER SET latin1 NOT NULL,
`bytes` bigint(20) NOT NULL DEFAULT '0',
`messages` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`username`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Structure de la table `users`
--
CREATE TABLE IF NOT EXISTS `users` (
`email` varchar(80) NOT NULL DEFAULT '',
`password` varchar(20) NOT NULL DEFAULT '',
`quota` varchar(20) NOT NULL DEFAULT '20971520',
`domain` varchar(255) NOT NULL DEFAULT '',
UNIQUE KEY `email` (`email`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
--
-- Contenu de la table `users`
--
INSERT INTO `users` (`email`, `password`, `quota`, `domain`) VALUES
('contact@domaine.tld', 'ZHYXCw3jzEJVY', '20971520', 'domaine.tld');
-- --------------------------------------------------------
--
-- Structure de la table `vacation`
--
CREATE TABLE IF NOT EXISTS `vacation` (
`email` varchar(255) NOT NULL,
`subject` varchar(255) CHARACTER SET utf8 NOT NULL,
`body` text CHARACTER SET utf8 NOT NULL,
`cache` text NOT NULL,
`domain` varchar(255) NOT NULL,
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`active` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`email`),
KEY `email` (`email`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='Postfix Admin - Virtual Vacation';
-- --------------------------------------------------------
--
-- Structure de la table `vacation_notification`
--
CREATE TABLE IF NOT EXISTS `vacation_notification` (
`on_vacation` varchar(255) CHARACTER SET latin1 NOT NULL,
`notified` varchar(255) NOT NULL,
`notified_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`on_vacation`,`notified`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Postfix Admin - Virtual Vacation Notifications';
--
-- Contraintes pour les tables exportées
--
--
-- Contraintes pour la table `vacation_notification`
--
ALTER TABLE `vacation_notification`
ADD CONSTRAINT `vacation_notification_pkey` FOREIGN KEY (`on_vacation`) REFERENCES `vacation` (`email`) ON DELETE CASCADE;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
BONUS : Si quelqu'un peut m'expliquer pourquoi en local je n'ai pas besoin de m'authentifier pour envoyer des mails via le serveur SMTP alors que GMail par exemple me demande un couple login/pass pour se connecter , je suis preneur
Enfin je comprends le principe : il faut bien s'authentifier, mais où est définie cette authentification (table users ?) et pourquoi elle ne s'applique pas avec telnet ? Auth nécessaire que depuis l'extérieur ?