Pagina de inicio o predeterminada con Squid

Tema: 

En la dependencia donde trabajo, se me ha pedido que se ponga una página de inicio o predeterminada en nuestra Red Local, el caso para no hacerlo equipo por equipo, obviamente la mejor solución y rápida ha sido con Squid Transparente.

Es muy sencillo y fácil de implementar.

1.- Para ello tenemos que tener instalado y configurado el Squid Transparente.

2.- Descargaremos el plug-in de Aquí llamado IR para Squid hecho en C o bien en la terminal

wget http://www.vanheusden.com/ir/ir-0.3.tgz

3.- Ya descargado el plug-in procedemos a descomprimir.

tar xzvf ir-0.3.tgz

Nos arrojara algo asi

ir-0.3/
ir-0.3/ir.conf
ir-0.3/main.c
ir-0.3/mem.c
ir-0.3/mem.h
ir-0.3/Makefile
ir-0.3/README
ir-0.3/license.txt


4.- Entramos a la carpeta e instalamos el plug-in.

cd ir-0.3


make install

Y nos mostrara el proceco de instalación.

cc -Wall -O2 -DVERSION=\"0.3\" -g -DCONFIG_FILE=\"/usr/local/etc/ir.conf\" -c -o main.o main.c
main.c: In function `store_database':
main.c:182: aviso: formato int, argumento tipo diferente (argumento 4)
cc -Wall -O2 -DVERSION=\"0.3\" -g -DCONFIG_FILE=\"/usr/local/etc/ir.conf\" -c -o mem.o mem.c
cc -Wall -W main.o mem.o -lstdc++ -g -o ir
cp ir /usr/local/bin
cp ir.conf /usr/local/etc

5.- Ya instalado el plug-in, añadiremos un par de líneas a nuestra configuración del Squid

nano /etc/squid/squid.conf

ingresamos:
Por tener una versión antigua del squid tiene que ser con estas líneas.

redirect_program /usr/local/bin/ir
redirect_children 1

Si tienes Squid con Versión 2.6 en adelante tienes que ingresar estas lineas

url_rewrite_program /bin/ir
url_rewrite_children 1

6.- Modificamos la configuracion del plug-in.


nano /usr/local/etc/ir.conf

Y lo modificamos a nuestro gusto


dle_time = 600
redirect_url = http://www.ecualug.org/

7.- por ultimo reiniciamos el demonio Squid.


service squid restart

Lo que hace este plug-in es que cuando un usuario abre por primera vez el explorador(Mozilla o IE) aparecera automáticamente la página http//www.ecualug.org aún asi el usuario tenga en el explorador a google o cualquier página predertiminado.
¿Cual es la finalidad?
Hay usuarios o trabajadores que nunca visitan la pagina oficial de la dependencia :P, tambien para mandar una bienvenida o dar información al usuario o avisos, no se... puede tener varias funcionalidades.

Espero les sea útil en alguna ocasión, ya que a veces piden cosas extrañas :P

Saludos desde Tuxtla Gutiérrez, Chiapas. México.

Comentarios

La verdad es que no lo he

Imagen de deathUser

La verdad es que no lo he implementado, pero no se ven distintas las cosas de lo que explica PedroIsmael, con tdo, por que no explicas el procedimiento que estás siguiendo y que problemas te está dando, seguro alguien te puede dar una mano ...

bye
;)

estoy tratando de instala el

estoy tratando de instala el plugin, al inicio me mandaba erro que no tenia g++, eso ya fue corregido pero ahora me manda este error:
[root@localhost ir-0.6]# make install
g++ -Wall -O3 -DVERSION=\"0.6\" -g -DCONFIG_FILE=\"/usr/local/etc/ir.conf\" -c -o main.o main.cpp
main.cpp:16:21: error: sqlite3.h: No existe el fichero o el directorio
In file included from main.cpp:18:
db.h:2: error: ‘sqlite3’ no se declaró en este ámbito
db.h:2: error: ‘db’ no se declaró en este ámbito
db.h:2: error: expected primary-expression before ‘query’
db.h:2: error: se trata la lista de expresiones initializer como una expresión compuesta
db.h:3: error: ‘sqlite3’ no se declaró en este ámbito
db.h:3: error: ‘db’ no se declaró en este ámbito
db.h:3: error: expected primary-expression before ‘table’
db.h:3: error: se trata la lista de expresiones initializer como una expresión compuesta
db.h:4: error: se declaró la variable o campo ‘create_tables’ como void
db.h:4: error: ‘sqlite3’ no se declaró en este ámbito
db.h:4: error: ‘db’ no se declaró en este ámbito
db.h:5: error: se declaró la variable o campo ‘start_transaction’ como void
db.h:5: error: ‘sqlite3’ no se declaró en este ámbito
db.h:5: error: ‘db’ no se declaró en este ámbito
db.h:6: error: se declaró la variable o campo ‘commit_transaction’ como void
db.h:6: error: ‘sqlite3’ no se declaró en este ámbito
db.h:6: error: ‘db’ no se declaró en este ámbito
main.cpp: In function ‘int main(int, char**)’:
main.cpp:61: error: ‘sqlite3’ no se declaró en este ámbito
main.cpp:61: error: ‘db’ no se declaró en este ámbito
main.cpp:62: error: ‘sqlite3_open’ no se declaró en este ámbito
main.cpp:65: error: ‘sqlite3_busy_timeout’ no se declaró en este ámbito
main.cpp:68: error: ‘create_tables’ no se declaró en este ámbito
main.cpp:137: error: ‘start_transaction’ no se declaró en este ámbito
main.cpp:142: error: ‘sqlite3_exec’ no se declaró en este ámbito
main.cpp:152: error: ‘sqlite3_exec’ no se declaró en este ámbito
main.cpp:162: error: ‘commit_transaction’ no se declaró en este ámbito
main.cpp:172: error: ‘sqlite3_exec’ no se declaró en este ámbito
main.cpp:194: error: ‘sqlite3_exec’ no se declaró en este ámbito
make: *** [main.o] Error 1

esta instalado completo el

esta instalado completo el paquete sqlite, y si trato de instalar el ultimo plugin me manda el mismo error pero para mysql, he buscado en internet pero no hay nada referente a este problema

Por lo visto hay muchas más

Imagen de deathUser

Por lo visto hay muchas más dependencias, si vas a compilar con todas las dependencias, vas a necesitar instalar los paquetes "-dev" de cada software, o puedes vía "configure" eliminar las dependencias que no vayas a usar, en este caso, instala "mysql-dev" y mira si compila o que otra dependencia te pide y sigue así (instalando paquetes -dev) hasta que ya compile :)

bye
;)

Páginas