miércoles, 24 de febrero de 2016

Squid3 + IPTABLES (Apuntes)

SQUID3

sudo service squid3 stop
[sudo] password for profes:
squid3 stop/waiting

crear sus directorios de caché:
sudo squid3 -z

sudo gedit /etc/squid3/squid.conf

3128 es el puerto de Squid y debemos indicar la dirección IP del servidor

http_port  192.168.1.150:3128 transparent


Si nuestra máquina tiene suficiente memoria, le quitamos la almohadilla a la opción cache_men, y utilizamos un valor coherente a nuestra máquina.

cache_mem 256 MB


La opción cache_dir y la ajustamos como en la siguiente línea, aunque aquí los valores de caché dependerán de nuestras preferencias y máquina.

cache_dir ufs /var/spool/squid3 2048 16 256


Y activamos las siguientes opciones, para asegurar que ningún usuario pueda acceder a los recursos gestionados por Squid.

cache_effective_user proxy
cache_effective_group proxy


Descomentamos la opción half_closed_clients y la dejamos en off, esto permitirá a Squid cerrar las peticiones de los clientes que se queden a medias cuando cierran la conexión TCP.

half_closed_clients off

Ahora limitamos el tamaño máximo de los objetos que se guardarán en memoria, esto puede ahorrarnos problemas con el tamaño de la caché. Descomentamos la siguiente línea y la dejamos en 1024 KB.

maximum_object_size 1024 KB

También vamos a indicar cuando debe Squid vaciar la caché, esto nos permitirá un mejor mantenimiento. Descomentamos las siguientes líneas.

cache_swap_low 90
cache_swap_high 95

En mi caso dejo los valores que nos dan por defecto. Como última modificación en las opciones de configuración de Squid, buscamos la opción memory_pools, la descomentamos y la ponemos en off.

memory_pools off

Esta opción, hará que Squid libere la memoria RAM que no esté utilizando.

Por último, tras la siguiente línea,

#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#

Añadiremos la regla para permitir el acceso a Internet de nuestra red interna.

acl ai1 src 192.168.1.0/24
http_access allow ai1

Y con esto ya podemos reiniciar Squid.

sudo service squid3 start

sudo service squid3 status

IPTABLES
Con sudo previamente:

# Limpia las reglas anteriores
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X

sudo -i
echo 1 > /proc/sys/net/ipv4/ip_forward
exit

# Politica de filtro por defecto
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT

# Acceso ilimitado a loop back
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT


# Establece el servidor como router para la red
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0  -j ACCEPT

# acceso ilimitado a la LAN
iptables -A INPUT -i eth0 -j ACCEPT
iptables -A OUTPUT -o eth0 -j ACCEPT


# Redirige las peticiones de la red interna hacia el proxy
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.1.150

# Redirige la entrada al proxy
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128


# Redirige la entrada al proxy
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128


Guarda y recupera reglas de iptables
sudo iptables-save > transparente150.txt

sudo  iptables-restore < transparente150.txt

cat /var/log/squid3/access.log
/etc/squid3/squid.conf
Squid (3) configuracion
/var/log/squid3/access.log
Squid (3) registro de accesos
/var/spool/squid3
Squid (3) cache_dir directorio de caché

IPTABLES

Sintaxis de IPTABLES

sudo iptables -L

sudo iptables -A INPUT -p TCP --dport 21 -j ACCEPT

sudo iptables -P INPUT ACCEPT

sudo iptables -A INPUT -i eth0 -p tcp --dport 1:1024 -j DROP

sudo iptables -P INPUT DROP

sudo iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT

sudo iptables -L

sudo iptables -F 


IPTABLES Caso Practico 1

interconexión de redes privadas con redes públicas.

Comprobación o Instalación de iptables
iptables -V

iptables v1.4.21


https://localhost:10000/

Red  /     Cortafuegos Linux    /   iptables.up.rules

sudo gedit /etc/iptables.up.rules


IPTABLES Caso Practico 2

sudo iptables -L

sudo iptables -F

sudo iptables -P INPUT ACCEPT
sudo iptables -P OUTPUT ACCEPT
sudo iptables -P FORWARD ACCEPT

sudo iptables -A INPUT -i lo -j ACCEPT

sudo iptables -A OUTPUT -o lo -j ACCEPT


sudo iptables -A INPUT -s 192.168.1.100 -j ACCEPT
sudo iptables -A INPUT -s 192.168.1.115 -p tcp --dport 22 -j ACCEPT


sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 1000 -j DROP


sudo iptables -A INPUT -i eth0 -p tcp --dport 1:1024 -j ACCEPT

sudo iptables -L

https://localhost:10000/

OPENSSL

Terminal Linux-Ubuntu
(Antes de comenzar, codificar usuario y contraseña en base64)

openssl s_client -crlf -connect smtp.gmail.com:465


220 mx.google.com ESMTP hu8sm5892850wib.6

EHLO smtp.gmail.com
250-smtp.gmail.com at your service, [92.59.71.113]
250-SIZE 35882577
250-8BITMIME
250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-CHUNKING
250 SMTPUTF8

AUTH LOGIN
334 VXNlcm7hbWU6
w7VyctmkMTIxMoBnb76pbC5jb2fK
334 UGFzc5dvcmQ6
xpluYXNzdf8yZA3=

235 2.7.0 Accepted

MAIL FROM:<s.lastra92@gmail.com>
250 2.1.0 OK i196sm27146371wmf.23 - gsmtp


rcpt to: <sersmr1516@gmail.com>
250 2.1.5 OK i196sm27146371wmf.23 - gsmtp

DATA
354  Go ahead i196sm27146371wmf.23 - gsmtp

Subject: prueba
Esto es el cuerpo del mensaje. Mandado con SMTP y OpenSSL desde gmail

Un saludo

.

250 2.0.0 OK 1453332614 i196sm27146371wmf.23 - gsmtp

quit
221 2.0.0 closing connection i196sm27146371wmf.23 - gsmtp
read:errno=0

miércoles, 10 de febrero de 2016

Telnet

Telne

Pruebas con Telnet en Windows



Pruebas con Telnet en Ubuntu
Enviamos desde Terminal un mail de prueba a nuestra cuenta de correo:

Ahora comprobamos que el mensaje ha llegado al destino en GMAIL:

Aquí enviando un mensaje a la cuenta del profesor, sersmr1516@gmail.com