Monografias.com > Sin categoría
Descargar Imprimir Comentar Ver trabajos relacionados

Manual de instalación de Linux para montar servidores (página 2)



Partes: 1, 2

SERVIDOR PROXY

Al servidor Proxy
también se le llama servidor de cache o de
aceleración, porque a parte de ser un medio de
protección de la intranet,
también permite acelerar el ingreso a la Internet de las estaciones
de trabajo.

Para funcionar como un medio de aceleración basta
que este servidor tenga una sola tarjeta de red,
pero ya con dos tarjetas de red
este servidor a parte de brindar aceleración
también se vuelve en un muy buen mecanismo de seguridad.

Para poder montar
un servidor PROXY en LINUX

Tenemos que verificar que en el sistema operativo
este instalado el SQUID. Los comandos para
realizar esta función
serian:

# rpm -q squid à
sirve para ver si esta instalado.

# rpm -ql squid à
sirve para ver los paquetes de squid.

# mcedit /etc/squid/squid.conf à sirve para configurar el
squid

Como configurar un servidor PROXY en
LINUX

Entramos al edit de esta forma: # mcedit
/etc/squid/squid.conf

Descomentar. Eso significa quitar el espacio en blanco y
el signo numeral.

Aproximadamente en la línea 54 se encuentra un
bloque de texto que dice
http_port 3128, lo descomentamos.

Aproximadamente en la línea 481 se encuentra un
bloque de texto que dice cache men 8MB, lo
descomentamos.

Aproximadamente en la línea 696 se encuentra un
bloque de texto que dice cache dir, lo descomentamos. En
el cache dir existen 100MB repartidos en 16 carpetas y dentro de
estas 16 existen 256 carpetas más.

Aproximadamente en la línea 703 se encuentra un
bloque de texto que dice cache_access_log, lo
descomentamos. Esto define la ruta donde estará el
archivo de la
bitácora.

Aproximadamente en la línea 711 se encuentra un
bloque de texto que dice cache_log, lo descomentamos. Esta
será la bitácora del cache.

Aproximadamente en la línea 721 se encuentra un
bloque de texto que dice cache_store_log, lo
descomentamos. Bitácora de almacenamiento,
en caso se este llenando el squid.

Aproximadamente en la línea 858 se encuentra un
bloque de texto que dice ftp_user, lo descomentamos. Sirve
para loguear usuarios.

Aproximadamente en la línea 873 se encuentra un
bloque de texto que dice ftp_passive on, lo descomentamos.
Para la transparencia de ficheros que están detrás
de un firewall.

Aproximadamente en la línea 1802 se encuentra un
bloque de texto que dice acl localhost y la línea
siguiente dice acl to_localhost. Damos un enter
entre estas dos líneas y procedemos a la
declaración de variables para
permitir o denegar accesos a ciertas páginas. Se declaran
las variables del siguiente modo:

acl mired src 192.168.200.0/24

acl denegados dstAdmin.microsoft.com
www.hi5.com

acl horaDia time MTWTF 8:00 –
13:00

acl horaTarde time MTWTF 16:00 –
20:00

acl videos urlpath_regex .avi$ .mp3$

Aproximadamente en la línea 1865 se encuentra un
bloque de texto que dice and finally deny damos un enter y
digitamos:

http_access deny denegados

http_access deny videos

http_access allow mired! HoraDia!
horaTarde!

http_access deny all

Se guardan cambios con la tecla f2 y se sale del editor
con la tecla f10.

En la pagina de comandos se ejecuta:

# service squid reload

# service squid status

# service squid start

A lo cual aparece un mensaje que dice lo
siguiente:

Inite_cache_dir /var/spool/squid.inicial…
[OK]

Ahora en las estaciones de trabajo con sistema operativo
XP entramos a las herramientas
de Internet, a la pestaña de conexión, Proxy,
puerto colocamos esto: 3128.

Y se puede cambiar a 65334 puertos para ser
usados.

Luego para visualizar a las páginas a las que
entran los usuarios, ejecutamos en la consola de comandos del
servidor en LINUX:

# tail –f /var/log/squid/access.log

Esto nos mostrará las páginas a las que
entran las estaciones de trabajo.

Para programar un Proxy transparente: FIREWALL
host virtual

Lo primero que debemos de tener en cuenta para montar un
FIREWALL es que necesitamos el squid + iptables, y
además que a la PC que tomaremos como servidor FIREWALL se
le debe de montar una segunda tarjeta de red. ETH0 la primera tarjeta
instalada junto con el sistema operativo y ETH1 la nueva tarjeta
de red, las cuales tendrán que ser configuradas de esta
forma:

ETH0 à
IP
publico

ETH1 à IP
privado

Además de estar instalado el squid,
también necesitamos que este instalado el IPTABLES. Este
se maneja en tablas, las cuales son:

Filter por defecto.

Nat paquetes que pasan.

Mangle aquellos que se quieren
modificar.

Las tablas son:

| IP origen | Puerto Origen | TCP
URP | IP destino | Puerto Destino
|

IPtables manipula la funcionabilidad de seguridad en
línea, su funcionamiento es en la capa de red

Para poder configurar el IPTABLES necesitamos descargar
un script desde Internet o saber cual es la codificación, la cual se tendrá que
guardar en el directorio OPT, el script se llama
firewall.txt o firewall1.txt.

Al establecer políticas
por defecto

iptables -P INPUT ACCEPT

iptables -P OUTPUT ACCEPT

iptables -P FORWARD ACCEPT

iptables -t nat -P PREROUTING ACCEPT

iptables -t nat -P POSTROUTING ACCEPT

iptables –L à lista el contenido de la tabla
filter.

Input à
entra al firewall.

Forward à
aqui se genera o procesa.

Output à ya
es el nivel de salida.

Iptables –L –T nat

Prerouting à aquí se tratan los paquetes
antes de entrar.

Postrouting à se tratan los paquetes
después de su ingreso.

Ahora procedemos a la configuración de los IPs
dentro del archivo firewall.txt a traves de editor de
consola:

# cd
/opt

# mcedit firewall

# ls -la à
sirve para visualizar lo que hay dentro de la
carpeta.

# chmod u+x firewall à sirve para volver ejecutable el
script.

La configuración de los IPs es en relación
a nuestra ETH0 y ETH1 ya que debemos de verificar muy bien hacia
donde se deben de mandar las restricciones y hacia donde se debe
de filtrar datos.

Una vez echa la configuración de IPs procedemos a
agregar las variables:

# cd /etc/squid

# mcedit squid.conf

Y aproximadamente en la línea 2206 y 2226
descomentamos y ponemos ON y colocamos:

#rpm -q iptables

Httpd_accel_host virtual

Httpd_accel_port 80

Httpd_accel_with_proxy on

Httpd_accel_user_host_header on

Ejemplo de script para firewall entre red-local e
Internet con servicios
abiertos de puerto 25, 110, y 1723. Aplicando Reglas de
Firewall

FLUSH de reglas

iptables -F

iptables -X

iptables -Z

iptables -t nat -F

iptables -t nat -X

iptables -t nat –Z

Establecemos política por
defecto

iptables -P INPUT ACCEPT

iptables -P OUTPUT ACCEPT

iptables -P FORWARD ACCEPT

iptables -t nat -P PREROUTING ACCEPT

iptables -t nat -P POSTROUTING ACCEPT

Empezamos a filtrar

REDIRECCIONES

Todo lo que venga por el exterior y vaya al puerto 80 lo
redirigimos a una maquina interna

#iptables -t nat -A PREROUTING -i eth0 -p tcp –dport
80 -j DNAT –to 192.168.10.12:80
à le configuramos el IP público
de la red.

Los accesos de un ip determinada a Terminal server se
redirigen e esa maquina

#iptables -t nat -A PREROUTING -s 221.23.124.181 -i
eth0 -p tcp –dport 3389 -j DNAT –to 192.168.10.12:3389

à le configuramos el IP
público de la red.

El localhost se deja (por ejemplo conexiones locales a
mysql)

iptables -A INPUT -i lo -j ACCEPT

Al firewall tenemos acceso desde la red local

iptables -A INPUT -s 192.168.100.0/23 -i eth1 -j
ACCEPT
à le configuramos
el IP privado de la red.

Abrimos el acceso a puertos de correo

Abrimos el puerto 25, hay que configurar bien el relay
del servidor SMTP

#iptables -A INPUT -s 0.0.0.0/0 -p tcp –dport 25 -j
ACCEPT

El protocolo SMTP
nos sirve para nomtar un servidor mail, vale decir que se cree el
más usado para este tipo de aplicaciones.

Abrimos el pop3

#iptables -A INPUT -s 0.0.0.0/0 -p tcp –dport 110 -j
ACCEPT

El protocolo pop3 nos sirve para nomtar un servidor
mail, o hasta para el funcionamiento de un FTP

Y abrimos el puerto pptpd para la ip del adsl de casa
del jefe

#iptables -A INPUT -s 211.45.176.24 -p tcp –dport
1723 -j ACCEPT

Los protocolos PPTP
sirven para montaje de VPNs, las cuales permiten la transferencia
de datos de forma segura y en ciertos casos es mucho más
económico para una
empresa.

Ahora con regla FORWARD filtramos el acceso de la red
local al exterior. Como se explica antes, a los paquetes que no
van dirigidos al propio firewall se les aplican reglas de
FORWARD

Aceptamos que vayan a puertos 80

iptables -A FORWARD -s 192.168.100.0/23 -i eth1 -p
tcp –dport 80 -j ACCEPT

iptables -A FORWARD -s 192.168.100.0/23 -i eth1 -p
tcp –dport 8080 -j ACCEPT

à le configuramos
el IP privados de la red.

Aceptamos que vayan a puertos https

iptables -A FORWARD -s 192.168.100.0/23 -i eth1 -p
tcp –dport 443 -j ACCEPT

Los puertos HTTPS permiten montar un servidor
WEB

Aceptamos que consulten los DNS

iptables -A FORWARD -s 192.168.100.0/23 -i eth1 -p
tcp –dport 53 -j ACCEPT

iptables -A FORWARD -s 192.168.100.0/23 -i eth1 -p
udp –dport 53 -j ACCEPT

Esto permite traducir el nombre de dominio a
dirección IP y viceversa.

Y denegamos el resto. Si se necesita alguno, ya
avisaran

iptables -A FORWARD -s 192.168.100.0/23 -i eth1 -j
DROP

Ahora hacemos enmascaramiento de la red local y
activamos el BIT DE FORWARDING (imprescindible!!!!!)

iptables -t nat -A PREROUTING -p tcp -s
192.168.100.0/23 –dport 1863 -j DNAT –to-destination
192.168.5.254

iptables -t nat -A PREROUTING -p tcp –dport 80 -j
REDIRECT –to-ports 3128

iptables -t nat -A POSTROUTING -s 192.168.100.0/23 -o
eth0 -j MASQUERADE

Con esto permitimos hacer forward de paquetes en el
firewall, o sea que otras maquinas puedan salir a traves del
firewall.

echo 1 >
/proc/sys/net/ipv4/ip_forward

Y ahora cerramos los accesos indeseados del
exterior:

Nota: 0.0.0.0/0 significa: cualquier red

Cerramos el rango de puerto bien conocido

iptables -A INPUT -s 0.0.0.0/0 -i eth0 -p tcp –dport
1:1024 -j DROP

iptables -A INPUT -s 0.0.0.0/0 -i eth0 -p udp –dport
1:1024 -j DROP

Cerramos un puerto de gestion: webmin

iptables -A INPUT -s 0.0.0.0/0 -i eth0 -p tcp –dport
10000 -j DROP

Y cerramos el puerto del servicio
PPTPD, solo abierto para el jefe.

iptables -A INPUT -s 0.0.0.0/0 -i eth0 -p tcp –dport
1723 -j DROP

echo " OK . Verifique que lo que se aplica con:
iptables -L -n"

Roberto Carlos Suing
Olivari.

SCRIPT
FIREWALL

#!/bin/sh

## SCRIPT de IPTABLES – ejemplo del
manual de
iptables

## Ejemplo de script para firewall entre
red-local e internet con servicios abiertos de puerto 25, 110, y
1723

## Pello Xabier Altadill
Izura

## www.pello.info –
pello[arroba]pello.info

echo -n Aplicando Reglas de
Firewall…

## FLUSH de reglas

iptables -F

iptables -X

iptables -Z

iptables -t nat -F

iptables -t nat -X

iptables -t nat -Z

## Establecemos politica por
defecto

iptables -P INPUT ACCEPT

iptables -P OUTPUT ACCEPT

iptables -P FORWARD ACCEPT

iptables -t nat -P PREROUTING
ACCEPT

iptables -t nat -P POSTROUTING
ACCEPT

## Empezamos a filtrar

## REDIRECCIONES

# Todo lo que venga por el exterior y
vaya al puerto 80 lo redirigimos a una maquina interna

#iptables -t nat -A PREROUTING -i eth0
-p tcp –dport 80 -j DNAT –to 192.168.10.12:80

# Los accesos de un ip determinada a
Terminal server se redirigen e esa maquina

#iptables -t nat -A PREROUTING -s
221.23.124.181 -i eth0 -p tcp –dport 3389 -j DNAT –to
192.168.10.12:3389

## Nota: eth0 es el interfaz conectado
al router y eth1
a la LAN

# El localhost se deja (por ejemplo
conexiones locales a mysql)

iptables -A INPUT -i lo -j
ACCEPT

# Al firewall tenemos acceso desde la
red local

iptables -A INPUT -s 192.168.100.0/23 -i
eth1 -j ACCEPT

## Abrimos el acceso a puertos de
correo

# Abrimos el puerto 25, hay que
configurar bien el relay del servidor SMTP

#iptables -A INPUT -s 0.0.0.0/0 -p tcp
–dport 25 -j ACCEPT

# Abrimos el pop3

#iptables -A INPUT -s 0.0.0.0/0 -p tcp
–dport 110 -j ACCEPT

# Y abrimos el puerto pptpd para la ip
del adsl de casa del jefe

#iptables -A INPUT -s 211.45.176.24 -p
tcp –dport 1723 -j ACCEPT

## Ahora con regla FORWARD filtramos el
acceso de la red local

## al exterior. Como se explica antes, a
los paquetes que no van dirigidos al

## propio firewall se les aplican reglas
de FORWARD

# Aceptamos que vayan a puertos
80

iptables -A FORWARD -s 192.168.100.0/23
-i eth1 -p tcp –dport 80 -j ACCEPT

iptables -A FORWARD -s 192.168.100.0/23
-i eth1 -p tcp –dport 8080 -j ACCEPT

# Aceptamos que vayan a puertos
https

iptables -A FORWARD -s 192.168.100.0/23
-i eth1 -p tcp –dport 443 -j ACCEPT

# Aceptamos que consulten los
DNS

iptables -A FORWARD -s 192.168.100.0/23
-i eth1 -p tcp –dport 53 -j ACCEPT

iptables -A FORWARD -s 192.168.100.0/23
-i eth1 -p udp –dport 53 -j ACCEPT

# Y denegamos el resto. Si se necesita
alguno, ya avisaran

iptables -A FORWARD -s 192.168.100.0/23
-i eth1 -j DROP

# Ahora hacemos enmascaramiento de la
red local y activamos el BIT DE FORWARDING
(imprescindible!!!!!)

iptables -t nat -A PREROUTING -p tcp -s
192.168.100.0/23 –dport 1863 -j DNAT –to-destination
192.168.5.254

iptables -t nat -A PREROUTING -p tcp
–dport 80 -j REDIRECT –to-ports 3128

iptables -t nat -A POSTROUTING -s
192.168.100.0/23 -o eth0 -j MASQUERADE

# Con esto permitimos hacer forward de
paquetes en el firewall, o sea que otras m?quinas puedan salir a
traves del firewall.

echo 1 >
/proc/sys/net/ipv4/ip_forward

## Y ahora cerramos los accesos
indeseados del exterior:

# Nota: 0.0.0.0/0 significa: cualquier
red

# Cerramos el rango de puerto bien
conocido

iptables -A INPUT -s 0.0.0.0/0 -i eth0
-p tcp –dport 1:1024 -j DROP

iptables -A INPUT -s 0.0.0.0/0 -i eth0
-p udp –dport 1:1024 -j DROP

# Cerramos un puerto de gesti?n:
webmin

iptables -A INPUT -s 0.0.0.0/0 -i eth0
-p tcp –dport 10000 -j DROP

# Y cerramos el puerto del servicio
PPTPD, solo abierto para el jefe.

iptables -A INPUT -s 0.0.0.0/0 -i eth0
-p tcp –dport 1723 -j DROP

Echo "OK. Verifique que lo que se aplica
con: iptables -L -n"

# Fin del script

 

 

 

Autor:

Roberto Carlos Suing Olivar

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente 

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter