0% encontró este documento útil (0 votos)
117 vistas33 páginas

Guía de Configuración de PacketFence

Guia de configuracion de PacketFence, que es un NAC - Network Acces Control, Permite controlar los equipos que se conectan a una red para mejorar la seguridad.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
117 vistas33 páginas

Guía de Configuración de PacketFence

Guia de configuracion de PacketFence, que es un NAC - Network Acces Control, Permite controlar los equipos que se conectan a una red para mejorar la seguridad.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

 

ANEXO C INSTALACIÓN Y
CONFIGURACIÓN DE
PACKETFENCE 

1. Pre Requisitos 
Para la instalación de PacketFence debemos instalar las herramientas necesarias para el
funcionamiento completo de la misma.

Servidor SNM 
Una de las herramientas fundamentales para la comunicación con los equipos de red y
PacketFence es SNMP para esto instalaremos un servidor snmp en el mismo servidor en la
cual funciona la herramienta.

  Para la instalación de snmp lo realizamos mediante la línea


yum -y install net-snmp net-snmp-utils

  Realizado la instalación con la herramienta yum procedemos a la configuración. En


el archivo de configuración creamos una comunidad con el nombre nac que es tanto
 
 

de lectura como de escritura. El archivo de configuración que debemos modificar se


encuentra en el directorio /etc/snmp/[Link]

# First, map the community name "public" into a "security


name"
# [Link] source community
#com2sec notConfigUser default public
com2sec local [Link]/32 nac
com2sec red [Link]/24 nac 
([Link]/24 )
####
# Second, map the security name into a group name:  
#  groupName  securityModel securityName 
group  gplocal v1  local 
group  gplocal v2c  local 
group  gplocal usm  local 

group  gpred  v1  red 


group  gpred  v2c  red 
group  gpred  usm  red 

####
# Third, create a view for us to let the group have rights
to:
# Make at least snmpwalk -v 1 localhost -c public system fast
again.
#name incl/excl subtree mask(optional)
#view systemview included .[Link].2.1.1 
#view systemview included .[Link].[Link].1 
view all included .1 80

####
# Finally, grant the group read-only access to the systemview
view.

#group context [Link] [Link] prefix read write notif


#access notConfigGroup "" any noauth exact
#systemview none none 
access  gplocal ""  any  noauth  exact all all all 
access  gpred ""  any  noauth  exact all all all 

  Creada la comunidad nac procedemos a levantar el servicio y configurarlo para que


inicie con el SO.


service snmpd start
chkconfig snmpd on
 
 

  Para probar el correcto funcionamiento de la comunidad SNMP “nac” que se creó


con el siguiente comando.
snmpwalk -v 1 [Link] -c nac system

Servidor MYSQL 

  La herramienta PacketFence funciona con una base de datos Mysql para eso
debemos instalar el servicio con el comando yum.
yum install mysql-server mysql.

  Se debe levantar el servicio de mysql para la base de datos que va a utilizar la


herramienta. Debemos poner contraseña de administración para mysql y
configuramos para que siempre inicie el servicio con el sistema operativo.

service mysqld start


mysqladmin -u root password @m@pol@_501 
chkconfig mysqld on

Switchs: 

  Configuración de SNMP:
Accediendo al switch al que se conectara con PacketFencey en modo de
configuración realizamos lo siguiente:
snmp-server community nac RW 10
snmp-server enable traps port-security 
snmp-server enable traps port-security trap-rate 1
snmp-server host [Link] version 2c nac port- 
security 

  Configurando las Interfaces:


Para administrar las interfaces de cada switch se necesita port security en cada
interfaz
 
 

interface FastEthernet0/23
switchport access vlan 80
switchport mode access
switchport port-security maximum 1 vlan access 
switchport port-security 
switchport port-security violation restrict
switchport port-security mac-address [Link]
speed 100
duplex full

 Nota. [Link] es el número de ifindex de la interfaz, en este caso seria 1.0023 por
la interfaz F 0/23

  Configuración del Firewall: 


Para que funcione correctamente el portal captivo de la herramienta PacketFence. Se
realizó un script para agregar las reglas necesarias para el firewall:

#!/bin/sh

##-------------LIBERAR REGLAS-------------------------------------
iptables -F
iptables -X
iptables -Z
iptables -t nat -F
iptables -t mangle -F

##----POLÍTICA POR DEFECTO DROP (RECHAZAR TODO) ---------


iptables -P INPUT DROP
iptables -P OUTPUT DROP 
iptables -P FORWARD DROP
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT 

##--------------------REGLAS DEL FIREWALL----------------

#---------------------PERMITIR TODO A LOOPBACK--------------------


iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT 

#-------VLANS PERMITIDAS PARA ACCEDER AL SERVIDOR--------------


#Vlan 2
iptables -A INPUT -i eth1.2 -j ACCEPT
iptables -A OUTPUT -o eth1.2 -j ACCEPT 
#Vlan 3
 
 

iptables -A INPUT -i eth1.3 -j ACCEPT


iptables -A  OUTPUT  -o  eth1.3  -j  ACCEPT 
#Vlan 4 
iptables  -A  INPUT  -i  eth1.4  -j  ACCEPT 
iptables -A  OUTPUT  -o  eth1.4  -j  ACCEPT 
#Vlan 5 
iptables  -A  INPUT  -i  eth1.5  -j  ACCEPT 
iptables -A  OUTPUT  -o  eth1.5  -j  ACCEPT 
#Vlan 6 
iptables  -A  INPUT  -i  eth1.6  -j  ACCEPT 
iptables -A  OUTPUT  -o  eth1.6  -j  ACCEPT 
#Vlan 7 
iptables  -A  INPUT  -i  eth1.7  -j  ACCEPT 
iptables -A  OUTPUT  -o  eth1.7  -j  ACCEPT 
#Vlan 8 
iptables  -A  INPUT  -i  eth1.8  -j  ACCEPT 
iptables  -A  OUTPUT  -o  eth1.8  -j  ACCEPT 

#--------INTERNET PARA EL SERVIDOR------------------


#http
iptables -A INPUT -p tcp -m tcp --sport 80 -m state --state
RELATED,ESTABLISHED -j ACCEPT 
iptables -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT
#https
iptables -A INPUT -p tcp -m tcp --sport 443 -m state --state 
RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --dport 443 -j ACCEPT

#----CONSULTAS A LOS SERVIDORES DNS DE INTERNET----------------

DNS1=[Link] #Primer Dns externo


DNS2= [Link] #Segundo Dns externo

# Permitimos la consulta a un primer DNS desde el firewall


iptables -A INPUT -s $DNS1 -p udp -m udp --sport 53 -j ACCEPT
iptables -A OUTPUT -d $DNS1 -p udp -m udp --dport 53 -j ACCEPT

# Permitimos la consulta a un segundo DNS


iptables -A INPUT -s $DNS2 -p udp -m udp --sport 53 -j ACCEPT
iptables -A OUTPUT -d $DNS2 -p udp -m udp --dport 53 -j ACCEPT 

#-------------COMUNICACIÓN PARA LAS VLANS-------------------------

#VARIABLES DE LAS VLANS


VLAN2=[Link]/24
VLAN3=[Link]/24 
VLAN4=[Link]/24
VLAN5=[Link]/24
VLAN6=[Link]/24 
 
 

VLAN7=[Link]/24
VLAN8=[Link]/24

#FORWARD PARA PERMITIR NAVEGACIÓN POR INTERNET DE LAS VLANS PERMITIDAS


#Las vlans permitidas son de la Vlan 2 a la 8 

#------VLAN 2------

# Forward puerto 80
iptables -t filter -A FORWARD -i eth1.2 -o eth0 -s $VLAN2 -d 0/0 -p
tcp --dport 80 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.2 -d $VLAN2 -s 0/0 -p
tcp --sport 80 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Forward puerto 53 
iptables -t filter -A FORWARD -i eth1.2 -o eth0 -s $VLAN2 -d 0/0 -p
udp --dport 53 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.2 -d $VLAN2 -s 0/0 -p 
udp --sport 53 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Forward puerto 443 
iptables -t filter -A FORWARD -i eth1.2 -o eth0 -s $VLAN2 -d 0/0 -p
tcp --dport 443 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.2 -d $VLAN2 -s 0/0 -p 
tcp --sport 443 -m state --state RELATED,ESTABLISHED -j ACCEPT
#Forward a la Vlan de Sistemas
iptables -t filter -A FORWARD -i eth1.2 -o eth1.6 -s $VLAN2 -d $VLAN6 
-j ACCEPT
iptables -t filter -A FORWARD -i eth1.6 -o eth1.2 -d $VLAN2 -s $VLAN6
-m state --state RELATED,ESTABLISHED -j ACCEPT 

#------VLAN 3------

# Forward puerto 80
iptables -t filter -A FORWARD -i eth1.3 -o eth0 -s $VLAN3 -d 0/0 -p 
tcp --dport 80 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.3 -d $VLAN3 -s 0/0 -p
tcp --sport 80 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Forward puerto 53
iptables -t filter -A FORWARD -i eth1.3 -o eth0 -s $VLAN3 -d 0/0 -p
udp --dport 53 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.3 -d $VLAN3 -s 0/0 -p
udp --sport 53 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Forward puerto 443 
iptables -t filter -A FORWARD -i eth1.3 -o eth0 -s $VLAN3 -d 0/0 -p
tcp --dport 443 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.3 -d $VLAN3 -s 0/0 -p
tcp --sport 443 -m state --state RELATED,ESTABLISHED -j ACCEPT
#Forward a la Vlan de Sistemas 
iptables -t filter -A FORWARD -i eth1.3 -o eth1.6 -s $VLAN3 -d $VLAN6
-j ACCEPT
iptables -t filter -A FORWARD -i eth1.6 -o eth1.3 -d $VLAN3 -s $VLAN6 
-m state --state RELATED,ESTABLISHED -j ACCEPT
 
 

#------VLAN 4-------

# Forward puerto 80
iptables -t filter -A FORWARD -i eth1.4 -o eth0 -s $VLAN4 -d 0/0 -p 
tcp --dport 80 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.4 -d $VLAN4 -s 0/0 -p 
tcp --sport 80 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Forward puerto 53
iptables -t filter -A FORWARD -i eth1.4 -o eth0 -s $VLAN4 -d 0/0 -p 
udp --dport 53 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.4 -d $VLAN4 -s 0/0 -p
udp --sport 53 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Forward puerto 443
iptables -t filter -A FORWARD -i eth1.4 -o eth0 -s $VLAN4 -d 0/0 -p
tcp --dport 443 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.4 -d $VLAN4 -s 0/0 -p
tcp --sport 443 -m state --state RELATED,ESTABLISHED -j ACCEPT
#Forward a la Vlan de Sistemas 
iptables -t filter -A FORWARD -i eth1.4 -o eth1.6 -s $VLAN4 -d $VLAN6
-j ACCEPT 
iptables -t filter -A FORWARD -i eth1.6 -o eth1.4 -d $VLAN4 -s $VLAN6
-m state --state RELATED,ESTABLISHED -j ACCEPT

#------VLAN 5-------

# Forward puerto 80
iptables -t filter -A FORWARD -i eth1.5 -o eth0 -s $VLAN5 -d 0/0 -p
tcp --dport 80 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.5 -d $VLAN5 -s 0/0 -p
tcp --sport 80 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Forward puerto 53
iptables -t filter -A FORWARD -i eth1.5 -o eth0 -s $VLAN5 -d 0/0 -p
udp --dport 53 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.5 -d $VLAN5 -s 0/0 -p
udp --sport 53 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Forward puerto 443 
iptables -t filter -A FORWARD -i eth1.5 -o eth0 -s $VLAN5 -d 0/0 -p
tcp --dport 443 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.5 -d $VLAN5 -s 0/0 -p 
tcp --sport 443 -m state --state RELATED,ESTABLISHED -j ACCEPT
#Forward a la Vlan de Sistemas
iptables -t filter -A FORWARD -i eth1.5 -o eth1.6 -s $VLAN5 -d $VLAN6 
-j ACCEPT
iptables -t filter -A FORWARD -i eth1.6 -o eth1.5 -d $VLAN5 -s $VLAN6 
-m state --state RELATED,ESTABLISHED -j ACCEPT

#------VLAN 6-------

# Forward puerto 80
iptables -t filter -A FORWARD -i eth1.6 -o eth0 -s $VLAN6 -d 0/0 -p 
tcp --dport 80 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.6 -d $VLAN6 -s 0/0 -p
tcp --sport 80 -m state --state RELATED,ESTABLISHED -j ACCEPT
 

# Forward puerto 53
iptables -t filter -A FORWARD -i eth1.6 -o eth0 -s $VLAN6 -d 0/0 -p
udp --dport 53 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.6 -d $VLAN6 -s 0/0 -p 
udp --sport 53 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Forward puerto 443 
iptables -t filter -A FORWARD -i eth1.6 -o eth0 -s $VLAN6 -d 0/0 -p
tcp --dport 443 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.6 -d $VLAN6 -s 0/0 -p 
tcp --sport 443 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Forward puerto 1863 (Messenger)
iptables -t filter -A FORWARD -i eth1.6 -o eth0 -s $VLAN6 -d 0/0 -p 
tcp --dport 1863 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.6 -d $VLAN6 -s 0/0 -p
tcp --sport 1863 -m state --state RELATED,ESTABLISHED -j ACCEPT

#------VLAN 7-------

# Forward puerto 80
iptables -t filter -A FORWARD -i eth1.7 -o eth0 -s $VLAN7 -d 0/0 -p
tcp --dport 80 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.7 -d $VLAN7 -s 0/0 -p
tcp --sport 80 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Forward puerto 53 
iptables -t filter -A FORWARD -i eth1.7 -o eth0 -s $VLAN7 -d 0/0 -p
udp --dport 53 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.7 -d $VLAN7 -s 0/0 -p 
udp --sport 53 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Forward puerto 443 
iptables -t filter -A FORWARD -i eth1.7 -o eth0 -s $VLAN7 -d 0/0 -p
tcp --dport 443 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.7 -d $VLAN7 -s 0/0 -p 
tcp --sport 443 -m state --state RELATED,ESTABLISHED -j ACCEPT
#Forward a la Vlan de Sistemas
iptables -t filter -A FORWARD -i eth1.7 -o eth1.6 -s $VLAN7 -d $VLAN6 
-j ACCEPT
iptables -t filter -A FORWARD -i eth1.6 -o eth1.7 -d $VLAN7 -s $VLAN6
-m state --state RELATED,ESTABLISHED -j ACCEPT 

#------VLAN 8-------

# Forward puerto 80
iptables -t filter -A FORWARD -i eth1.8 -o eth0 -s $VLAN8 -d 0/0 -p
tcp --dport 80 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.8 -d $VLAN8 -s 0/0 -p 
tcp --sport 80 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Forward puerto 53
iptables -t filter -A FORWARD -i eth1.8 -o eth0 -s $VLAN8 -d 0/0 -p 
udp --dport 53 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.8 -d $VLAN8 -s 0/0 -p
udp --sport 53 -m state --state RELATED,ESTABLISHED -j ACCEPT
 

# Forward puerto 443


iptables -t filter -A FORWARD -i eth1.8 -o eth0 -s $VLAN8 -d 0/0 -p
tcp --dport 443 -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1.8 -d $VLAN8 -s 0/0 -p 
tcp --sport 443 -m state --state RELATED,ESTABLISHED -j ACCEPT
#Forward a la Vlan de Sistemas 
iptables -t filter -A FORWARD -i eth1.8 -o eth1.6 -s $VLAN8 -d $VLAN6
-j ACCEPT
iptables -t filter -A FORWARD -i eth1.6 -o eth1.8 -d $VLAN8 -s $VLAN6 
-m state --state RELATED,ESTABLISHED -j ACCEPT

#---PERMITIR REENVIÓ DEL SQUID------------------------

#Permitir el proxy, necesario después del reenvío.

#------VLAN 2------
iptables -t filter -A INPUT -p tcp --dport 3128 -i eth1.2 -s $VLAN2 -j 
ACCEPT
iptables -t filter -A OUTPUT -p tcp --sport 3128 -o eth1.2 -d $VLAN2 - 
m state --state RELATED,ESTABLISHED -j ACCEPT

#------VLAN 3------
iptables -t filter -A INPUT -p tcp --dport 3128 -i eth1.3 -s $VLAN3 -j
ACCEPT
iptables -t filter -A OUTPUT -p tcp --sport 3128 -o eth1.3 -d $VLAN3 - 
m state --state RELATED,ESTABLISHED -j ACCEPT

#------VLAN 4------
iptables -t filter -A INPUT -p tcp --dport 3128 -i eth1.4 -s $VLAN4 -j
ACCEPT 
iptables -t filter -A OUTPUT -p tcp --sport 3128 -o eth1.4 -d $VLAN4 -
m state --state RELATED,ESTABLISHED -j ACCEPT

#------VLAN 5------
iptables -t filter -A INPUT -p tcp --dport 3128 -i eth1.5 -s $VLAN5 -j
ACCEPT 
iptables -t filter -A OUTPUT -p tcp --sport 3128 -o eth1.5 -d $VLAN5 -
m state --state RELATED,ESTABLISHED -j ACCEPT

#------VLAN 6------
iptables -t filter -A INPUT -p tcp --dport 3128 -i eth1.6 -s $VLAN6 -j
ACCEPT 
iptables -t filter -A OUTPUT -p tcp --sport 3128 -o eth1.6 -d $VLAN6 -
m state --state RELATED,ESTABLISHED -j ACCEPT

#------VLAN 7------
iptables -t filter -A INPUT -p tcp --dport 3128 -i eth1.7 -s $VLAN7 -j 
ACCEPT
iptables -t filter -A OUTPUT -p tcp --sport 3128 -o eth1.7 -d $VLAN7 -
m state --state RELATED,ESTABLISHED -j ACCEPT
 

#------VLAN 8------
iptables -t filter -A INPUT -p tcp --dport 3128 -i eth1.8 -s $VLAN8 -j
ACCEPT
iptables -t filter -A OUTPUT -p tcp --sport 3128 -o eth1.8 -d $VLAN8 - 
m state --state RELATED,ESTABLISHED -j ACCEPT

#-----NAVEGACIÓN DEL SQUID---------------------


#Permitir a squid salida. 
iptables -A INPUT -p tcp -m tcp --sport 3128 -m state --state
RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --dport 3128 -j ACCEPT 

#CONFIGURACIÓN DEL FIREWALL PARA LAS VLANS de NAC


VLAN70=[Link]/24
VLAN80=[Link]/24
IPVLAN70=[Link] 
IPVLAN80=[Link]

#Aceptar consultas dns, http y https de las Vlan's 70 y 80

#puerto 53 (dns)
iptables -A INPUT -p udp -m udp --dport 53 -s $VLAN70 -d $IPVLAN70 -i
eth2 -j ACCEPT
iptables -A OUTPUT -p udp -m udp --sport 53 -s $IPVLAN70 -d $VLAN70 -o 
eth2 -j ACCEPT
#puerto 80
iptables -A INPUT -p tcp -m tcp --dport 80 -s $VLAN70 -d $IPVLAN70 -i 
eth2 -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --sport 80 -s $IPVLAN70 -d $VLAN70 -o 
eth2 -j ACCEPT
#puerto 443
iptables -A INPUT -p tcp -m tcp --dport 443 -s $VLAN70 -d $IPVLAN70 -i 
eth2 -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --sport 443 -s $IPVLAN70 -d $VLAN70 -
o eth2 -j ACCEPT
#Vlan 80
#puerto 53(dns)
iptables -A INPUT -p udp -m udp --dport 53 -s $VLAN80 -d $IPVLAN80 -i 
eth3 -j ACCEPT
iptables -A OUTPUT -p udp -m udp --sport 53 -s $IPVLAN80 -d $VLAN80 -o
eth3 -j ACCEPT
#puerto 80
iptables -A INPUT -p tcp -m tcp --dport 80 -s $VLAN80 -d $IPVLAN80 -i 
eth3 -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --sport 80 -s $IPVLAN80 -d $VLAN80 -o
eth3 -j ACCEPT
#puerto 443
iptables -A INPUT -p tcp -m tcp --dport 443 -s $VLAN80 -d $IPVLAN80 -i
eth3 -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --sport 443 -s $IPVLAN80 -d $VLAN80 -
o eth3 -j ACCEPT
 
 

#----------CONFIGURACIÓN DE NAT PARA SQUID----------------


SQUIDIP=[Link] # IP de internet

#Nat de Internet hacia la Red Interna de los puertos http(80) y


https(443)
iptables -t nat -A PREROUTING -s $SQUIDIP -p tcp --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -s $SQUIDIP -p tcp --dport 443 -j ACCEPT

#Ruteo de las Red Internas con peticiones http (80) 


iptables -t nat -A PREROUTING -s  $VLAN2  -p  tcp  --dport  80  -j  DNAT  -- 
to-destination $SQUIDIP:3128 
iptables -t nat -A PREROUTING  -s  $VLAN3  -p  tcp  --dport  80  -j  DNAT  -- 
to-destination $SQUIDIP:3128 
iptables -t nat -A PREROUTING  -s  $VLAN4  -p  tcp  --dport  80  -j  DNAT  -- 
to-destination $SQUIDIP:3128 
iptables -t nat -A PREROUTING -s  $VLAN5  -p  tcp  --dport  80  -j  DNAT  -- 
to-destination $SQUIDIP:3128 
iptables -t nat -A PREROUTING -s  $VLAN6  -p  tcp  --dport  80  -j  DNAT  -- 
to-destination $SQUIDIP:3128 
iptables -t nat -A PREROUTING  -s  $VLAN7  -p  tcp  --dport  80  -j  DNAT  -- 
to-destination $SQUIDIP:3128 
iptables -t nat -A PREROUTING  -s  $VLAN8  -p  tcp  --dport  80  -j  DNAT  -- 
to-destination $SQUIDIP:3128 

#Enmascaramiento de las redes internas con permisos de salida a


Internet
iptables -t nat -A POSTROUTING -s $VLAN2 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s $VLAN3 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s $VLAN4 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s $VLAN5 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s $VLAN6 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s $VLAN7 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s $VLAN8 -o eth0 -j MASQUERADE

#Negar el resto peticiones a squid (3128)


iptables -t mangle -A PREROUTING -p tcp --dport 3128 -j DROP 

2. INSTALACIÓN 
Para proceder a la instalación de la herramienta tenemos que seguir los siguientes pasos:

  Importamos la key o llave para poder realizar las descargas del repositorio de DAG
el cual contiene un sin número de programas pero el nos interesa es la herramienta
Packetfence.

wget [Link]
 
 

rpm --import [Link]

  Descargamos el paquete rpmforge de la siguiente página web. Para nuestro caso


utilizamos el paquete [Link].x86_64.rpm.

[Link]

wg

  Instalar el paquete rpmforge.


rpm -ivh [Link].x86_64.rpm

  Deshabilitar el repositorio por defecto


gedit/etc/[Link].d/[Link]
 
 

  También debemos instalar los repositorios de EPEL


rpm -Uvh 
[Link]
[Link]

  Crear el repositorio para la instalación de Packetfence


gedit/etc/[Link].d/[Link]

  Dentro del archivo creamos el repositorio poniendo las siguientes líneas:


[PacketFence] name=PacketFence Repository 


baseurl=[Link]
$basearch
gpgcheck=0
enabled=0

  Instalamos PacketFence mediante la herramienta yum de Centos:


yum groupinstall --enablerepo=PacketFence,rpmforge


Packetfence-complete
 
 

Esto instalara PacketFence con todas las dependencias necesarias para que esta
funcione.

  Accedemos al directorio de PacketFence


cd /usr/local/pf/

  Completamos la instalación ejecutando el archivo


./[Link]

  Al ejecutar el script veremos la siguiente captura en la que renunciamos a pedir


garantía por datos perdidos por el uso del software.

  El siguiente paso es aceptar la creación de la base de datos de PacketFence (Por este


motivo hay que iniciar y configurar el servicio de mysql previamente).


 
 
 
 

  Después pide la creación de certificados digitales para las páginas web de


administración y configuración de PacketFence.


 
 

  El siguiente paso son datos opcionales sobre todo informativos


  Continuando con la ejecución del script debemos configurar el usuario


administrador.
 
 

  El siguiente paso es actualizar las amenazas que puede detectar la herramienta snort.

  Actualizamos el listado de los diferentes tipos de Sistemas operativos que se pueden


detectar con DHCP.


 
 

  En el siguiente paso se actualiza los prefijos OUI y con este paso finalizamos con el
script de instalación de PacketFence.

3. Configuración de la herramienta 

  Ejecutamos el script para configurar la herramientaubicada en el directorio raíz de la


herramienta.
./[Link]
 
 

  El siguiente paso es elegir qué tipo de configuración queremos; para nuestro caso

utilizamos la opción template (plantilla) y la opción de registro y detección.

  El siguiente paso es la configuración general. Primero establecemos el Nombre del


Dominio y el nombre del Host.

  Luego se configura los servidores DNS y DHCP existentes en la red la institución.



 
 

  Enseguida nos pide la interface de red que vamos a utilizar para administración de

la herramienta.

  El siguiente paso es configurar los parámetros de la red de registro.



 
 

  Continuando se configura los parámetro de la red de cuarentena.

  Por último se configura las la interfaz de para la captura de dispositivos de red y las
notificaciones que envía la herramienta.

4. Configuración de los archivos de configuración 

  Crear o cambiar un usuario para administrar la interfaz web:


htpasswd /usr/local/pf/conf/[Link] admin

  Agregar la conexión de la BD al archivo de configuración:


El archivo de configuración general
/usr/local/pf/conf/[Link]
 
 

Se agrega las lineas de Conexión a la BD:


[database]
pass=123456
db=pf
user=pf
port=3306
host=localhost 

  Levantamos el servicio de packetfence y para que inicie:


service packetfence start

Selección del modo de registro:


Por defecto es local (por medio de un archivo plano), si se desea puede ser por otros
métodos como se muestra en la imagen:

  Definición de Switchs:
Se puede hacer por interfaz web o configurar el archivo:
/usr/local/pf/conf/[Link]

En este archivo se agregan los switchs con los que se desea trabajar. Asi:
[[Link]]
type=Cisco::Catalyst_2960
mode=production
vlans=2,3,4,5,6,8,70,80
normalVlan=6
registrationVlan=80
isolationVlan=70
macDetectionVlan=6
guestVlan=80
customVlan1=2 
customVlan2=3
customVlan3=4
customVlan4=5
customVlan5=8
cliPwd=tulipan
cliEnablePwd=tulipan
SNMPVersionTrap=2c
SNMPCommunityTrap=nac
SNMPVersion=2c
SNMPCommunityRead=nac
 
 

SNMPCommunityWrite=nac
uplink=10018,10019,10020,10021,10022,10024,10025,10046,1
0101,10102 

Configuración del DNS: 


El servidor DNS no se configura como se debe tiene un bug por lo tanto nos toca configurar
manualmente para lo cual nos ubicamos en la carpeta donde se encuentran los archivos de
configuración:

/usr/local/pf/conf/[Link]
/usr/local/pf/conf/[Link] 

Configuramos los archivos named de acuerdo a nuestras redes: 


  DNS de Cuarentena:
; Isolation network DNS configuration 
; This file is manipulated on PacketFence's   startup before 
being given to named  
$TTL 3600 
. IN SOA %%hostname%%. %%incharge%% (  
2009020901 ; serial 
10800 ; refresh 
3600 ; retry 
604800 ; expire
86400 ; default_ttl 

IN  NS  %%hostname%%. 
*.  IN  A [Link] 
IN  MX  5 %%hostname%%. 

[Link].[Link]. IN PTR %%hostname%% 

  DNS de la red de Registro:


; Registration network DNS configuration 
; This file is manipulated on PacketFence's   startup before 
being given to named  
$TTL 3600 
. IN SOA %%hostname%%. %%incharge%% (  
2009020901 ; serial 
10800 ; refresh 
3600 ; retry
604800 ; expire 
86400 ; default_ttl 
)
 
 

IN  NS  %%hostname%%. 


*.  IN  A [Link] 
IN  MX  5 %%hostname%%. 

[Link].[Link]. IN PTR %%hostname%%

  Asignación de Vlans según la categoría en la que se encuentre el equipo:

Para esto debemos editar el archivo de configuración


/usr/local/pf/lib/pf/vlan/[Link] 

Este archivo modificamos de acuerdo a las VLAN’s necesarias.


#Codigo para asignar vlans
sub getNormalVlan {my ($this, $switch, $ifIndex, $mac,
$node_info, $connection_type, $user_name, $ssid) = @_;
my $logger = Log::Log4perl->get_logger(); 

# Asignacion de vlans por categoria


if (defined($node_info->{'category'}) && lc($node_info- 
>{'category'}) eq "penales") { 
return $switch->getVlanByName('customVlan1');

if (defined($node_info->{'category'}) && lc($node_info- 
>{'category'}) eq "ninez") {
return $switch->getVlanByName('customVlan2'); 

if (defined($node_info->{'category'}) && lc($node_info- 
>{'category'}) eq "apoyo") {
return $switch->getVlanByName('customVlan3'); 

if (defined($node_info->{'category'}) && lc($node_info-
>{'category'}) eq "civiles") { 
return $switch->getVlanByName('customVlan4'); 
}
if (defined($node_info->{'category'}) && lc($node_info- 
>{'category'}) eq "otrosjuzgados") 
{
return $switch->getVlanByName('customVlan5'); 

return $switch->getVlanByName('normalVlan');#si la vlan no  
está en una categoria especifica vlan 6

 
 

  Agregar Usuarios a un archivo plano para el registro:


Para agregar un usuario debemos ejecutar el siguiente comando

Para el primer usuario se crea así, debido a que se necesita crear el archivo.
htpasswd -c /usr/local/pf/conf/[Link] newuser

Los siguientes usuarios solamente de esta manera


htpasswd /usr/local/pf/conf/[Link] newuser

  Configurar el Idioma a español en Apache:


En el archivo de configuración /usr/local/pf/conf/[Link]

Debemos modificar la siguiente linea:


AddDefaultCharset ISO-8859-1

Por lo siguiente
AddDefaultCharset UTF-8

Y agregar la siguiente linea


DefaultLanguage es

Despues de
DirectoryIndex [Link] [Link] [Link]

  Registro de Sucesos

Los archivos de registros de sucesos o archivos logs de packetfence son los


siguientes:
/usr/local/pf/logs/[Link] –  Sucesos de el demonio pf
/usr/local/pf/logs/access_log –   Apache  –  Registro de acceso al Portal captivo
/usr/local/pf/logs/error_log  –  Apache  –  Registros de error al portal captico
/usr/local/pf/logs/admin_access_log –  Apache  –  Web Admin/Services Access Log
/usr/local/pf/logs/admin_error_log  –  Apache  –  Web Admin/Services Error Log
/usr/local/pf/logs/admin_debug_log –   Apache  –  Web Admin Debug Log
 
 

ANEXO D 
NESSUS Y PACKETFENCE 

1. Instalando Nessus 

Para que la herramienta Nessus funcione correctamente necesitemos instalar Adobe


Flash Player sino lo tenemos instalado.

  Instalar Adobe Flash Player


Lo descargamos de la página oficial y lo instalamos:
rpm -ivh [Link]

  Descargamos el rpm de Nessus de la página


[Link]
system

  Instalamos Nessus
rpm -ivh Nessus-4.4.1-es5.x86_64.rpm

  Creamos un usuario para administrar la herramienta Nessus


/opt/nessus//sbin/nessus-adduser
 
 

  Activación de Nessus
Hay que registrarse en la página oficial de Nessus para poder usar elcódigo de
activación de la herramienta.

[Link]
an-activation-code

/opt/nessus/bin/nessus-fetch --register EB6C-ACEC-A989-C945-


777A

  Iniciamos el servicio deNessus y configuramos para que inicie con el sistema


operativo.

/sbin/service nessusd start


 
 

chkconfig nessusd on

  Ejecutamos la herramienta Nessus


En el navegador ponemos la siguiente dirección:


[Link]

2. Integrando Nessus a PacketFence 

  Archivo de Configuración

PacketFence trae consigo un archivo de configuración pre elaborado para el escaneo


de vulnerabilidades en la siguiente ubicación:

/usr/local/pf/conf/nessus/[Link]

Utilizamos este archivo para configurar laspolíticas de pre ingreso a la red LAN.
 
 

  Configurando Nessus

Se debe agregar a la herramienta el archivo de políticas de de PacketFence a Nessus


Para esto debemos ingresar en el menú de políticas en esta parte podemos observar
 políticas predefinidas en nuestro caso necesitamos agregar la política que viene por
defecto en PacketFence.
 
 
 
 

Una vez agregado la política de pre ingreso en Nessus observaremos lo siguiente:


 

Una vez modificado podemos modificar a nuestro gusto la política de pre


ingreso con la que funciona PacketFence y adaptarla a nuestras necesidades.

  Agregando Nessus a PacketFence


Luego en el servidor PacketFence configuramos el usuario, contraseña y


 plugins en el archivo de configuración /usr/local/pf/[Link].
[scan]
ssl=enabled
pass=123456
user=admin
port=1241
host=127.0.
0.1
registration=enabled 
nessusclient_file=[Link]
sus
nessusclient_policy=RemoteScan
live_tids=54615

Para evitar problemas al escanear los clientes con la política de seguridad


debemos darle permisos 755 al archivo [Link]
chmod 755 /usr/local/pf/conf/nessus/[Link]

También podría gustarte