mirror of
https://github.com/YunoHost-Apps/emailpoubelle_ynh.git
synced 2024-09-03 18:26:29 +02:00
Vérification de l'adresse email par DNS
This commit is contained in:
parent
30e0a81999
commit
36c6a3e92c
2 changed files with 29 additions and 2 deletions
5
conf.php
5
conf.php
|
@ -10,10 +10,13 @@
|
||||||
#error_reporting(0);
|
#error_reporting(0);
|
||||||
error_reporting(E_ALL);
|
error_reporting(E_ALL);
|
||||||
|
|
||||||
define('VERSION', '0.1 Beta1');
|
define('VERSION', '0.1.1');
|
||||||
|
|
||||||
define('DOMAIN', 'zici.fr');
|
define('DOMAIN', 'zici.fr');
|
||||||
|
|
||||||
|
// Serveur DNS pour la résolution/vérification du nom de domaine
|
||||||
|
define('NS1', 'ns1.fdn.org');
|
||||||
|
|
||||||
define('BIN_POSTMAP', '/usr/sbin/postmap');
|
define('BIN_POSTMAP', '/usr/sbin/postmap');
|
||||||
|
|
||||||
define('URLPAGE', 'http://zici.fr/emailPoubelle.html');
|
define('URLPAGE', 'http://zici.fr/emailPoubelle.html');
|
||||||
|
|
|
@ -12,6 +12,22 @@
|
||||||
|
|
||||||
include_once('./conf.php');
|
include_once('./conf.php');
|
||||||
|
|
||||||
|
function VerifMXemail($email)
|
||||||
|
{
|
||||||
|
require_once 'Net/DNS.php';
|
||||||
|
$domaine=explode('@', $email);
|
||||||
|
$serveurDeNom=array(
|
||||||
|
NS1
|
||||||
|
);
|
||||||
|
$resolver = new Net_DNS_Resolver();
|
||||||
|
$resolver->nameservers=$serveurDeNom;
|
||||||
|
$response = $resolver->query($domaine[1],'MX');
|
||||||
|
if ($response) {
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
function UpdateVirtualDB()
|
function UpdateVirtualDB()
|
||||||
{
|
{
|
||||||
echo exec(BIN_POSTMAP.' '.FICHIERALIAS,$output,$return);
|
echo exec(BIN_POSTMAP.' '.FICHIERALIAS,$output,$return);
|
||||||
|
@ -52,6 +68,8 @@ if (isset($_REQUEST['Validemail'])) {
|
||||||
$email=strtolower($_REQUEST['email']);
|
$email=strtolower($_REQUEST['email']);
|
||||||
if (! filter_var($email, FILTER_VALIDATE_EMAIL)) {
|
if (! filter_var($email, FILTER_VALIDATE_EMAIL)) {
|
||||||
echo '<div class="highlight-1">Erreur : Adresse email incorrect</div>';
|
echo '<div class="highlight-1">Erreur : Adresse email incorrect</div>';
|
||||||
|
} else if (! VerifMXemail($email)) {
|
||||||
|
echo '<div class="highlight-1">Erreur : Adresse email incorrect (2)</div>';
|
||||||
} else if (! preg_match('#^[\w.-]+$#',$alias)) {
|
} else if (! preg_match('#^[\w.-]+$#',$alias)) {
|
||||||
echo '<div class="highlight-1">Erreur : email poubelle incorrect</div>';
|
echo '<div class="highlight-1">Erreur : email poubelle incorrect</div>';
|
||||||
} elseif (isset($_REQUEST['ajo'])) {
|
} elseif (isset($_REQUEST['ajo'])) {
|
||||||
|
@ -124,6 +142,8 @@ if (isset($_REQUEST['Validemail'])) {
|
||||||
|
|
||||||
<p>Typiquement c'est un script à inclure dans une page entre les balises body</p>
|
<p>Typiquement c'est un script à inclure dans une page entre les balises body</p>
|
||||||
|
|
||||||
|
<p>Le script a besoin de la lib pear <a href='http://pear.php.net/package/Net_DNS' target='_blank'>Net_DNS</a></p>
|
||||||
|
|
||||||
<p>Le script utilise les virtual_alias_maps de postfix. Connectez vous en root</p>
|
<p>Le script utilise les virtual_alias_maps de postfix. Connectez vous en root</p>
|
||||||
<p style='background-color: #C8C8C8'>srv:~# vi /etc/postfix/main.cf <br />
|
<p style='background-color: #C8C8C8'>srv:~# vi /etc/postfix/main.cf <br />
|
||||||
[...]<br />
|
[...]<br />
|
||||||
|
@ -136,7 +156,11 @@ srv:~# chown www-data /www/emailPoubelle/postfix/virtual.db<br /></p>
|
||||||
<p>Assurez vous que l'exécutable /usr/sbin/postmap soit accessible par l'utilisateur www-data</p>
|
<p>Assurez vous que l'exécutable /usr/sbin/postmap soit accessible par l'utilisateur www-data</p>
|
||||||
|
|
||||||
<h2>Changelog</h2>
|
<h2>Changelog</h2>
|
||||||
<span>Version 0.1 Beta1</span>
|
<span>Version 0.1.1</span>
|
||||||
|
<ul>
|
||||||
|
<li>Vérification de l'adresse email par DNS (existance d'un MX)</li>
|
||||||
|
</ul>
|
||||||
|
<span>Version 0.1</span>
|
||||||
<ul>
|
<ul>
|
||||||
<li>Ajout/suppression d'un alias</li>
|
<li>Ajout/suppression d'un alias</li>
|
||||||
<li>Vérification des adresses emails inconnus par confirmation email</li>
|
<li>Vérification des adresses emails inconnus par confirmation email</li>
|
||||||
|
|
Loading…
Reference in a new issue