Red Hat Enterprise Linux 3: Guia de Segurança | ||
---|---|---|
Anterior | Capítulo 6. Redes Privadas Virtuais (Virtual Private Networks) | Próxima |
O IPsec pode ser configurado para conectar um computador pessoal ou estação de trabalho a outra através de uma conexão máquina-a-máquina. Este tipo de conexão utiliza a rede à qual cada máquina está conectada para criar o túnel seguro entre elas. Os requisitos de uma conexão máquina-a-máquina são mínimos, já que é a configuração do IPsec em cada máquina. As máquinas precisam somente de uma conexão dedicada a uma rede de transporte (como a Internet) e do Red Hat Enterprise Linux para criar a conexão do IPsec.
O primeiro passo para criar uma conexão é coletar as informações de sistemas e de rede de cada estação de trabalho (workstation). Para uma conexão máquina-a-máquina, você precisa das seguintes informações:
O endereço IP das duas máquinas
Um nome único para identificar a conexão IPsec e distinguí-la de outros dispositivos e conexões (ex.: ipsec0)
Uma chave fixa de criptografia ou uma gerada automaticamente pelo racoon
Uma chave de autenticação pré-compartilhada, usada para iniciar a conexão e trocar chaves de criptografia durante a sessão
Por exemplo: suponha que as estações de trabalho A e B queiram se interconectar através de um túnel IPsec. Pretendem se conectar usando uma chave pré-compartilhada com o valor foobarbaz e os usuários concordam em deixar que o racoon gere automaticamente e compartilhe uma chave de autenticação entre cada máquina. Ambos usuários das máquinas decidem nomear suas conexões como ipsec0.
Veja a seguir o arquivo ifcfg para a conexão IPsec máquina-a-máquina da estação de trabalho A. O nome único para identificar a conexão neste exemplo é ipsec0, portanto o arquivo resultante é nomeado como /etc/sysconfig/network-scripts/ifcfg-ipsec0.
DST=X.X.X.X TYPE=IPsec ONBOOT=yes IKE_METHOD=PSK |
A estação de trabalho A substituirá X.X.X.X pelo endereço IP da estação de trabalho B, enquanto esta substitui X.X.X.X pelo endereço IP da estação de trabalho A. A conexão é definida para iniciar na inicialização (boot-up) (ONBOOT=yes) e usa o método de autenticação de chave pré-compartilhada (IKE_METHOD=PSK).
A seguir, veja o arquivo da chave pré-compartilhada (chamado /etc/sysconfig/network-scripts/keys-ipsec0) que ambas máquinas usam para autenticarem-se entre si. O conteúdo deste arquivo deve ser idêntico nas duas estações de trabalho, e somente o usuário root deve ser capaz de acessar ou gravar (read or write) este arquivo.
IKE_PSK=foobarbaz |
![]() | Importante | |
---|---|---|
Para alterar o arquivo keys-ipsec0 para que somente o usuário root possa acessá-lo ou editá-lo, execute o seguinte comando após criar o arquivo:
|
Para alterar a chave de autenticação a qualquer momento, edite o arquivo keys-ipsec0 nas duas estações de trabalho. As duas chaves devem ser identicas para que a conexão funcione apropriadamente.
O arquivo /etc/racoon/racoon.conf deve ser idêntico, exceto pela indicação include "/etc/racoon/X.X.X.X.conf". Esta indicação (e o arquivo que referencia) é gerada quando o túnel IPsec é ativado. Para a estação de trabalho A, X.X.X.X na indicação include é o dendereço IP da estação de trabalho B. O oposto vale para a estação de trabalho B. Veja a seguir um arquivo racoon.conf típico quando a conexão IPsec é ativada.
# Racoon IKE daemon configuration file. # See 'man racoon.conf' for a description of the format and entries. path include "/etc/racoon"; path pre_shared_key "/etc/racoon/psk.txt"; path certificate "/etc/racoon/certs"; sainfo anonymous { pfs_group 2; lifetime time 1 hour ; encryption_algorithm 3des, blowfish 448, rijndael ; authentication_algorithm hmac_sha1, hmac_md5 ; compression_algorithm deflate ; } include "/etc/racoon/X.X.X.X.conf" |
Para iniciar a conexão, reinicialize a estação de trabalho ou execute o seguinte comando, como root, em cada máquina:
/sbin/ifup ipsec0 |
Para testar a conexão IPsec, execute o utilitário tcpdump para visualizar os pacotes de rede sendo transferidos entre as máquinas (ou redes) e verificar se estão criptografadas via IPsec. O pacote deve incluir um cabeçalho AH e deve ser exibido como pacotes ESP. ESP significa que está criptografado. Por exemplo:
17:13:20.617872 pinky.example.com > ijin.example.com: \ AH(spi=0x0aaa749f,seq=0x335): ESP(spi=0x0ec0441e,seq=0x335) (DF) |