Edición de «Servidor proxy con AV»
Advertencia: no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición en estas condiciones. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.
Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces guarda los cambios para así efectuar la reversión.
Revisión actual | Tu texto | ||
Línea 1: | Línea 1: | ||
− | { | + | {{Plantilla:Docs}} |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
= Introducción = | = Introducción = | ||
El propósito de este manual es describir la instalación y configuración del squid 2.7 (proxy http) + antivirus (ClamAV) + Dansguard (filtrado de paginas web + integración con ClamAV) en una Ubuntu 8.04. | El propósito de este manual es describir la instalación y configuración del squid 2.7 (proxy http) + antivirus (ClamAV) + Dansguard (filtrado de paginas web + integración con ClamAV) en una Ubuntu 8.04. | ||
− | No sé entrará demasiado en explicar cada aplicación que se va a instalar, se deja el tema de profundizar a discreción del lector ;) | + | No sé entrará demasiado en explicar cada aplicación que se va a instalar, se deja el tema de profundizar a discreción del lector ;) |
Se presuponen ciertos conocimientos sobre administración linux y los componentes que esta guia explica su instalación. | Se presuponen ciertos conocimientos sobre administración linux y los componentes que esta guia explica su instalación. | ||
Línea 31: | Línea 17: | ||
<pre> | <pre> | ||
− | aptitude install gcc make perl build-essential libldap2-dev libsasl2-dev libpam0g-dev | + | aptitude install gcc make perl build-essential libldap2-dev libsasl2-dev libpam0g-dev zlib-bin zlib1g-dev libpcre3-dev pkg-config |
− | zlib-bin zlib1g-dev libpcre3-dev pkg-config | ||
</pre> | </pre> | ||
== Parámetros kernel == | == Parámetros kernel == | ||
− | Para un mejor funcionamiento se debe configurar una | + | Para un mejor funcionamiento se debe configurar una seria de parámetros en el kernel o comprobar que estén configurados con unos valores correctos. |
Empecemos con los descriptores de ficheros, que por defecto solo se permiten en las sesiones bash 1024 ficheros abiertos, un número muy bajo para un squid con una carga moderada. | Empecemos con los descriptores de ficheros, que por defecto solo se permiten en las sesiones bash 1024 ficheros abiertos, un número muy bajo para un squid con una carga moderada. | ||
− | Por tanto se van a subir ese valor a algo más razonable como es 8192. Esto sólo se hará a nivel de sesión bash ya que el kernel el número de descriptores es bastante alto en la ubuntu 8.04 | + | Por tanto se van a subir ese valor a algo más razonable como es 8192. Esto sólo se hará a nivel de sesión bash ya que el kernel el número de descriptores es bastante alto en la ubuntu 8.04 |
<pre> | <pre> | ||
Línea 50: | Línea 35: | ||
<pre> | <pre> | ||
− | ulimit - | + | ulimit -HSn 8192 |
</pre> | </pre> | ||
Línea 100: | Línea 85: | ||
Hay que tener en cuenta que antes de hacer el configure se debe configurar el número de descriptores de ficheros abiertos a 8192 | Hay que tener en cuenta que antes de hacer el configure se debe configurar el número de descriptores de ficheros abiertos a 8192 | ||
<pre> | <pre> | ||
− | ulimit - | + | ulimit -HSn 8192 |
− | ./configure --enable-storeio="aufs coss diskd ufs null" --enable-coss-aio-ops --with-aio | + | ./configure --enable-storeio="aufs coss diskd ufs null" --enable-coss-aio-ops --with-aio --enable-removal-policies="heap,lru" \ |
− | --enable-removal-policies="heap,lru" --with-large-files --enable-large-cache-files | + | --with-large-files --enable-large-cache-files --enable-delay-pools --enable-snmp --enable-linux-netfilter \ |
− | --enable-delay-pools --enable-snmp --enable-linux-netfilter --enable-auth="basic digest negotiate ntlm" | + | --enable-auth="basic digest negotiate ntlm" --enable-basic-auth-helpers="DB LDAP MSNT NCSA PAM POP3 SASL SMB squid_radius_auth YP" \ |
− | --enable-basic-auth-helpers="DB LDAP MSNT NCSA PAM POP3 SASL SMB squid_radius_auth YP" \ | ||
--enable-follow-x-forwarded-for && make && make install | --enable-follow-x-forwarded-for && make && make install | ||
</pre> | </pre> | ||
Línea 121: | Línea 105: | ||
# Squid 2.7 configuration # | # Squid 2.7 configuration # | ||
########################### | ########################### | ||
− | |||
− | |||
− | |||
# Listen port | # Listen port | ||
http_port 3128 | http_port 3128 | ||
− | |||
# Cache | # Cache | ||
cache_mem 512 MB | cache_mem 512 MB | ||
− | + | maximun_object_size 1000000 bytes | |
cache_dir aufs /opt/squid/squidcache/ 5000 16 256 | cache_dir aufs /opt/squid/squidcache/ 5000 16 256 | ||
− | |||
#cache_dir coss /opt/squid/squidcache/coss 4000 max-size=1000000 | #cache_dir coss /opt/squid/squidcache/coss 4000 max-size=1000000 | ||
Línea 152: | Línea 131: | ||
# Auth | # Auth | ||
− | + | auth_param basic program /usr/local/squid/libexec/squid_ldap_auth -b "ou=People,dc=empresa,dc=com" -f "uid=%s" -v2 -h 192.168.1.1 | |
− | + | auth_param basic children 5 | |
− | + | auth_param basic realm Squid proxy-caching web server | |
− | + | auth_param basic credentialsttl 2 hours | |
− | + | auth_param basic casesensitive off | |
− | + | authenticate_ip_ttl 1800 seconds | |
− | + | acl Authenticate proxy_auth REQUIRED | |
acl CONNECT method CONNECT | acl CONNECT method CONNECT | ||
Línea 266: | Línea 245: | ||
case "$1" in | case "$1" in | ||
start) | start) | ||
− | ulimit - | + | ulimit -HSn 8192 |
/usr/local/squid/sbin/squid -D | /usr/local/squid/sbin/squid -D | ||
;; | ;; | ||
stop) | stop) | ||
/usr/local/squid/sbin/squid -k shutdown | /usr/local/squid/sbin/squid -k shutdown | ||
− | /bin/sleep | + | ;; |
− | /usr/local/squid/sbin/squid - | + | restart) |
+ | /usr/local/squid/sbin/squid -k shutdown | ||
+ | /bin/sleep 5 | ||
+ | /usr/local/squid/sbin/squid -D | ||
;; | ;; | ||
*) | *) | ||
− | + | log_action_msg "Usage: /etc/init.d/squid {start|stop|restart}" | |
exit 1 | exit 1 | ||
esac | esac | ||
Línea 284: | Línea 266: | ||
Que arranque al inicio del sistema | Que arranque al inicio del sistema | ||
<pre> | <pre> | ||
− | |||
update-rc.d squid defaults 40 | update-rc.d squid defaults 40 | ||
</pre> | </pre> | ||
Línea 305: | Línea 286: | ||
Ahora se va a instalar y configurar la aplicación que realiza el filtrado de las webs mediante lista de dominios o por ciertas palabras que aparecen en las webs, por ejemplo pornográficas. También se encarga de bloquear los virus mediante el antivirus ClamAV. | Ahora se va a instalar y configurar la aplicación que realiza el filtrado de las webs mediante lista de dominios o por ciertas palabras que aparecen en las webs, por ejemplo pornográficas. También se encarga de bloquear los virus mediante el antivirus ClamAV. | ||
− | Esta aplicación escuchará en el puerto 8080, pasará las | + | Esta aplicación escuchará en el puerto 8080, pasará las peticionés web al squid que escucha en el puerto 3128 y después envia a los clientes web los objetos que cachea el squid. |
Por tanto en los navegadores se debe configurar la IP del servidor y el puerto 8080. | Por tanto en los navegadores se debe configurar la IP del servidor y el puerto 8080. | ||
Línea 318: | Línea 299: | ||
A continuación vamos a bajar y compilar el programa, teniendo en cuenta de crear el grupo nobody si no existe | A continuación vamos a bajar y compilar el programa, teniendo en cuenta de crear el grupo nobody si no existe | ||
<pre> | <pre> | ||
− | wget http://dansguardian.org/downloads/2/Stable/dansguardian-2.10. | + | wget http://dansguardian.org/downloads/2/Stable/dansguardian-2.10.0.3.tar.gz |
− | tar zxvf dansguardian-2.10. | + | tar zxvf dansguardian-2.10.0.3.tar.gz |
− | cd dansguardian-2.10. | + | cd dansguardian-2.10.0.3 |
+ | groupadd nobody | ||
./configure --prefix=/usr/local/dansguardian --enable-clamd && make && make install | ./configure --prefix=/usr/local/dansguardian --enable-clamd && make && make install | ||
</pre> | </pre> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
= TODO = | = TODO = | ||
− | Aunque la solución descrita en este manual es bastante completa, se podría | + | Aunque la solución descrita en este manual es bastante completa, se podría instalar alguna herramienta más como por ejemplo: |
− | - Estadísticas (Sarg) | + | - Estadísticas (Sarg) |
− | + | - El gestor de la cache (Cache Manager) | |
− | + | - Snmp | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | - El gestor de la cache (Cache Manager) | ||
− | - Snmp | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
[[Categoría:Linux]] | [[Categoría:Linux]] | ||
− |