Enviado por iselda González... el Jue, 04/02/2015 - 10:45
He visto en este artículo de la comunidad sobre como generar reportes de la navegación de squid en html con sarg y creo que esta muy bueno de hecho lo he aplicado y me ha dado muy buenos frutos, ahora puedo chequear en que han estado navegado los usuarios si la necesidad de estar analizado la traza del squid con otra aplicación.Pero me he encontrado con un buen problema y es que este sitio que es muy útil para mi como administrador de la red pero también es accesible por cualquier persona que sepa el link y eso no me gusta.
He solucionado el problema googleando un poco y investigando el uso de algunas aplicaciones de Debian. Pues manos a la obra lo primero es cambiar el directorio donde el sarg genera los reportes.
Abrimos la configuración del sarg
# nano /etc/squid/sarg.conf
Esta linea:
output_dir /var/www/squid-reports
la cambiamos por:
output_dir /var/squid-reports
Así estos reportes no podrán ser accedidos por la web normal
Ahora creamos un VHost para reportes por ssl
Editamos el fichero de los sitios activos del apache
# nano /etc/apache2/sites-enabled/000-default
y agregamos al final
NameVirtualHost *:443
<VirtualHost *:443>
ServerAdmin webmaster@localhost
ServerName www.jcfl.cav.jovenclub.cu
DocumentRoot /var/squid-reports
# Parametros para configuraciones SSL y certificados
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile ssl/www.jcfl.cav.jovenclub.cu.crt
SSLCertificateKeyFile ssl/www.jcfl.cav.jovenclub.cu.key
#SSLCACertificateFile cacert.pem
<Directory /var/squid-reports/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# Permitir solo autenticacion a usuarios autorizados
AuthType Basic
AuthName "Solo Usurios Autorizados"
AuthUserFile /etc/apache2/ssl/sarg-passwd
require valid-user
# Permitir solo autenticacion a usuarios miembros del grupo LDAP "Domain Admins"
#AuthType Basic
#AuthBasicProvider ldap
#AuthName "Solo Usurios Autorizados"
#AuthLDAPUrl ldap://ldap.midominio.com:389/ou=Users,dc=midominio,dc=com?uid?sub
#AuthzLDAPAuthoritative On
#AuthLDAPGroupAttribute memberUid
#AuthLDAPGroupAttributeIsDN off
#Require ldap-group cn=Domain Admins,ou=Groups,dc=midominio,dc=com
</Directory>
</VirtualHost>
Con cuidado revisa la configuración que acabas de copiar y cambia los parámetros de acuerdo con tu red. Fijence que en la configuración que les pongo hay dos métodos de autenticación uno por un fichero y el otro por si usas LDAP en mi caso utilice el primero.
Ahora hay activar el modulo SSL en Apache2:
# a2enmod ssl
Creamos el certificado SSL
# mkdir /etc/apache2/ssl
# cd /etc/apache2/ssl
# openssl genrsa -out www.jcfl.cav.jovenclub.cu.key 1024
- Generamos el CSR (Certificate Signing Request):
# openssl req -new -key www.jcfl.cav.jovenclub.cu.key -out www.jcfl.cav.jovenclub.cu.csr
Generamos el Certificado usando la llave privada y el CSR:
# openssl x509 -req -days 365 -in www.jcfl.cav.jovenclub.cu.csr -signkey www.jcfl.cav.jovenclub.cu.key -out www.jcfl.cav.jovenclub.cu.crt
- Creamos archivo de usuarios y contraseñas para sitio web:
# htpasswd -c /etc/apache2/ssl/sarg-passwd proxyadmin
New password:
Re-type new password:
Adding password for user proxyadmin
- Revisando configuración de apache:
# apache2ctl -t
# apache2ctl -t -D DUMP_VHOSTS
- Reiniciar el servidor apache:
# invoke-rc.d apache2 restart
Y listo nos que dará un virtual host con seguridad y certificado en mi caso responde por
https://www.jcfl.cav.jovenclu.cu
He solucionado el problema googleando un poco y investigando el uso de algunas aplicaciones de Debian. Pues manos a la obra lo primero es cambiar el directorio donde el sarg genera los reportes.
Abrimos la configuración del sarg
# nano /etc/squid/sarg.conf
Esta linea:
output_dir /var/www/squid-reports
la cambiamos por:
output_dir /var/squid-reports
Así estos reportes no podrán ser accedidos por la web normal
Ahora creamos un VHost para reportes por ssl
Editamos el fichero de los sitios activos del apache
# nano /etc/apache2/sites-enabled/000-default
y agregamos al final
NameVirtualHost *:443
<VirtualHost *:443>
ServerAdmin webmaster@localhost
ServerName www.jcfl.cav.jovenclub.cu
DocumentRoot /var/squid-reports
# Parametros para configuraciones SSL y certificados
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile ssl/www.jcfl.cav.jovenclub.cu.crt
SSLCertificateKeyFile ssl/www.jcfl.cav.jovenclub.cu.key
#SSLCACertificateFile cacert.pem
<Directory /var/squid-reports/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# Permitir solo autenticacion a usuarios autorizados
AuthType Basic
AuthName "Solo Usurios Autorizados"
AuthUserFile /etc/apache2/ssl/sarg-passwd
require valid-user
# Permitir solo autenticacion a usuarios miembros del grupo LDAP "Domain Admins"
#AuthType Basic
#AuthBasicProvider ldap
#AuthName "Solo Usurios Autorizados"
#AuthLDAPUrl ldap://ldap.midominio.com:389/ou=Users,dc=midominio,dc=com?uid?sub
#AuthzLDAPAuthoritative On
#AuthLDAPGroupAttribute memberUid
#AuthLDAPGroupAttributeIsDN off
#Require ldap-group cn=Domain Admins,ou=Groups,dc=midominio,dc=com
</Directory>
</VirtualHost>
Con cuidado revisa la configuración que acabas de copiar y cambia los parámetros de acuerdo con tu red. Fijence que en la configuración que les pongo hay dos métodos de autenticación uno por un fichero y el otro por si usas LDAP en mi caso utilice el primero.
Ahora hay activar el modulo SSL en Apache2:
# a2enmod ssl
Creamos el certificado SSL
# mkdir /etc/apache2/ssl
# cd /etc/apache2/ssl
# openssl genrsa -out www.jcfl.cav.jovenclub.cu.key 1024
- Generamos el CSR (Certificate Signing Request):
# openssl req -new -key www.jcfl.cav.jovenclub.cu.key -out www.jcfl.cav.jovenclub.cu.csr
Generamos el Certificado usando la llave privada y el CSR:
# openssl x509 -req -days 365 -in www.jcfl.cav.jovenclub.cu.csr -signkey www.jcfl.cav.jovenclub.cu.key -out www.jcfl.cav.jovenclub.cu.crt
- Creamos archivo de usuarios y contraseñas para sitio web:
# htpasswd -c /etc/apache2/ssl/sarg-passwd proxyadmin
New password:
Re-type new password:
Adding password for user proxyadmin
- Revisando configuración de apache:
# apache2ctl -t
# apache2ctl -t -D DUMP_VHOSTS
- Reiniciar el servidor apache:
# invoke-rc.d apache2 restart
Y listo nos que dará un virtual host con seguridad y certificado en mi caso responde por
https://www.jcfl.cav.jovenclu.cu
Autor original:
Carlos Martínez Gómez
Categoría: