BULMA Bulma amb el projecta Defective by Desing
Bergantells Usuaris de GNU/Linux de Mallorca i Afegitons   |   Bisoños Usuarios de GNU/Linux de Mallorca y Alrededores
CONTENIDOS
. Jornadas de software libre
. Version para PDA
. Enlaces breves
. La asociacion
. Los mas leidos
. Autores [Actividad]
. Ultimos Comentarios
. Todos los titulares!
. Estadisticas
. Guia de estilo
. ¿Sugerencias?
. Wiki
. XML [Ayuda]
Listas de correo
. Archivos bulmailing
. Archivos BulmaGes
Radio libre :-)
. Des de la Xarxa (Archivos)
. Mallorca en Xarxa
Busquedas

+ Enlaces Linux
Ultimos kernels
(02/09/2010 18:16:25)
    
Google


En bulma.net
En internet
Freeswan (ipsec) como pasarela para clientes Windows 2ºparte (15617 lectures)
Por sakroot
sakroot (http://www.freeswan.org)
Creado el 25/07/2004 07:15 modificado el 25/07/2004 23:59

2ºPart En este mini howto, describo como podemos conectar clientes windows a nuestro servidor Linux con freeswan 1.96, Hablo tanto de como configurar la maquina Linux, como tambien configurar el cliente windows (winxp/win2k) he dividido el documento en 2 partes, puesto que me ocupaba 14 hojas y en bulma no podia poner el minihowto tan grande :)

Pagina1/1

NTEROPERABILIDAD ENTRE FREESWAN Y WINDOWS

2ªParte

Minihowto freeswan-windows
Licencia GPL
Autor: Diego de León Ojeda (sakroot)



Continuamos el minihowto, que dejamos a medias :)

- Es hora de mover los archivos de los certificados a sus
correspondientes sitios:


cp /etc/ssl/MYCA/linux.freeswan.key /etc/ipsec.d/private/
cp /etc/ssl/MYCA/linux.freeswan.pem /etc/ipsec.d/
cp /etc/ssl/MYCA/cacert.pem /etc/ipsec.d/cacerts
cp /etc/ssl/MYCA/crl.pem /etc/ipsec.d/crls/crl.pem




- Configuraremos nuestro servidor linux para que se entienda con win:


cat > /etc/ipsec.secrets #y pasteamos, en password pones el pass del certificado del server linux

: RSA linux.freeswan.key "password"


- editamos /etc/ipsec.conf

Supongamos que nuestro linux y su subred siempre van a ser "left"
y los equipos que se conecten a el (como los Windows) van a ser right.
Ok, os pongo comentarios de lo que hace cada linea en el archivo y su
configuración correcta:

vi /etc/ipsec.conf

config setup
#aquí ponemos la interfaz a la que va a afectar el túnel siempre
#con ipsecX=interfaz,siendo la X un 0,1,2,3, etc., podemos crear
#muchos interfaces ipsec.

interfaces="ipsec0=wlan0"


klipsdebug=none
plutodebug=none
plutoload=%search
plutostart=%search



conn %default
#use RSA based authentication with certificates
authby=rsasig
leftrsasigkey=%cert
rightrsasigkey=%cert
#freeswan security gateway
#left=192.168.1.1
#leftid="@C=ES, ST=SPAIN, L=Valladolid, O=SERVIDOR MEDUSA,
#OU=medusa.homeunix.net"

#el certificado de la maquina local hay que ponerlo siempre
leftcert=linux.freeswan.pem


conn windows
#ponemos any, por si tenemos ip dinamica
# y si tenemos ip fija puedes poner la ip fija,
#pero para probar nuestro primer tunel aconsejo
#dejarlo en any, luego ya experimentareis :)

right=%any

#en la versión 1.96 los certificados hay
#que meterlos en /etc/ipsec.d/.
#Apartir de la 2,x los certificados van en /etc/ipsec.d/certs/

#CERTIFICADO DE NUESTRA MAQUINA WINDOWS
rightcert=windows.freeswan.pem

#dirección del servidor linux
left=192.168.1.1

#con esta opción iran todos los datos a
#cualquier red detrás de nuestro servidor linux-freeswan
#encriptado

leftsubnet=0.0.0.0/0
auto=start












--------------------------------------------------



- Configuración de freeswan acabada.

nota: si tenemos iptables para filtrar las conexiones, (como es logico) agregaremos un par de politicas básicas, para que toda la gente que quiera entrar por el túnel, pueda hacer la autentificación satisfactoriamente.

iptables -I INPUT -i ipsec0 -j ACCEPT


nota2: por cierto si la interfaz que hicimos alias en nuestro ipsec.conf, en la seccion setup interfaces="ipsec0=wlan0",
esta siendo utilizada por otro túnel del tipo openvpn,
paramos el tunel openvpn y despues ya lanzamos ipsec.


- Hora de lanzar nuestro freeswan:

/etc/init.d/ipsec start

- Vista de logs, tenemos varias opciones: D :

tail -n 200 /var/log/auth.log #aquí vemos las autentificaciones de ipsec
tail -n 200 /var/log/daemon.log


luego con la herramienta ipsec, nos dará un
buen diagnostico:

ipsec auto --status
ipsec auto --listpubkeys #listará los certificados
#cargados por ipsec

ipsec auto --listcacerts #para ver el certificado de nuestra
#ca.

ipsec barf #nos dará el log mas detallado



- No es preocupéis mucho de los avisos hasta que no configureis, vuestros clientes, de todos modos, os dejo unos logs orientativos,
desde que se lanza el daemon, hasta que se establece una ASOCIACION DE SEGURIDAD :D:



Jul 25 03:17:57 MeDuSa ipsec__plutorun: Starting Pluto subsystem...
Jul 25 03:17:57 MeDuSa Pluto[6970]: Starting Pluto (FreeS/WAN Version 1.96)
Jul 25 03:17:57 MeDuSa Pluto[6970]: including X.509 patch (Version 0.9.9)
Jul 25 03:17:57 MeDuSa Pluto[6970]: Changing to directory '/etc/ipsec.d/cacerts'
Jul 25 03:17:57 MeDuSa Pluto[6970]: loaded cacert file 'cacert.pem' (1464 bytes)
Jul 25 03:17:57 MeDuSa Pluto[6970]: Changing to directory '/etc/ipsec.d/crls'
Jul 25 03:17:57 MeDuSa Pluto[6970]: loaded crl file 'crl.pem' (609 bytes)
Jul 25 03:17:57 MeDuSa Pluto[6970]: loaded my X.509 cert file '/etc/x509cert.der' (1077 bytes)
Jul 25 03:17:58 MeDuSa Pluto[6970]: | from whack: got --esp=3des
Jul 25 03:17:58 MeDuSa Pluto[6970]: loaded host cert file '/etc/ipsec.d/otrocertificado.pem' (3
962 bytes)
Jul 25 03:17:58 MeDuSa Pluto[6970]: loaded host cert file '/etc/ipsec.d/certificado.pem' (395
4 bytes)
Jul 25 03:17:58 MeDuSa Pluto[6970]: added connection description "win2k-eth2"
Jul 25 03:17:59 MeDuSa Pluto[6970]: | from whack: got --esp=3des
Jul 25 03:17:59 MeDuSa Pluto[6970]: listening for IKE messages
Jul 25 03:17:59 MeDuSa Pluto[6970]: adding interface ipsec0/wlan0 192.168.1.1
Jul 25 03:17:59 MeDuSa Pluto[6970]: adding interface ipsec1/eth2 192.168.0.1
Jul 25 03:17:59 MeDuSa Pluto[6970]: loading secrets from "/etc/ipsec.secrets"
Jul 25 03:17:59 MeDuSa Pluto[6970]: loaded private key file '/etc/ipsec.d/private/clave-privada-server.key' (1720 bytes)
Jul 25 03:17:59 MeDuSa Pluto[6970]: "win2k-eth2": cannot route Road Warrior template
Jul 25 03:17:59 MeDuSa Pluto[6970]: "wifi-lerey": cannot route Road Warrior template
Jul 25 03:17:59 MeDuSa Pluto[6970]: "wifi-ibook": cannot route Road Warrior template
Jul 25 03:17:59 MeDuSa Pluto[6970]: "win2k-eth2": cannot initiate connection without knowing peer
IP address
Jul 25 03:17:59 MeDuSa Pluto[6970]: "wifi-lerey": cannot initiate connection without knowing peer
IP address
Jul 25 03:17:59 MeDuSa Pluto[6970]: "wifi-ibook": cannot initiate connection without knowing peer
IP address


ARRIBA VEMOS EL LOG, SIN CONECTAR CLIENTES A FREESWAN
-------------------------------------------------------




Jul 25 03:34:23 MeDuSa Pluto[345]: "win2k-eth2" 192.168.0.10 #8: responding to Main Mode from unkn
own peer 192.168.0.10
Jul 25 03:34:27 MeDuSa Pluto[345]: "win2k-eth2" 192.168.0.10 #8: Peer ID is ID_DER_ASN1_DN: 'C=ES,
ST=loquesea, L=loquesea, O=loquesea, OU=loqueseat, CN=loquesea
ey, E=loquesea'
Jul 25 03:34:27 MeDuSa Pluto[345]: "win2k-eth2" 192.168.0.10 #8: sent MR3, ISAKMP SA established
Jul 25 03:34:27 MeDuSa Pluto[345]: "win2k-eth2" 192.168.0.10 #9: responding to Quick Mode
Jul 25 03:34:27 MeDuSa Pluto[345]: "win2k-eth2" 192.168.0.10 #9: loquesea


Arriba vemos que el host 192.168.0.10 ha solicitado comunicación, segura, y como lo tenemos autorizado en nuestro freeswan,
se establecerá la conexión--> IPsec SA established --< este mensaje, no sabéis la alegría que da, cuando lo ves por primera vez


-------------------------------------------------------------------




CONFIGURACION DE WINDOWS XP, LA MAS DESEADA XDDD


- lo primero es llevar el certificado "/etc/ssl/MYCA/windows.freeswan.p12" al host windows, yo lo mande por samba jeje, cada cual que lo mande como quiera.
Una vez en nuestro escritorio el certificado, vamos a esta pagina
web y seguimos el procedimiento que pone:

http://support.real-time.com/open-source/ipsec/index.html
si este link esta anulado hacérmelo saber y os mando el enlace...


- Bien ahora crearemos nuestras políticas para establecer la comunicación con el freeswan.
1º Aseguramos que el servicio esta lanzado, en windows:

inicio->programas->herramientas administrativas->servicios
la directiva ipsec este automática,

2ºnos vamos al archivo en el que instalamos los utils,
c:\ipsec\ipsec.conf y lo editamos. Aquí me entro mucho dolor de
cabeza, porque lo tienes que poner a la perfección
Aun así falla, a veces.
Importante: Antes de editarlo, tener en cuenta que hay que
dejar los tabuladores en el archivo y ponerlo todo tal cual
os lo pongo en el ejemplo de abajo. Si tenéis el problema, que en el
certificado pusisteis un nombre con acentos, o ñ (cosa que no
recomiendo) en linux cuando en la consola pongáis este comando
"openssl x509 -in demoCA/cacert.pem -noout -subject" para
extraer los datos de la CA, os aparecerá caracteres raros, pero no
cometáis el fallo de ponerlo talcual os da la salida, ejemplo:


conn windows

#el any es nuestra dirección ip Windows, pero dejarlo así, por
#si os cambia
left=%any

#direccion ip del server linux,
right=192.168.1.

#ponemos el asterisco para poder conectar a todas las redes
#detrás del gateway
rightsubnet=*

#aquí ponemos lo que hemos abstraído del comando "openssl x509
#-in /etc/ssl/CA-LEREY/cacert.pem -noout -subject", en el
# servidor linux
#Si os dais cuenta, he puesto el acento en CN=Diego de León
#Ojeda, porque si lo ponéis así -> CN=Diego de le\xF3n Ojeda os
#volveréis locos porque no os funcionara el tunel.
rightca="C=ES, S=SPAIN, L=Valladolid, O=MONTAJES ELECTRICOS
LEREY, OU=medusa.lerey.net, CN=Diego de León Ojeda,
E=sakroot@medusa.homeunix.net"

#aquí puede ser lan o rsa, dejarlo en lan, o auto
network=lan

auto=start
pfs=yes

conn linux
left=%any
#nuestra dirección ip de la maquina Windows
right=192.168.0.10

#igual que arriba
rightca="C=ES, S=SPAIN, L=Valladolid, O=MONTAJES ELECTRICOS
LEREY, OU=medusa.lerey.net, CN=Diego de León Ojeda,
E=sakroot@medusa.homeunix.net"
network=lan
rekey=1800S/30000K
auto=start
pfs=yes







-Editado el archivo de arriba, lo guardamos con los cambios y lo
dejamos sin comentarios ni nada, quedaría así:



conn windows
left=%any
right=192.168.1.1
rightsubnet=*
rightca="C=ES, S=SPAIN, L=Valladolid, O=MONTAJES ELECTRICOS i
LEREY, OU=medusa.lerey.net, CN=Diego de León Ojeda,
E=sakroot@medusa.homeunix.net"
network=lan
auto=start
pfs=yes

conn linux
left=%any
right=192.168.1.10
rightca="C=ES, S=SPAIN, L=Valladolid, O=MONTAJES ELECTRICOS
LEREY, OU=medusa.lerey.net, CN=Diego de León Ojeda,
E=sakroot@medusa.homeunix.net"
network=lan
rekey=1800S/30000K
auto=start
pfs=yes


----------------------------------------------------------


Si os ha piíllado bien la configuración el xp (cosa rara, ya os diré porque), hacemos lo siguiente, para lanzar el túnel:


inicio-->cmd

cd c:\ipsec\


ejecutamos-> ipsec

veremos que carga las directivas. Posteriormente hacemos un ping (sino esta bloqueado con firewall) al server freeswan, y debería de salir esto:


ping 192.168.1.1
Negotiating IP Security # y a los instantes nos devolverá el ping,
Respuesta desde 192.168.1.1: bytes=32 tiempo<10ms TTL=64
Respuesta desde 192.168.1.1: bytes=32 tiempo<10ms TTL=64
Respuesta desde 192.168.1.1: bytes=32 tiempo<10ms TTL=64


En caso que veamos 4 veces este mensaje, es que hay algo mal -->
Negotiating IP Security
Negotiating IP Security
Negotiating IP Security
Negotiating IP Security

También nos puede devolver el ping sin que aparezca "Negotiating IP
Security" y puede estar el túnel hecho. Lo comprobamos en linux con

tcpdump -i wlan0

Una vez dentro del server, hacemos un ping al host Windows, y otro del
host Windows al linux, nos tiene que salir algo parecido a esto:

05:54:52.553750 IP 192.168.1.1 > 192.168.0.10: ESP(spi=0x5567f46e,seq=0x2)
05:54:52.557218 IP 192.168.1.10 > 192.168.1.1: ESP(spi=0x7d4d1823,seq=0x4)
05:54:53.563757 IP 192.168.1.1 > 192.168.1.10: ESP(spi=0x5567f46e,seq=0x3)
05:54:53.566986 IP 192.168.1.5 > 192.168.1.1: ESP(spi=0x7d4d1823,seq=0x5)

fijaros arriba en ESP, si sale esp "Bieeeen¡¡¡¡

En caso de no ver ESP, puede ser que el winxp no halla cojido
bien el certificado con la herramienta "c:\ipsec\ipsec.exe", entonces vamos exportarlo nosotros manualmente:


1- ejecuta inicio: y ponemos --> C:\ipsec\IPSec.msc, damos enter
y nos aparece la consola mmc. De lo que vemos en pantalla,
nos interesa la parte -->IP-nosequeenaleman, lo pinchamos
y a la derecha veremos freeswan, nos aseguramos que ponga un sí en directiva asignada,de lo contraio, pulsamos sobre freeswan botón derecho y asignar. Sin cerrar la mmc, probamos el ping, si sigue mal la cosa, volvemos a la mmc y pinchamos Dos veces sobre freeswan; lo que vamos a hacer es remarcar los certificados en las cuatro reglas de seguridad
que nos aparecen como "host-window windows-host etc.", la ultima que pone, respuesta predeterminada ni la tocamos.Ahora vamos a hacer los mismos pasos en las cuatro reglas. "Importante" hacerlo bien en todas, aceptando y tal:


doble click en windows-host:

nos sale nueva pantalla-->pestaña-métodos de
autentificación->doble clic "entidad emisora"-> examinar>
seleccionamos nuestro certificado y aceptamos todo hasta volver
a la ventana reglas de seguridad. Hacer esto con las otras 3
reglas exactamente igual.
Una vez seleccionado el mismo certificado en las cuatro reglas
de seguridad, le damos aplicar, cerrar.
Volvemos a la mmc, damos botón derecho en freeswan>desasignar y
otra vez botón derecho>asignar,

Con lo expuesto arriba, nos puede salvar la vida, probamos el ping y debería de ir todo bien, sino os va, mirar los logs en el servidor linux
Y con esto acabo el documento, espero que os valga de algo jejje.
Si tenéis algún problema, sakroot@medusa.homeunix.net o en el irc,
Servidor irc.debian.org #debian-es nick sakroot.

Agradeceria vuestros comentarios sobre el documento y vuestras
experiencias :)

Un saludo a todos.


DOCUMENTO GPL

Imprimir
Version para
imprimir

Imprimir
Version
PDF
Comentarios
Es posible que se hayan omitido algunos comentarios considerados poco constructivos
1.  Re: Freeswan (ipsec) como pasarela para clientes Windows 2ºparte (26/07/2004 09:07, #22532)
  Por: juanma (http://diariolinux.com)
Creo qu es mejor dejarlo como está.
Una cosa es que en ambientes menos académicos se utilicen expresiones más vulgares, por otra parte jocosas, y otra es que en este pedazo de artículo (que me viene como anillo al dedo) se le pongan acepciones que creo están fuera de lugar.
No es pot respondre
 
2.  Re: Freeswan (ipsec) como pasarela para clientes Windows 2ºparte (27/07/2004 02:59, #22543)
  Por: sakroot (http://www.freeswan.org)
Gracias Juanma, he decidido dejarlo como esta, porque creo
que hay gente que llegaria a confusiones :)
No es pot respondre
 
3.  Re: Freeswan (ipsec) como pasarela para clientes Windows 2ºparte (08/08/2004 07:54, #22688)
  Por: therion
Un saludo sakroot, disculpa mi ignorancia pero apenas comienzo en este mundo de Linux, es por eso que te formulo las siguientes preguntas: ¿Lo que explicas en este mini howto es posible aplicarlo en otros distros Linux?, ¿En donde puedo localizar un howto en donde se explique como puedo trabajar lo que explicaste pero unicamente sobre distros Linux, sin meternos con Windows?
No es pot respondre
 
4.  Re: Freeswan (ipsec) como pasarela para clientes Windows 2ºparte (10/08/2004 01:49, #22715)
  Por: sakroot (http://www.freeswan.org)
Lo que explico es aplicable a todas las distros, lo único que puede cambiar es el apt-get install kernel-patch-freeswan. En otra distro
puede haber un paquete parecido, pero sin parchear los fuentes con certificados. Pero para que que no tengas problemas te bajas los fuentes y lees el INSTALL y parcheas el certificado a freeswan y luego al kernel.
Sobre el HOWTO, no se donde habra uno sobre freeswan
linux&linux, pero lo que si que te digo que mucho mas sencillo que de
win a linux. Haber si me animo y continuo el articulo con la parte de linux&linux
No es pot respondre
 
5.  Re: Freeswan (ipsec) como pasarela para clientes Windows 2ºparte (11/02/2005 10:38, #25285)
  Por: ics
Hola, a mí me gustaría implementarlo tb entre Linux&Linux pero no tengo ni idea de cómo hacerlo. Si hicieras un howto con linux-linux harías una gran contribución a esta comunidad. Muchísimas gracias campeón!
No es pot respondre
 
6.  Re: Freeswan (ipsec) como pasarela para clientes Windows 2ºparte (19/08/2004 15:57, #22878)
  Por: Claudia
Hola: Me ha parecido muy bueno tu How to, me gustaria, si es posible, recibir más información sobre más configuraciones que sea posible llevar a cabo con Freeswan, ya sea en Linux o en Windows, o en los dos. Estoy trabajando en un proyecto de seguridad y estoy muy interesada en el tema. Gracias de antemano por su atención!!
No es pot respondre
 
7.  Re: Freeswan (ipsec) como pasarela para clientes Windows 2ºparte (25/08/2004 01:55, #22972)
  Por: therion
Un saludo claudia, al igual que tu, yo tambien estoy trabajando en un proyecto de seguridad, este proyecto esta encaminado a la proteccion de redes WI-FI utilizando VPN´s, autenticacion con Freeradius y encripcion, quizas podamos intercambiar nuestros puntos de vista y encontrar soluciones a los problemas que se nos lleguen a presentar..
No es pot respondre
 
8.  Re: Freeswan (ipsec) como pasarela para clientes Windows 2ºparte (07/12/2004 17:25, #24588)
  Por: Anónimo
HOla *-* Yo normalmente uso esta configuración para windows 2k, ahora estoy experimentando con win XP, pero tengo dos problemas, el primero no me imprime: en win2k yo lo unico que hacia era compartir las impresoras en la conexión que hacia a internet. En XP estoy tratando de hacer lo mismo y no me funciona, no envia la impresion. No se que ha pasado, alguien puede decirme si debo hacer algo mas??? de otro lado me esta saliendo un pequeño error al ejecutar el ipsec.exe: no se encuentra el punto de entrada del procedimiento ?DSLibRelease@DSLibRefCount@UAEXXZ en la biblioteca de vinculos dinámicos polstore.dll Yo busco este archivo y si lo veo presente en mi carpeta windows\system32. Puede ser esto la causa de que no me imprima??? Agradezco cualquier información al respecto....
No es pot respondre
 
9.  Re: Freeswan (ipsec) como pasarela para clientes Windows 2ºparte (10/02/2005 10:19, #25274)
  Por: Anónimo
Hola, antes de nada gracias por adelantado. Mi problema es que no tengo mucha idea de Linux, pero he intentado crearme una VPN entre dos máquinas, una linux y otra w_xp _sp2. He llegado a un punto en el que no se porqué no soy capaz de comunicar mis dos equipos. He seguido este How To que es bastate bueno, asi como otro de Nate Carlson en la web: http://www.natecarlson.com/linux/ipsec-x509.php que también es bastante bueno, aunque lo usa con Openswan en vez de freeswan. Tengo un distribución debian 2.06 y una freeswan 2.04 He generado los certificados x509 creo que satisfactoriamente, porque he sido capaz de firmarlos por una CA que también me he generado. He configurado el ipsec.conf tanto en la máquina linux como en la w_xp_sp2....y tras numerosos intentos, no sabes cuantos, cuando todo parecía que iba bien.....me aparece: al ejecutar la instrucción: tail -f /var/log/auth.log ..... packet from 83.xx.xx.xx:500: ignoring Vendor ID payload[fragmentation] packet from 83.xx.xx.xx:500: ignoring Vendor ID payload[draf-ietf-ipsec-nat-t-ike-02_n] packet from 83.xx.xx.xx:500: ignoring Vendor ID payload[26244d.........] Al intentar hacer ping desde la máquina w_xp al linux, no me hace ping, pero intente negociar la seguridad. He intentado solucionarlo de la forma que propones, pero nada. Me encantaria que me pudieses ayudar. Si decides hacerlo, te mandaria toda la configuración del ipsec.conf de la máquina linux, asi como la de la m´quina w_xp_sp2. Si decides que no, solo decirte gracias por haberte leido esto, y por este mini How To que esta muy completito. Un saludo David Mi correo: damer_s@hotmail.com
No es pot respondre
 
10.  Re: Freeswan (ipsec) como pasarela para clientes Windows 2ºparte (20/04/2005 18:00, #26315)
  Por: sexsam
- Configuraremos nuestro servidor linux para que se entienda con win: cat > /etc/ipsec.secrets #y pasteamos, en password pones el pass del certificado del server linux : RSA linux.freeswan.key "password" hola podrias comentar esta linea 1 poco mas detalladamente, la verda esk no acabo de entenderla. Gracias...
No es pot respondre
 
GRACIAS
Distribuciones Universal
Por el servidor
Dpto. de Matematicas e Informatica
Calificacion
**00
Vots: 13
Danos tu opinion:
**** Excelente
***0 Muy Bueno
**00 Bueno
*000 Regular
0000 Malo
SECCIONES
Noticia
Breve
Truco
Enlace
Participa
Proyecto
Articulo
Webbulma
Manoletada :-)
Seguridad
Modificado: 10/5/2007 17:46:17 | Tiempo Total: 0.075 segs | Kernel: Linux - i686 - 2.6.26-1-686 | Last boot: 02/09/2010 20:04 CEST
Powered by Apache    MySQL    PHP    Gimp