Comandos frecuentes Squid

De Luis Moreno Wiki
Revisión del 23:13 19 jul 2020 de Mayordomowiki (discusión | contribuciones) (Página creada con «Comandos frecuentes Squid Instalar Squid en CentOS http://www.cyberciti.biz/tips/howto-rhel-centos-fedora-squid-installation-configuration.html -- Archivo de configuraci…»)
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Ir a la navegación Ir a la búsqueda

Comandos frecuentes Squid

Instalar Squid en CentOS http://www.cyberciti.biz/tips/howto-rhel-centos-fedora-squid-installation-configuration.html

-- Archivo de configuración de Squid

 /etc/squid/squid.conf

-- Logs de Squid: /var/log/squid/

-- Log de acceso de Squid /var/log/squid/access.log

Error: /etc/init.d/squid start init_cache_dir /var/spool/squid... /etc/init.d/squid: line 62: 2644 Aborted $SQUID -z -F -D >> /var/log/squid/squid.out 2>&1 Starting squid: /etc/init.d/squid: line 42: 2645 Aborted $SQUID $SQUID_OPTS >> /var/log/squid/squid.out 2>&1 [FAILED] [root@cyclops ~]# /etc/init.d/squid start init_cache_dir /var/spool/squid... /etc/init.d/squid: line 62: 2653 Aborted $SQUID -z -F -D >> /var/log/squid/squid.out 2>&1 Starting squid: /etc/init.d/squid: line 42: 2654 Aborted $SQUID $SQUID_OPTS >> /var/log/squid/squid.out 2>&1 [FAILED]

Este problema se debe a que el hostname de squid no se pudo resolver en el DNS que esta declarado en el servidor de squid, en el archivo /etc/resolv.conf Para resolverlo, basta con crear el A record en el DNS local si ejecutas el comando:

 hostname -s

te deberá regresar el nombre del servidor, despues de esto pudes iniciar el servicio de Squid sin problemas.

--Sincronizar hora en servidor en dominio

 service ntpd stop
 ntpdate 192.168.1.1
 service ntpd start

Rotación de logs

Rotación de logs en squid Para que roten los logs de squid es necesario lo siguiente: Modificar el archivo de configuración /etc/squid/squid.conf buscar la línea:

 # logfile_rotate 0 

Modificar la línea a:

 logfile_rotate 10

Reiniciar el servicio de squid con el comando:

 service squid restart

Ejecutar el comando:

 squid -k rotate

observaras que se crean los archivos:

 access.log
 cache.log
 store.log

y los anteriores son renombrados a:

 access.log.0
 cache.log.0
 store.log.0

La recomendación es que el comando 4 se programe en cron para que sea ejecutado cada mes. Ejecutar después de extraer los reportes de sarg u otra herramienta que se base en estos logs para generar sus reportes.


Instalación

[root@localhost ~]# yum install squid


Instalación y configuración de Squid -----

-- Instalación Squid

 Instalar CentOS minimal
 yum install update
 yum update
 yum install screen


-- sincronizar hora con servidor de AD, primero establecer la zona horaria correcta instalar menú configuración de hora

 yum install system-config-date

establecer la zona horaria

 system-config-date

por ejemplo Americas/Mexico City


-- instalar ntp para sincronizar con el servidor de dominio

 yum install ntp

-- editar el archivo

 vim /etc/ntp.conf

comentar con un signo de número antes de las líneas, quedaría como sigue y al final agregar el nombre del servidor principal al cuál se sincronizará

 #server 0.centos.pool.ntp.org
 #server 1.centos.pool.ntp.org
 #server 2.centos.pool.ntp.org
 server server1.midominio.local

-- configurar el servicio ntp para que inicie automáticamente despues de cada reinicio

 chkconfig ntpd on

-- ver que servidores están disponibles para sincronización, debería ser el que se agregó

 ntpq -pn

Por ejemplo:

 remote       	refid  	st t when poll reach   delay   offset  jitter
 ==============================================================================
 100.10.65.1 	.LOCL.       	1 u  792 1024  377	0.481  1790897  36.519
 *127.127.1.0 	.LOCL.      	10 l	5   64  377	0.000	0.000   0.001

-- detener el servicio ntp

 service ntpd stop

-- sincronizar con el servidor de dominio principal

 ntpdate -u 192.168.16.1

-- con el comando date verificar si está correctamente sincronizado

 date

-- iniciar el servicio ntp

 service ntpd start

-- verificar con que servidores se sincroniza

 ntpq -p
	remote       	refid  	st t when poll reach   delay   offset  jitter
 ==============================================================================
 192.168.16.1	.LOCL.       	1 u   23   64	3	0.321  286.450   1.394
 LOCAL(0)    	.LOCL.      	10 l   19   64	3	0.000	0.000   0.001

-- ver si existen los paquetes necesarios con el comando:

 rpm -qa |egrep -i '(krb5-workstation|samba-common|authconfig)'

Si no hay ningun resultado instalar con:

 yum install authconfig krb5-workstation samba-common

o si solo aparecen algunos instalar los que falten en el siguiente ejemplo solo falta samba-common

 krb5-workstation-1.6.1-62.el5
 authconfig-5.3.21-7.el5

y se instaló el paquete faltante con: [root@brontes ~]# yum install samba-common


-- instalar Squid

 yum install squid

-- Configurar Kerberos e ingresar el servidor Linux al dominio de Windows

 authconfig --enableshadow --enablemd5 --passalgo=md5 --krb5kdc=DSMTY01.dsmex --krb5realm=dsmex --smbservers=DSMTY01.dsmex --smbworkgroup=dsmex --enablewinbind --enablewinbindauth --smbsecurity=ads --smbrealm=dsmex --smbidmapuid="16777216-33554431" --smbidmapgid="16777216-33554431" --winbindseparator="+" --winbindtemplateshell="/bin/false" --enablewinbindusedefaultdomain --disablewinbindoffline --winbindjoin=lmoreno --disablewins --disablecache --enablelocauthorize --updateall

-- Comando para verificar si hay comunicación con el AD

 /usr/lib/squid/squid_ldap_auth -R -b "dc=dsmex" -D "cn=Luis Moreno 2,cn=Users,dc=dsmex" -w "passqordaqui" -f sAMAccountName=%s -h 100.10.65.1

-- verificar si se pueden ver los usuarios y los grupos

 wbinfo -u
 wbinfo -g

-- Modificar el archivo de configuración /etc/squid/squid.conf con parametros similares a: auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp --require-membership-of=dsmex+InternetAccess
auth_param ntlm children 5
auth_param ntlm keep_alive on
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl webserver src 100.10.65.50/255.255.255.255 # IP local servidor
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 995 587 12443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 909 # Firma digital
acl Safe_ports port 995 # POP entrada
acl Safe_ports port 587 # SMTP Salida
acl Safe_ports port 12443 # Fortigate
acl Safe_ports port 12100 # Nextel Facturacion
acl Safe_ports port 4100 # Profepa
acl CONNECT method CONNECT
http_access allow manager webserver
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
acl our_networks src 100.10.64.0/22 172.16.0.0/20
acl ntlm proxy_auth REQUIRED
http_access allow our_networks ntlm
http_access allow localhost
http_access deny all
icp_access allow all
http_port 3128
hierarchy_stoplist cgi-bin ?
access_log /var/log/squid/access.log squid
logfile_rotate 10
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
acl INSIDE_IP dst 100.10.64.0/22 172.16.0.0/20
always_direct allow INSIDE_IP
coredump_dir /var/spool/squid


cambiar ip en "acl webserver src" para ajustar a la IP del servidor local cambiar tambien las redes locales que tendran acceso

-- crear usuarios locales, ejemplo:

 adduser jgarcia -c" "Jair Garcia"
 passwd jgarcia

-- remover paquetes no necesarios (e inseguros) como cups

 yum remove cups

-- verificar si acepta las credenciales de un usuario en el grupo autorizado para salida a Internet

 ntlm_auth --require-membership-of='dsmex+InternetAccess' --username=jair.garcia --password=passwordaqui

-- reiniciar servicio squid

 service squid restart

Stopping squid: [FAILED] init_cache_dir /var/spool/squid... Starting squid: . [ OK ]


-- Establecer el servicio de seguridad a nivel permissive

 system-config-securitylevel-tui

-- abrir puerto de squid, dentro de la misma herramienta system-config-securitylevel-tui para abrir el puerto, escriba

 3128:tcp

y de click en ok

-- Video de instalación http://vimeo.com/16525582