Ceci n'a pas directement à voir avec IPCOP1.4 mais j'utilise à la maison MAndrake10.0 et j'y ai installé SquidGuard afin de filtrer l'accés internet pour mes enfants.
Ayant installé "petite poulpe" sur l'IPCOP 1.4b3 de mon établissement j'aimerais que l'affichage de la page d'interdition soit la même. J'ai donc recopié le script fourni par admin Bourdonnec sur la Mandrake10.0 mais lors d'accés aux sites interdits le serveur apache m'indique des erreurs.
N'étant pas un pro des scripts cgi, et n'ayant actuellement pas beaucoup de temps à consacrer à ce problème, pourriez-vous m'indiquer à quel endroit je dois placer les images, ainsi que les points importants de configuration de script.
Si quelqu'un pouvait commenter le script ci-dessous ceci m'aiderai bien.
Merci d'avance pour tous les renseignements
Pascal Lucas
PS Comment sur ixus.net peut-on joindre un fichier ?
#! /usr/bin/perl
#
# Sample CGI to explain to the user that the URL is blocked and by which rule set
#
# By Pål Baltzersen 1998
#
#
# Adaptation pour IpCop 1.4 par admin Bourdonnec "fbourdonnec_chez.com"
# 15 mars 2004
#
use Sys::Hostname;
$QUERY_STRING = $ENV{'QUERY_STRING'};
$DOCUMENT_ROOT = $ENV{'DOCUMENT_ROOT'};
$clientaddr = "";
$clientname = "";
$srcclass = "";
$targetclass = "";
$url = "";
$time = time;
@day = ("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
@month = ("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
while ($QUERY_STRING =~ /^\&?([^&=]+)=([^&=]*)(.*)/) {
$key = $1;
$value = $2;
$QUERY_STRING = $3;
if ($key =~ /^(clientaddr|srcclass|targetclass|url)$/) {
eval "\$$key = \$value";
}
if ($QUERY_STRING =~ /^url=(.*)/) {
$url = $1;
$QUERY_STRING = "";
}
}
if ($url =~ /\.(png|gif|jpg|jpeg|mpg|mpeg|avi|mov)$/i) {
print "Content-Type: image/png\n";
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = gmtime($time);
printf "Expires: %s, %02d-%s-%02d %02d:%02d:%02d GMT\n\n", $day[$wday],$mday,$month[$mon],$year,$hour,$min,$sec;
open(GIF, "$DOCUMENT_ROOT/images/blocked.gif");
while (<GIF>) {
print;
}
close(GIF)
} else {
print "Content-type: text/html\n";
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = gmtime($time);
printf "Expires: %s, %02d-%s-%02d %02d:%02d:%02d GMT\n\n", $day[$wday],$mday,$month[$mon],$year,$hour,$min,$sec;
print "<HTML>\n\n";
# print " <HEAD>\n\n\n <TITLE>302 Accés interdit</TITLE>\n <LINK REL=\"SHORTCUT ICON\" HREF=\"/favicon_av.ico\"> </HEAD>\n\n";
print "<BODY BGCOLOR=\"#666699\" text=\"#FFFFFF\">";
if ($srcclass eq "unknown") {
print " <H1 ALIGN=CENTER><BR><BR>Cette machine n'a pas<BR>accés a internet</H1>\n\n";
print " <TABLE BORDER=0 ALIGN=CENTER>\n";
print " <TR><TH ALIGN=RIGHT>Client address<TH ALIGN=CENTER>=<TH ALIGN=LEFT>$clientaddr\n";
print " <TR><TH ALIGN=RIGHT>Client group<TH ALIGN=CENTER>=<TH ALIGN=LEFT>$srcclass\n";
print " </TABLE>";
print " <P ALIGN=CENTER><FONT COLOR=\"#66CC00\">Informez admin si ce site doit être autorisé<BR>\n";
print " <A HREF=mailto:pascal.ltp\@tiscali.fr?subject=Filtrage%20Urls&body=Je%20voudrais%20visiter%20";
print "le%20site%20$url%20($srcclass),($targetclass),($clientaddr)>";
print " pascal.ltp\@tiscali.fr</A>";
print " </P>";
} else {
print " <BR><FONT COLOR=\"#FFFFFF\"><CENTER><H1>Accés interdit</H1></CENTER></FONT>\n\n";
print " <TABLE BORDER=0 ALIGN=CENTER>\n";
print " <TR><TH ALIGN=RIGHT>Client address<TH ALIGN=CENTER>=<TH ALIGN=LEFT>$clientaddr\n";
print " <TR><TH ALIGN=RIGHT>Client group<TH ALIGN=CENTER>=<TH ALIGN=LEFT>$srcclass\n";
print " <TR><TH ALIGN=RIGHT>URL<TH ALIGN=CENTER>=<TH ALIGN=LEFT>$url\n";
print " <TR><TH ALIGN=RIGHT>Target class<TH ALIGN=CENTER>=<TH ALIGN=LEFT>$targetclass\n";
print " </TABLE>";
print " <P ALIGN=CENTER><FONT COLOR=\"#66CC00\">Informez admin si ce site doit être autorisé<BR>\n";
print " <A HREF=mailto:admin%20%3Cpascal.ltp\@tiscali.fr%3E?subject=Filtrage%20Urls&body=Je%20voudrais%20visiter%20";
print "le%20site%0A$url%0A$srcclass,$targetclass,$clientaddr>";
print " pascal.ltp\@tiscali.fr</A>";
print " </P>";
}
# print " <P ALIGN=CENTER> <IMG ALIGN=CENTER SRC=\'http://" . &hostname() . ":81/images/bounceback.png\' ></P>";
# print " <P> <IMG ALIGN=CENTER SRC=\'http://10.0.0.100:81/images/bounceback.png\' ></P>";
print " </BODY></HTML>";
}
exit 0;[/list]