sábado, 1 de novembro de 2008

Linux - VPN IPSEC

Linux - VPN IPSEC

Ao pedido de nosso amigo Sergio mostrarei como instalar e configurar uma vpn em linux. Existem muitas ferramentas para se criar uma VPN, mas eo vou abordar aqui o IPSEC

Configurações:

Matriz:
SO: Red Hat Enterprise Linux 5
Rede:
eth0 200.200.200.1
eth1 192.168.1.1

Filial:
SO: Red Hat Enterprise Linux 4
Rede:
eth0 200.200.200.2
eth1 192.168.2.1

VPN - IpSec

Primeiramente vamos instalar dois pacotes para podermos acessar o servidor em modo grafico que são o Xterm (Emulador de terminal) e o VNC SERVER (Utilitario para "acesso remoto"). Caso você tenha um servidor com o Xwindows não necessitara de instalar esses pacotes.

1.Instalando o Xterm e Vnc Server:

Coloque o DVD de instalação e logo apos digite no terminal texto
mount /dev/hdc /mnt/ cd /mnt/ rpm -ivh vnc-server-XXX (Onde XXXX é a versão do pacote a ser instalado)
rpm -ivh xterm-XXXX (Onde XXXX é a versão do pacote a ser instalado)

2.Instalando o Ipsec-tools:Para criar vpn com o ipsec necessitamos de ter instalado o pacote ipsec-tools, digite o seguinte comando para verificar se o mesmo encontra-se instalado:
rpm -aq|grep ipsec

Caso não esteja instalado vc pode instalar com o comando:
rpm -ivh ipsec-tools-XXXX (Onde XXXX é a versão do pacote a ser instalado)

3."Subindo" o serviço VNC:

Para podermos acessar o nosso servidor por interface grafica devemos habilitar o serviço do vncserver:
vncserverA saida desse comando será parecida com essa:
[root@matriz ~]# vncserver
You will require a password to access your desktops. Password:

Digite uma senha e confirme-a digitando-a novamente. Esta senha será solicitado no memonto em que for feita uma conexão.

4. Configurando a interface ipsec na matriz:
Para configurarmos nossa interface ipsec na matriz, temos que acessar o servidor da matriz pelo vnc (porta 5901). Logo apos verifique se o utilitario de configuração de rede esta instalado no seu servidor:
rpm -aq|grep system-config-network
Se não estiver instalado, instale-o:
rpm -ivh system-config-network-XXXX (Onde XXXX é a versão do pacote a ser instalado)

Abra o utilitario de configuração de rede:
system-config-network

Aparecerá no terminal uma imagem parecida com esta:

Clique na aba ipsec, new, aparecerá um wizard, Forward, digite um nome para a interface ipsec, como por exemplo "ipsec0", Forward, selecione a opção "Network to Network encryption (VPN)" (Para que seja criada um VPN de rede a rede), Forward, selecione a opção "Automatic encryption mode selection via IKA (racoon)" (Para que seja usado um mode de encryptação automatio), Forward, em "Local network address" digite o endereço de sua rede local, no nosso caso 192.168.1.0, em "Local subnet mask" digite a mascara de subrede de sua rede local, no nosso caso 255.255.255.0, em "Local network gateway" digite o endereço IP do gateway de sua rede local, no nosso caso 192.168.1.1, Forward, em "Remote IP address" digite o ip publico da sua filial, no nosso caso 200.200.200.2, em "Remote network address" digite o endereço de rede local de sua filial, no nosso caso 192.168.2.0, em "Remote subnet mask" digite a mascara de subrede da rede local de sua filial, no nosso caso 255.255.255.0, em "Remote network gateway" digite o endereço IP do gateway da rede local de sua filial, no nosso caso 192.168.2.1, Forward, digite a chave de autenticação (CHEVE QUE DEVE SER IDENTICA NOS DOIS SERVIDORES), Forward, Apply, depois que o Wizard se fechar clique em File, Save e depois em File, Quit.

5. Configurando a interface ipsec na filial:A configuração na filial é o mesmo que na matriz, claro que invertindo os endereços na configuração.
Obs.: O nome da interfaze ipsec tem que ser diferente da interface da matriz, como por exemplo "ipsec1"

5. Configurando a interface ipsec na filial:

Para ativar as interfazer e subir a VPN no terminal digite:

Na Matriz:
ifup /etc/sysconfig/network-scripts/ifcfg-ipsec0
Na Filial:
ifup /etc/sysconfig/network-scripts/ifcfg-ipsec1Depois disto podemos ver o log em /var/log/messages

Com o comando "ip route" vemos as rotas que foram adicionadas.

Se seu log ficou parecido com estes provavelmente sua VPN ja esta funcionando:

Matriz

Oct 19 04:47:05 matriz racoon: INFO: @(#)ipsec-tools 0.6.5 (http://ipsec-tools.sourceforge.net)
Oct 19 04:47:05 matriz racoon: INFO: @(#)This product linked OpenSSL 0.9.8b 04 May 2006 (http://www.openssl.org/)
Oct 19 04:47:06 matriz racoon: INFO: 127.0.0.1[500] used as isakmp port (fd=9)
Oct 19 04:47:06 matriz racoon: INFO: 127.0.0.1[500] used for NAT-T
Oct 19 04:47:06 matriz racoon: INFO: 200.200.200.1[500] used as isakmp port (fd=10)
Oct 19 04:47:06 matriz racoon: INFO: 200.200.200.1[500] used for NAT-T
Oct 19 04:47:06 matriz racoon: INFO: 192.168.1.1[500] used as isakmp port (fd=11)
Oct 19 04:47:06 matriz racoon: INFO: 192.168.1.1[500] used for NAT-T
Oct 19 04:47:06 matriz racoon: INFO: ::1[500] used as isakmp port (fd=12)
Oct 19 04:47:06 matriz racoon: INFO: fe80::20c:29ff:fe6f:195e%eth0[500] used as isakmp port (fd=13)
Oct 19 04:47:06 matriz racoon: INFO: fe80::20c:29ff:fe6f:1968%eth1[500] used as isakmp port (fd=14)

Oct 19 04:49:37 matriz racoon: INFO: IPsec-SA request for 200.200.200.2 queued due to no phase1 found.
Oct 19 04:49:37 matriz racoon: INFO: initiate new phase 1 negotiation: 200.200.200.1[500]<=>200.200.200.2[500]
Oct 19 04:49:37 matriz racoon: INFO: begin Aggressive mode.
Oct 19 04:49:37 matriz racoon: NOTIFY: couldn't find the proper pskey, try to get one by the peer's address.
Oct 19 04:49:37 matriz racoon: INFO: ISAKMP-SA established 200.200.200.1[500]-200.200.200.2[500] spi:79e3fd8e88bff951:311563036a76332e
Oct 19 04:49:38 matriz racoon: INFO: initiate new phase 2 negotiation: 200.200.200.1[500]<=>200.200.200.2[500]
Oct 19 04:49:38 matriz racoon: INFO: IPsec-SA established: AH/Tunnel 200.200.200.2[0]->200.200.200.1[0] spi=200518792(0xbf3ac88)
Oct 19 04:49:38 matriz racoon: INFO: IPsec-SA established: ESP/Tunnel 200.200.200.2[0]->200.200.200.1[0] spi=209846718(0xc8201be)
Oct 19 04:49:38 matriz racoon: INFO: IPsec-SA established: AH/Tunnel 200.200.200.1[0]->200.200.200.2[0] spi=17113181(0x105205d)
Oct 19 04:49:38 matriz racoon: INFO: IPsec-SA established: ESP/Tunnel 200.200.200.1[0]->200.200.200.2[0] spi=153927358(0x92cbebe)
Oct 19 04:49:38 matriz racoon: INFO: respond new phase 2 negotiation: 200.200.200.1[500]<=>200.200.200.2[500]
Oct 19 04:49:39 matriz racoon: INFO: IPsec-SA established: AH/Tunnel 200.200.200.2[0]->200.200.200.1[0] spi=117050908(0x6fa0e1c)
Oct 19 04:49:39 matriz racoon: INFO: IPsec-SA established: ESP/Tunnel 200.200.200.2[0]->200.200.200.1[0] spi=115460867(0x6e1cb03)
Oct 19 04:49:39 matriz racoon: INFO: IPsec-SA established: AH/Tunnel 200.200.200.1[0]->200.200.200.2[0] spi=258721118(0xf6bc55e)
Oct 19 04:49:39 matriz racoon: INFO: IPsec-SA established: ESP/Tunnel 200.200.200.1[0]->200.200.200.2[0] spi=127008001(0x791fd01)

Filial

Oct 19 18:11:22 filial racoon: INFO: @(#)ipsec-tools 0.3.3 (http://ipsec-tools.sourceforge.net)
Oct 19 18:11:22 filial racoon: INFO: @(#)This product linked OpenSSL 0.9.7a Feb 19 2003 (http://www.openssl.org/)
Oct 19 18:11:22 filial racoon: INFO: fe80::20c:29ff:fe51:28ab%eth1[500] used as isakmp port (fd=9)
Oct 19 18:11:22 filial racoon: INFO: fe80::20c:29ff:fe51:28a1%eth0[500] used as isakmp port (fd=10)
Oct 19 18:11:22 filial racoon: INFO: ::1[500] used as isakmp port (fd=11)
Oct 19 18:11:22 filial racoon: INFO: 192.168.2.1[500] used as isakmp port (fd=12)
Oct 19 18:11:22 filial racoon: INFO: 200.200.200.2[500] used as isakmp port (fd=13)
Oct 19 18:11:22 filial racoon: INFO: 127.0.0.1[500] used as isakmp port (fd=14)

Oct 19 18:13:51 filial racoon: INFO: respond new phase 1 negotiation: 200.200.200.2[500]<=>200.200.200.1[500]
Oct 19 18:13:51 filial racoon: INFO: begin Aggressive mode.
Oct 19 18:13:51 filial racoon: NOTIFY: couldn't find the proper pskey, try to get one by the peer's address.
Oct 19 18:13:51 filial racoon: INFO: ISAKMP-SA established 200.200.200.2[500]-200.200.200.1[500] spi:79e3fd8e88bff951:311563036a76332e
Oct 19 18:13:52 filial racoon: INFO: respond new phase 2 negotiation: 200.200.200.2[0]<=>200.200.200.1[0]
Oct 19 18:13:52 filial racoon: INFO: IPsec-SA established: AH/Tunnel 200.200.200.1->200.200.200.2 spi=17113181(0x105205d)
Oct 19 18:13:52 filial racoon: INFO: IPsec-SA established: ESP/Tunnel 200.200.200.1->200.200.200.2 spi=153927358(0x92cbebe)
Oct 19 18:13:52 filial racoon: INFO: initiate new phase 2 negotiation: 200.200.200.2[0]<=>200.200.200.1[0]
Oct 19 18:13:52 filial racoon: INFO: IPsec-SA established: AH/Tunnel 200.200.200.2->200.200.200.1 spi=200518792(0xbf3ac88)
Oct 19 18:13:52 filial racoon: INFO: IPsec-SA established: ESP/Tunnel 200.200.200.2->200.200.200.1 spi=209846718(0xc8201be)
Oct 19 18:13:53 filial racoon: INFO: IPsec-SA established: AH/Tunnel 200.200.200.1->200.200.200.2 spi=258721118(0xf6bc55e)
Oct 19 18:13:53 filial racoon: INFO: IPsec-SA established: ESP/Tunnel 200.200.200.1->200.200.200.2 spi=127008001(0x791fd01)
Oct 19 18:13:53 filial racoon: INFO: IPsec-SA established: AH/Tunnel 200.200.200.2->200.200.200.1 spi=117050908(0x6fa0e1c)
Oct 19 18:13:53 filial racoon: INFO: IPsec-SA established: ESP/Tunnel 200.200.200.2->200.200.200.1 spi=115460867(0x6e1cb03)

E ai esta pronta nossa VPN com IpeSec.

domingo, 26 de outubro de 2008

Objetivo do blog

Este blog foi criado inicialmente para a divulgação de serviços votados a plataforma Linux, com o objetivo de obter clientes e com isso ajudar pequenas e medias empresas a implementarem sistemas com um custo relativamente baixo. Dois de algum tempo, percebi que muitos Administradores de empresas de pequeno e médio porte não contratam profissionai encontrados em um simples blog na internet, com isso resolvi refazer este blog, também com o objetivo de ajudar empresas de pequeno e médio porte a implementação de sistemas opensource, porem de um modo diferente. O blog funciona da seguinte maneira, o visitante posta uma "Implementação", que estaja necessitando de realizar em sua empresa, e aqui sera postado uma pequena ajuda de como realizar o mesmo. De tempos em tempos, se não houver pedidos de "Implemetação", será postados "Implementações" escolhidas pelo autor.

Email: savioalberto@ig.com.br

Doacões: