Commit 36c6a3e9 authored by David's avatar David
Browse files

Vérification de l'adresse email par DNS

parent 30e0a819
......@@ -10,10 +10,13 @@
#error_reporting(0);
error_reporting(E_ALL);
define('VERSION', '0.1 Beta1');
define('VERSION', '0.1.1');
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('URLPAGE', 'http://zici.fr/emailPoubelle.html');
......
......@@ -12,6 +12,22 @@
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()
{
echo exec(BIN_POSTMAP.' '.FICHIERALIAS,$output,$return);
......@@ -52,6 +68,8 @@ if (isset($_REQUEST['Validemail'])) {
$email=strtolower($_REQUEST['email']);
if (! filter_var($email, FILTER_VALIDATE_EMAIL)) {
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)) {
echo '<div class="highlight-1">Erreur : email poubelle incorrect</div>';
} 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>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 style='background-color: #C8C8C8'>srv:~# vi /etc/postfix/main.cf <br />
[...]<br />
......@@ -136,7 +156,11 @@ srv:~# chown www-data /www/emailPoubelle/postfix/virtual.db<br /></p>
<p>Assurez vous que l'excutable /usr/sbin/postmap soit accessible par l'utilisateur www-data</p>
<h2>Changelog</h2>
<span>Version 0.1 Beta1</span>
<span>Version 0.1.1</span>
<ul>
<li>Vrification de l'adresse email par DNS (existance d'un MX)</li>
</ul>
<span>Version 0.1</span>
<ul>
<li>Ajout/suppression d'un alias</li>
<li>Vrification des adresses emails inconnus par confirmation email</li>
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment