Aggiunta gestione IP
This commit is contained in:
@@ -21,13 +21,13 @@ if (isset($_GET['ip'])) {
|
||||
$azione = $_GET['azione'];
|
||||
switch ($azione) {
|
||||
case "limita":
|
||||
$query = "INSERT INTO proxy_pool (ip, pool, attivo) VALUES ('$ip', 1, 1) ON DUPLICATE KEY UPDATE attivo = 1";
|
||||
$query = "INSERT INTO proxy_pool (ip, pool, attivo, ins) VALUES ('$ip', 1, 1, NOW()) ON DUPLICATE KEY UPDATE attivo = 1";
|
||||
mysql_query( $query, $DB_ID );
|
||||
$testo = "Utente $ip inserito in pool di limitazione banda";
|
||||
genera($DB_ID);
|
||||
break;
|
||||
case "libera":
|
||||
$query = "INSERT INTO proxy_pool (ip, pool, attivo) VALUES ('$ip', 1, 0) ON DUPLICATE KEY UPDATE attivo = 0";
|
||||
$query = "INSERT INTO proxy_pool (ip, pool, attivo, ins) VALUES ('$ip', 1, 0, NOW()) ON DUPLICATE KEY UPDATE attivo = 0";
|
||||
mysql_query( $query, $DB_ID );
|
||||
$testo = "Utente $ip rimosso dal pool di limitazione banda";
|
||||
genera($DB_ID);
|
||||
@@ -40,7 +40,7 @@ if (isset($_GET['ip'])) {
|
||||
}
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
confirmation ('<?php print "$testo" ?>');
|
||||
// confirmation ('<?php print "$testo" ?>');
|
||||
document.location.href='<?php print $_SERVER['HTTP_REFERER']?>'
|
||||
</script>
|
||||
|
||||
|
||||
@@ -3,37 +3,18 @@ include_once ("../core/config.php");
|
||||
$UTENTE = login();
|
||||
$DIRITTI = diritti(1);
|
||||
view_top();
|
||||
?>
|
||||
<form name="" method="post">
|
||||
<table cellpadding="0" cellspacing="0" border="0" width="90%">
|
||||
|
||||
<?php
|
||||
if (isset($_GET['ip'])) {
|
||||
$ip = $_GET['ip'];
|
||||
} else {
|
||||
// ERRORE
|
||||
}
|
||||
|
||||
if (isset($_POST['tempo'])) {
|
||||
$tempo = $_POST['tempo'];
|
||||
} else {
|
||||
$tempo = "DAY";
|
||||
}
|
||||
?>
|
||||
|
||||
<form name="" method="post">
|
||||
<table cellpadding="0" cellspacing="0" border="0" width="90%">
|
||||
<tr>
|
||||
<td class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td colspan="2">
|
||||
<select name="tempo" onchange="this.form.submit()">
|
||||
<option value="HOUR" <?php if ($tempo == "HOUR") {print "selected=\"selected\""; } ?>>Ultima Ora</option>
|
||||
<option value="DAY" <?php if ($tempo == "DAY") {print "selected=\"selected\""; } ?>>Ultimo Giorno</option>
|
||||
<option value="WEEK" <?php if ($tempo == "WEEK") {print "selected=\"selected\""; } ?>>Ultima Settimana</option>
|
||||
<option value="MONTH" <?php if ($tempo == "MONTH") {print "selected=\"selected\""; } ?>>Ultimo Mese</option>
|
||||
<option value="YEAR" <?php if ($tempo == "YEAR") {print "selected=\"selected\""; } ?>>Ultimo Anno</option>
|
||||
</select>
|
||||
</td>
|
||||
<td colspan="6" class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
</tr>
|
||||
<tr><td class="spaziov" colspan=9><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td></tr>
|
||||
<?php
|
||||
|
||||
$query = " SELECT
|
||||
proxy_pool.attivo,
|
||||
@@ -57,6 +38,20 @@ $query = " SELECT
|
||||
$res = mysql_query( $query, $DB_ID );
|
||||
$dato = mysql_fetch_array ( $res );
|
||||
?>
|
||||
<tr>
|
||||
<td class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td colspan="2">
|
||||
<select name="tempo" onchange="this.form.submit()">
|
||||
<option value="HOUR" <?php if ($tempo == "HOUR") {print "selected=\"selected\""; } ?>>Ultima Ora</option>
|
||||
<option value="DAY" <?php if ($tempo == "DAY") {print "selected=\"selected\""; } ?>>Ultimo Giorno</option>
|
||||
<option value="WEEK" <?php if ($tempo == "WEEK") {print "selected=\"selected\""; } ?>>Ultima Settimana</option>
|
||||
<option value="MONTH" <?php if ($tempo == "MONTH") {print "selected=\"selected\""; } ?>>Ultimo Mese</option>
|
||||
<option value="YEAR" <?php if ($tempo == "YEAR") {print "selected=\"selected\""; } ?>>Ultimo Anno</option>
|
||||
</select>
|
||||
</td>
|
||||
<td colspan="6" class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
</tr>
|
||||
<tr><td class="spaziov" colspan=9><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td></tr>
|
||||
|
||||
<tr>
|
||||
<?php
|
||||
@@ -89,6 +84,77 @@ $dato = mysql_fetch_array ( $res );
|
||||
<tr><td colspan=9 align="center"><img src="<?php print $CONF['base_url'] ?>/proxy/graph.php?ip=<?php print $dato['ip'] ?>&tempo=<?php print $tempo ?>"></td></tr>
|
||||
<tr><td class="spaziov" colspan=9><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td></tr>
|
||||
|
||||
<?php
|
||||
} else {
|
||||
if (isset($_POST['ip'])) {
|
||||
$ip = $_POST['ip'];
|
||||
if (isset($_POST['attivo'])) {
|
||||
$attivo = $_POST['attivo'];
|
||||
} else {
|
||||
$attivo = 0;
|
||||
}
|
||||
|
||||
$query = " INSERT INTO
|
||||
proxy_pool
|
||||
SET
|
||||
ip = '$ip',
|
||||
pool = 1,
|
||||
attivo = $attivo,
|
||||
ins = NOW()
|
||||
";
|
||||
$res = mysql_query( $query, $DB_ID );
|
||||
|
||||
if (!$res) {
|
||||
$error_code = mysql_errno();
|
||||
if ($error_code == 1062) { ?>
|
||||
<tr><td class="spaziov" colspan=11><center>Indirizzo IP gia' esistente</center></td></tr>
|
||||
|
||||
<?php }
|
||||
} else { ?>
|
||||
<script type="text/javascript">
|
||||
window.location = "pool_lista.php"
|
||||
</script>
|
||||
<?php exit;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
?>
|
||||
<tr>
|
||||
<td width="10%"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td width="10%"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td width="2%"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td width="23%"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td width="10%"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td width="10%"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td width="2%"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td width="23%"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td width="10%"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td class="colip">Indirizzo IP:</td>
|
||||
<td class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td class="colip"><input type="text" size="15" name="ip"></td>
|
||||
<td class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td class="colip">Limitazione:</td>
|
||||
<td class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td class="colip"><input type="checkbox" name="attivo" value="1"></td>
|
||||
<td class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
</tr>
|
||||
<tr><td class="spaziov" colspan=11><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td></tr>
|
||||
<tr>
|
||||
<td align="center" colspan="11">
|
||||
<input type="submit" value="Aggiungi">
|
||||
|
||||
<input type="button" value="Annulla" onclick="location.href = 'pool_lista.php';"></button>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
<?php
|
||||
} ?>
|
||||
</table>
|
||||
</form>
|
||||
<img src="<?php print $CONF['base_url'] ?>/img/spazio.gif" width="1" height="20" alt="">
|
||||
|
||||
@@ -9,13 +9,22 @@ if (isset($_POST['tempo'])) {
|
||||
} else {
|
||||
$tempo = "DAY";
|
||||
}
|
||||
|
||||
if (isset($_POST['ordina'])) {
|
||||
$ordina = $_POST['ordina'];
|
||||
} else {
|
||||
$ordina = "ip";
|
||||
}
|
||||
?>
|
||||
|
||||
<form name="" method="post">
|
||||
<table cellpadding="0" cellspacing="0" border="0" width="90%">
|
||||
<tr>
|
||||
<td class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td colspan="2">
|
||||
<td rowspan=2 class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td rowspan=2 class="spazioh"><a href="pool_ip.php"><img src="<?php print $CONF['base_url'] ?>/img/addresource.png"></a></td>
|
||||
<td rowspan=2 colspan=2 class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td colspan=2 class="spazioh">Periodo: </td>
|
||||
<td colspan=4 class="spazioh">
|
||||
<select name="tempo" onchange="this.form.submit()">
|
||||
<option value="HOUR" <?php if ($tempo == "HOUR") {print "selected=\"selected\""; } ?>>Ultima Ora</option>
|
||||
<option value="DAY" <?php if ($tempo == "DAY") {print "selected=\"selected\""; } ?>>Ultimo Giorno</option>
|
||||
@@ -24,7 +33,18 @@ if (isset($_POST['tempo'])) {
|
||||
<option value="YEAR" <?php if ($tempo == "YEAR") {print "selected=\"selected\""; } ?>>Ultimo Anno</option>
|
||||
</select>
|
||||
</td>
|
||||
<td colspan="9" class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
<td rowspan=2 colspan=2 class="spazioh"><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td>
|
||||
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan=2 class="spazioh">Ordinamento: </td>
|
||||
<td colspan=4 class="spazioh">
|
||||
<select name="ordina" onchange="this.form.submit()">
|
||||
<option value="ip" <?php if ($ordina == "ip") {print "selected=\"selected\""; } ?>>IP</option>
|
||||
<option value="inviati DESC" <?php if ($ordina == "inviati DESC") {print "selected=\"selected\""; } ?>>Dati Inviati</option>
|
||||
<option value="ricevuti DESC" <?php if ($ordina == "ricevuti DESC") {print "selected=\"selected\""; } ?>>Dati Ricevuti</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr><td class="spaziov" colspan=12><img src="<?php print $CONF['base_url'] ?>/img/spazio.gif"></td></tr>
|
||||
@@ -55,14 +75,24 @@ $query = " SELECT
|
||||
data_destroy >= DATE_SUB(NOW(), INTERVAL 1 $tempo)
|
||||
GROUP BY
|
||||
ip
|
||||
UNION DISTINCT SELECT
|
||||
proxy_pool.attivo,
|
||||
proxy_pool.ip,
|
||||
DATE_SUB(NOW(), INTERVAL 1 $tempo) AS first,
|
||||
NOW() AS last,
|
||||
0,
|
||||
0
|
||||
FROM
|
||||
proxy_pool
|
||||
WHERE
|
||||
proxy_pool.ip NOT IN (SELECT ip FROM proxy_dati WHERE data_destroy >= DATE_SUB(NOW(), INTERVAL 1 $tempo))
|
||||
ORDER BY
|
||||
ip
|
||||
$ordina
|
||||
";
|
||||
|
||||
$res = mysql_query( $query, $DB_ID );
|
||||
while ($dato = mysql_fetch_array ( $res )) {
|
||||
?>
|
||||
|
||||
<tr>
|
||||
<?php
|
||||
if ($dato['attivo']) {
|
||||
|
||||
@@ -102,11 +102,13 @@ sub conntrack {
|
||||
my $proxy_IP = shift;
|
||||
my $proxy_PORT = shift;
|
||||
|
||||
$SIG{INT} = \&end;
|
||||
|
||||
my $conta = 0;
|
||||
|
||||
print "Attivato agente $sess_id su $proxy_IP:$proxy_PORT\n" if ($verbose);
|
||||
|
||||
open CT, "/usr/sbin/conntrack -E -eNEW,DESTROY -otimestamp,id -p tcp -d $proxy_IP --dport $proxy_PORT |" or die "non va\n";
|
||||
my $proc_id = open CT, "/usr/sbin/conntrack -E -eNEW,DESTROY -otimestamp,id -p tcp -d $proxy_IP --dport $proxy_PORT 2>/dev/null |" or die "non va\n";
|
||||
|
||||
while (<CT>) {
|
||||
my $riga = $_;
|
||||
@@ -173,9 +175,13 @@ sub conntrack {
|
||||
$sem2->up();
|
||||
print "Invio query UPDATE\n" if ($verbose > 1);
|
||||
}
|
||||
return if ($conta >= $limit_thread);
|
||||
if ($conta >= $limit_thread) {
|
||||
last;
|
||||
# kill 9, $proc_id;
|
||||
# return
|
||||
}
|
||||
close CT;
|
||||
}
|
||||
kill 9, $proc_id;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user