acces a la base.

This commit is contained in:
Alexandre Anriot 2005-09-15 05:44:29 +00:00
parent 80538647d7
commit f21f83d3d4

View file

@ -17,10 +17,6 @@ my $db = $Config->{bdd}->{db};
my $username = $Config->{bdd}->{username};
my $userpass = $Config->{bdd}->{userpass};
my $dbh = DBI->connect( $db, $username, $userpass )
&& &Evoauth::Functions::Log("La connexion a réussie.") ||
&Evoauth::Functions::Log("La connexion a échoué : $DBI::errstr");
# Règles
our %conf;
my $cpt = 1;
@ -49,14 +45,18 @@ sub Alter() {
# suppression
else {
my $dbh = DBI->connect( $db, $username, $userpass ) ||
&Evoauth::Functions::Log("La connexion a échoué : $DBI::errstr");
my $sql = qq{ UPDATE users set statut = 0 where ip = '$ip' };
my $sth = $dbh->prepare($sql);
system("/sbin/iptables -D EVOAUTH -s $ip -j ACCEPT") &&
$sth->execute() &&
$sth->finish() &&
&Evoauth::Functions::Log("$ip [supprimee]") &&
&Evoauth::Functions::Mail("Deconnexion", $ip);
system("/sbin/iptables -D EVOAUTH -s $ip -j ACCEPT");
$sth->execute();
$sth->finish();
&Evoauth::Functions::Log("$ip [supprimee]");
&Evoauth::Functions::Mail("Deconnexion", $ip);
}
return 0;
@ -79,6 +79,9 @@ sub check_iptables() {
foreach $ip (@ips) {
chomp $ip;
my $dbh = DBI->connect( $db, $username, $userpass ) ||
&Evoauth::Functions::Log("La connexion a échoué : $DBI::errstr");
my $sql = "SELECT statut FROM users where ip = '".$ip."'";
my $sth = $dbh->prepare( $sql );
$sth->execute();
@ -100,6 +103,10 @@ sub check_timestamp() {
&Evoauth::Functions::Log("Suppression des règles obsolètes dans iptables.");
# on travaille sur tous les utilisateurs présents
my $dbh = DBI->connect( $db, $username, $userpass ) ||
&Evoauth::Functions::Log("La connexion a échoué : $DBI::errstr");
my $sql = "SELECT * FROM users";
my $sth = $dbh->prepare($sql);
$sth->execute();
@ -154,8 +161,8 @@ sub Control() {
&Evoauth::Functions::Log("1 - Regles de PREROUTING charges");
system("/sbin/iptables -N EVOAUTH 2&>1") &&
system("/sbin/iptables -A EVOAUTH -j DROP 2&>1");
system("/sbin/iptables -N EVOAUTH 2&>1");
system("/sbin/iptables -A EVOAUTH -j DROP 2&>1");
&Evoauth::Functions::Log("2 - Tables crées");