Segurança e VPN : Negociação IPSec/Protocolos IKE

Solução de Problemas de Segurança IP - Entendendo e Usando Comandos debug

23 Março 2008 - Tradução Manual
Outras Versões: Versão em PDFpdf | Tradução por Computador (29 Julho 2013) | Inglês (15 Julho 2009) | Feedback

Índice

Introdução
Pré-requisitos
     Requisitos
     Componentes Usados
     Convenções
Depurações do Cisco IOS Software
     show crypto isakmp sa
     show crypto ipsec sa
     show crypto engine connection active
     debug crypto isakmp
     debug crypto ipsec
Exemplo de Mensagens de Erro
     Replay Check Failed
     Endereço Local Inválido
     IKE Message From X.X.X.X Failed Its Sanity Check or Is Malformed
     Processing of Main Mode Failed With Peer
     Proxy Identities Not Supported
     Transform Proposal Not Supported
     No Cert and No Keys With Remote Peer
     Peer Address X.X.X.X Not Found
     IPsec Packet has Invalid SPI
     IPSEC(initialize_sas): Invalid Proxy IDs
     Reserved Not Zero on Payload 5
     Hash Algorithm Offered does not Match Policy
     HMAC Verification Failed
     Remote Peer Not Responding
Depurações PIX
     show crypto isakmp sa
     show crypto ipsec sa
     debug crypto isakmp
     debug crypto ipsec
Problemas Comuns de Router-para-VPN Client
     Incapacidade de Acessar Sub-redes Fora do Túnel VPN – Tunelamento Dividido
Problemas Comuns de PIXr-para-VPN Client
     O Tráfego Não Flui Depois que o Túnel foi Estabelecido –Não Consigo Fazer o Ping Dentro da Rede Subjacente ao PIX
     Após a Ativação do Túnel, o Usuário não Consegue Pesquisar na Internet – Tunelamento Dividido
     Após a Ativação do Túnel, Alguns Aplicativos Não Funcionam --- Ajuste de MTU no Cliente
     Ignorar o Comando sysopt
Discussões relacionadas da comunidade de suporte da Cisco
Informações Relacionadas

Introdução

Este documento fornece uma explicação de comandos debug comuns usados para solucionar problemas de IPsec no Cisco IOS® Software e no PIX. Considera-se que uma tentativa de configurar o IPsec foi concluída. Consulte Mensagens de Erro IPsec Comuns e Problemas Comuns de IPsec, para obter mais detalhes.

Pré-requisitos

Requisitos

Não existem requisitos específicos para este documento.

Componentes Usados

As informações neste documento são baseadas nestas versões de hardware e software:

  • Cisco IOS Software

    • Conjunto de recursos IPsec.

    • 56i – Indica o recurso Data Encryption Standard (DES) único (no Cisco IOS Software Release 11.2 e mais recente).

    • k2 – Indica o recurso DES triplo (no Cisco IOS Software Release 12.0 e mais recente). O DES triplo está disponível no Cisco da série 2600 e mais recente.

  • PIX - V5.0 e mais recente. Ele precisa de uma chave de licença DES única ou tripla para ser ativado.

As informações apresentadas neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos usados neste documento começaram com uma configuração vazia (padrão). Se a sua rede estiver ativa, certifique-se de conhecer o possível impacto de todos os comandos.

Convenções

Consulte Convenções de Dicas Técnicas da Cisco para obter mais informações sobre as convenções de documentos.

Depurações do Cisco IOS Software

Estas seções explicam as depurações do Cisco IOS Software. Consulte Mensagens de Erro IPsec Comuns e Problemas Comuns de IPsec, para obter mais detalhes.

show crypto isakmp sa

Este comando mostra as associações de segurança (SAs) de protocolo Internet Security Association Management Protocol (ISAKMP) construídas entre correspondentes.

dst    	  src        state     conn-id     slot
12.1.1.2  12.1.1.1   QM_IDLE    1           0

show crypto ipsec sa

Esse comando mostra as SAs ISAKMP construídas entre correspondentes. O túnel criptografado é construído entre 12.1.1.1 e 12.1.1.2 para o tráfego que passa entre as redes 20.1.1.0 e 10.1.1.0. Você pode ver as duas SAs de Encapsulating Security Payload (ESP) criadas na entrada e na saída. O cabeçalho de autenticação (AH) não é usado, pois não há SAs de AH.

Esta saída mostra um exemplo do comando show crypto ipsec sa.

  interface: FastEthernet0
    Crypto map tag: test, local addr. 12.1.1.1
   local  ident (addr/mask/prot/port): (20.1.1.0/255.255.255.0/0/0)
   remote ident (addr/mask/prot/port): (10.1.1.0/255.255.255.0/0/0)
   current_peer: 12.1.1.2
     PERMIT, flags={origin_is_acl,}
    #pkts encaps: 7767918, #pkts encrypt: 7767918, #pkts digest 7767918
    #pkts decaps: 7760382, #pkts decrypt: 7760382, #pkts verify 7760382
    #pkts compressed: 0, #pkts decompressed: 0
    #pkts not compressed: 0, #pkts compr. failed: 0, 
    #pkts decompress failed: 0, #send errors 1, #recv errors 0
     local crypto endpt.: 12.1.1.1, remote crypto endpt.: 12.1.1.2
     path mtu 1500, media mtu 1500
     current outbound spi: 3D3
     inbound esp sas:
      spi: 0x136A010F(325714191)
        transform: esp-3des esp-md5-hmac ,
        in use settings ={Túnel, }
        slot: 0, conn id: 3442, flow_id: 1443, crypto map: test
        sa timing: duração das chaves restantes (k/sec): (4608000/52)
        IV size: 8 bytes
        replay detection support: Y
     inbound ah sas:
     inbound pcp sas:
inbound pcp sas:
outbound esp sas:
   spi: 0x3D3(979)
    transform: esp-3des esp-md5-hmac ,
    in use settings ={Túnel, }
    slot: 0, conn id: 3443, flow_id: 1444, crypto map: test
    sa timing:duração das chaves restantes (k/sec): (4608000/52)
    IV size: 8 bytes
    replay detection support: Y
outbound ah sas:
outbound pcp sas: 

show crypto engine connection active

Esse comando mostra cada SA de Fase 2 construído e a quantidade de tráfego enviado. Já que as SAs de fase 2 são unidirecionais, cada SA exibe o tráfego em apenas uma direção (criptografias são de saída e descriptografias são de entrada).

debug crypto isakmp

Esta saída mostra um exemplo do comando debug crypto isakmp.

processing SA payload. message ID = 0 
Checking ISAKMP transform against priority 1 policy 
	encryption DES-CBC 
      	hash SHA 
	default group 2 
	auth pre-share 
	life type in seconds 
	life duration (basic) of 240 
atts são aceitáveis. Next payload is 0 
processing KE payload. message ID = 0 
processing NONCE payload. message ID = 0 
processing ID payload. message ID = 0 
SKEYID state generated 
processing HASH payload. message ID = 0 
SA has been authenticated 
processing SA payload. message ID = 800032287 

debug crypto ipsec

Este comando exibe a origem e o destino das extremidades finais de túnel IPsec. Src_proxy e dest_proxy são as sub-redes de cliente. Duas mensagens "sa created" aparecem, uma em cada direção. (Quatro mensagens aparecerão, se você executar ESP e AH.)

Esta saída mostra um exemplo do comando debug crypto ipsec.

Checking IPSec proposal 1transform 1, ESP_DES 
attributes in transform: 
	encaps is 1 
	SA life type in seconds 
	SA life duration (basic) of 3600 
	SA life type in kilobytes 
	SA life duration (VPI) of 0x0 0x46 0x50 0x0 
HMAC algorithm is SHA 
atts são aceitáveis. 
Combinações inválidas de atributos entre correspondentes aparecerão como "atts 
  não aceitáveis".
IPSEC(validate_proposal_request): proposal part #2, 
(key eng. msg.) dest= 12.1.1.2, SRC= 12.1.1.1, 
      dest_proxy= 10.1.1.0/0.0.0.0/0/0,
      src_proxy= 20.1.1.0/0.0.0.16/0/0, 
      protocol= ESP, transform= esp-des esp-sha-hmac 
      lifedur= 0s and 0kb,
      spi= 0x0(0), conn_id= 0, keysize= 0, flags= 0x4 
IPSEC(key_engine): got a queue event... 
IPSEC(spi_response): getting spi 203563166 for SA 
      from 12.1.1.2 to 12.1.1.1 for prot 2 
IPSEC(spi_response): getting spi 194838793 for SA 
      from 12.1.1.2 to 12.1.1.1 for prot 3 
IPSEC(key_engine): got a queue event... 
IPSEC(initialize_sas): , 
  (key eng. msg.) dest= 12.1.1.2, SRC= 12.1.1.1, 
      dest_proxy= 10.1.1.0/255.255.255.0/0/0, 
      src_proxy= 20.1.1.0/255.255.255.0/0/0, 
      protocol= ESP, transform= esp-des esp-sha-hmac
      lifedur= 3600s and 4608000kb, 
      spi= 0xC22209E(203563166), conn_id= 3, 
              keysize=0, flags= 0x4 
IPSEC(initialize_sas): ,
  (key eng. msg.) SRC= 12.1.1.2, dest= 12.1.1.1, 
             src_proxy= 10.1.1.0/255.255.255.0/0/0, 
      dest_proxy= 20.1.1.0/255.255.255.0/0/0, 
      protocol= ESP, transform= esp-des esp-sha-hmac 
      lifedur= 3600s and 4608000kb, 
      spi= 0xDED0AB4(233638580), conn_id= 6, 
              keysize= 0, flags= 0x4 
IPSEC(create_sa): sa created, 
      (sa) sa_dest= 12.1.1.2, sa_prot= 50, 
      sa_spi= 0xB9D0109(194838793), 
      sa_trans= esp-des esp-sha-hmac , sa_conn_id= 5 
 IPSEC(create_sa): sa created, 
      (sa) sa_dest= 12.1.1.2, sa_prot= 50, 
      sa_spi= 0xDED0AB4(233638580), 
      sa_trans= esp-des esp-sha-hmac , sa_conn_id= 6 

Exemplo de Mensagens de Erro

Estes exemplos de mensagens de erro foram gerados a partir dos comandos debug listados aqui.

  • debug crypto ipsec

  • debug crypto isakmp

  • debug crypt engine

Consulte a ferramenta Decodificador de Mensagens de Erro (clientes registrados somente) para obter mais informações.

Replay Check Failed

Esta saída mostra um exemplo do erro 'Replay Check Failed':

"%CRYPTO-4-PKT_REPLAY_ERR: decrypt: replay check failed connection id=#." 

Este erro é o resultado de uma reorganização no meio de transmissão (principalmente se existirem caminhos paralelos), ou caminhos desiguais de processamento de pacotes dentro do Cisco IOS para pacotes grandes versus pequenos e subcarga. Altere o transform-set para refletir isso. O parâmetro reply check só é visto quando transform-set esp-md5-hmac estiver habilitado. Para suprimir esta mensagem de erro, desative esp-md5-hmac e a execute somente criptografia. Consulte a ID de erro da Cisco CSCdp19680 (clientes registrados somente) .

Endereço Local Inválido

Esta saída é um exemplo da mensagem de erro.

IPSEC(validate_proposal): invalid local address 12.2.6.2
ISAKMP (0:3): atts not acceptable. Next payload is 0
ISAKMP (0:3): SA not acceptable!

Esta mensagem de erro é atribuída a um desses dois problemas comuns.

  • O comando crypto map map-name local-address interface-id instrui o router a usar um endereço incorreto como a identidade, pois o obriga a usar um endereço específico.

  • Um mapa de criptografia foi aplicado à interface incorreta ou não foi aplicado de fato. Verifique a configuração para certificar-se de que o mapa de criptografia está aplicado à interface correta.

IKE Message From X.X.X.X Failed Its Sanity Check or Is Malformed

Este erro de debug aparece se as chaves pré-compartilhadas nos correspondentes não estiverem compatíveis. Para corrigir este erro, verifique as chaves pré-compartilhadas em ambos os lados.

1d00H:%CRPTO-4-IKMP_BAD_MESSAGE: IKE message from 150.150.150.1 failed its
 sanity check or is malformed   

Processing of Main Mode Failed With Peer

Este é um exemplo da mensagem de erro do Main Mode. A falha do Main Mode sugere que a política de fase 1 não está correspondendo em ambos os lados.

1d00h: ISAKMP (0:1): atts are not acceptable. Next payload is 0
1d00h: ISAKMP (0:1); no offers accepted!
1d00h: ISAKMP (0:1): SA not acceptable!
1d00h: %CRYPTO-6-IKMP_MODE_FAILURE: Processing of Main Mode failed with 
peer at 150.150.150.1

Um comando show crypto isakmp sa exibe a ISAKMP SA no estado MM_NO_STATE. Isso também significa que o main mode falhou.

dst    	  src        state     		conn-id     	slot
10.1.1.2  10.1.1.1   MM_NO_STATE    	1           0

Verifique se a política de fase I existe em ambos os correspondentes e certifique-se de que todos os atributos estejam compatíveis.

Encryption DES or 3DES
Hash MD5 or SHA
Diffie-Hellman Group 1 or 2
Authentication {rsa-sig | rsa-encr | pre-share  

Proxy Identities Not Supported

Esta mensagem aparecerá em depurações se a lista de acosso para o tráfego IPsec não estiver correspondendo.

1d00h: IPSec(validate_transform_proposal): proxy identities not supported
1d00h: ISAKMP: IPSec policy invalidated proposal
1d00h: ISAKMP (0:2): SA not acceptable!

As listas de acesso em cada correspondente devem estar espelhadas (todas as entradas precisam ser reversíveis). Este exemplo ilustra esse aspecto.

Peer A
access-list 150 permit ip 172.21.113.0 0.0.0.255 172.21.114.0 0.0.0.255
access-list 150 permit ip host 15.15.15.1 host 172.21.114.123
Peer B
access-list 150 permit ip 172.21.114.0 0.0.0.255 172.21.113.0 0.0.0.255
access-list 150 permit ip host 172.21.114.123 host 15.15.15.1

Transform Proposal Not Supported

Esta mensagem aparecerá se a Fase II (IPsec) não corresponder em ambos os lados. Isso ocorrerá com mais freqüência se houver uma discrepância ou incompatibilidade no conjunto de transformação.

1d00h: IPSec (validate_proposal): transform proposal 
   (port 3, trans 2, hmac_alg 2) not supported  
1d00h: ISAKMP (0:2) : atts not acceptable. Next payload is 0
1d00h: ISAKMP (0:2) SA not acceptable

Certifique-se de que haja correspondência do conjunto de transformações nos dois lados.

crypto ipsec transform-set transform-set-name transform1 
[transform2 [transform3]]
? ah-md5-hmac
? ah-sha-hmac 
? esp-des
? esp-des and esp-md5-hmac
? esp-des and esp-sha-hmac
? esp-3des and esp-md5-hmac 
? esp-3des and esp-sha-hmac
? comp-lzs

No Cert and No Keys With Remote Peer

Esta mensagem indica que o endereço do correspondente configurado no router está errado ou foi alterado. Verifique se o endereço do correspondente está correto e se o endereço pode ser alcançado.

1d00h: ISAKMP: No cert, and no keys (public or pre-shared) with 
remote peer 150.150.150.2

Peer Address X.X.X.X Not Found

Esta mensagem normalmente aparece com a mensagem de erro do VPN 3000 Concentrator correspondente Mensagem: No proposal chosen(14). Esse é um resultado por serem conexões host a host. A configuração do router possui as propostas IPsec em uma ordem onde a proposta escolhida para o router está compatível com a lista de acesso, mas não com o correspondente. A lista de acesso possui uma rede maior que inclui o host que cruza o tráfego. Para corrigir isso, faça com que a proposta do router nessa conexão concentrador-para-router seja a primeira da linha. Isso permite que ela corresponda ao host específico primeiro.

20:44:44: IPSEC(validate_proposal_request): proposal part #1,
  (key eng. msg.) dest= 194.70.240.150, src= 198.174.236.6, 
    dest_proxy= 10.0.0.76/255.255.255.255/0/0 (type=1), 
    src_proxy= 198.174.238.203/255.255.255.255/0/0 (type=1),
    protocol= ESP, transform= esp-3des esp-md5-hmac , 
    lifedur= 0s and 0kb, 
    spi= 0x0(0), conn_id= 0, keysize= 0, flags= 0x4
20:44:44: IPSEC(validate_transform_proposal): 
   peer address 198.174.236.6 not found

IPsec Packet has Invalid SPI

Esta saída é um exemplo da mensagem de erro:

%PIX-4-402101: decaps: recd IPSEC packet has 
invalid spi for destaddr=dest_address, prot=protocol, spi=number

O pacote IPsec recebido especifica um Security Parameters Index (SPI) que não existe no security associations database (SADB). Essa pode ser uma condição temporária devido:

  • Às pequenas diferenças na idade de security associations (SAs) entre os correspondentes IPsec

  • Ao fato de as SAs locais terem sido apagadas

  • A pacotes incorretos enviados pelo correspondente IPsec

Isso também pode ser um ataque.

Ação Recomendada: O correspondente pode não reconhecer que as SAs locais foram apagadas. Se uma nova conexão for estabelecida a partir do router local, os dois correspondentes podem, então, se restabelecer com êxito. Caso contrário, se o problema ocorrer por mais tempo, tente estabelecer uma nova conexão ou entre em contato com o administrador do correspondente.

IPSEC(initialize_sas): Invalid Proxy IDs

O erro 21:57:57: IPSEC(initialize_sas): invalid proxy IDs Indica que a identidade de proxy recebida não corresponde à identidade de proxy configurada conforme a lista de acesso. Para garantir que ambas estejam de acordo, verifique a saída do comando debug.

Na saída do comando debug da solicitação da proposta, a access-list 103 permit ip 10.1.1.0 0.0.0.255 20.1.1.0 0.0.0.255 correspondente não está compatível. A lista de acesso é especificada pela rede em uma extremidade e especificada pelo host na outra.

21:57:57: IPSEC(validate_proposal_request): proposal part #1,
  (key eng. msg.) dest= 192.1.1.1, src= 192.1.1.2,
    dest_proxy= 10.1.1.1/255.255.255.0/0/0 (type=4),
    src_proxy= 20.1.1.1/255.255.255.0/0/0 (type=4)

Reserved Not Zero on Payload 5

Isto significa que as chaves ISAKMP não correspondem. Faça uma nova tentativa ou reinicialize para garantir a precisão.

Hash Algorithm Offered does not Match Policy

Se as políticas ISAKMP configuradas não estiverem de acordo com a política proposta pelo correspondente remoto, o router tentará a política padrão de 65535. Se ela também não for compatível, a negociação ISAKMP falhará. Um usuário recebe a mensagem de erro Hash algorithm offered does not match policy! ou Encryption algorithm offered does not match policy! nos routers.

=RouterA=
3d01h: ISAKMP (0:1): processing SA payload. message ID = 0
3d01h: ISAKMP (0:1): found peer pre-shared key matching 209.165.200.227
ISAKMP (0:1): Checking ISAKMP transform 1 against priority 1 policy
ISAKMP:      encryption 3DES-CBC
ISAKMP:      hash MD5
ISAKMP:      default group 1
ISAKMP:      auth pre-share
ISAKMP:      life type in seconds
ISAKMP:      life duration (VPI) of  0x0 0x1 0x51 0x80
ISAKMP (0:1): Hash algorithm offered does not match policy!
ISAKMP (0:1): atts não são aceitáveis. Próximo payload é 0
=RouterB=
ISAKMP (0:1): Checking ISAKMP transform 1 against priority 65535 policy
ISAKMP:      encryption 3DES-CBC
ISAKMP:      hash MD5
ISAKMP:      default group 1
ISAKMP:      auth pre-share
ISAKMP:      life type in seconds
ISAKMP:      life duration (VPI) of  0x0 0x1 0x51 0x80
ISAKMP (0:1): Encryption algorithm offered does not match policy!
ISAKMP (0:1): atts não são aceitáveis. Próximo payload é 0
ISAKMP (0:1): nenhuma oferta aceita!
ISAKMP (0:1): SA de fase 1 não aceitável!
         

HMAC Verification Failed

Esta mensagem de erro é relatada quando há uma falha na verificação do Hash-based Message Authentication Code (HMAC) no pacote IPsec. Isso geralmente acontece quando o pacote está corrompido de alguma maneira.

Sep 22 11:02:39 131.203.252.166 2435: 
Sep 22 11:02:39: %MOTCR-1-ERROR:motcr_crypto_callback() motcr return failure
Sep 22 11:02:39 131.203.252.166 2436: 
Sep 22 11:02:39: %MOTCR-1-PKTENGRET_ERROR: MOTCR PktEng Return Value = 0x20000, 
                 PktEngReturn_MACMiscompare
         

Se você ocasionalmente encontrar esta mensagem de erro, ignore-a. No entanto, se isso tornar-se freqüente, investigue o que está de fato corrompendo o pacote. Isso pode acontecer devido a um defeito no acelerador de criptografia.

Remote Peer Not Responding

Esta mensagem de erro aparece quando há uma incompatibilidade em Transform Set. Certifique-se de que a compatibilidade de Transform Sets esteja configurada em ambos os correspondentes.

Depurações PIX

show crypto isakmp sa

Este comando mostra o ISAKMP SA construído entre correspondentes.

dst    	  src        state     conn-id     slot
12.1.1.2  12.1.1.1   QM_IDLE    1           0

Na saída de show crypto isakmp sa, o estado deverá sempre ser QM_IDLE. Se o estado for MM_KEY_EXCH, isso significa que a chave pré-compatilhada configurada não está correta ou os endereços IP de correspondentes são diferentes.

PIX(config)#show crypto isakmp sa
Total     : 2
Embryonic : 1
        dst               src        state     pending     created
 192.168.254.250   10.177.243.187    MM_KEY_EXCH   0           0

Você pode retificar isso ao configurar a chave pré-compartilhada ou o endereço IP corretos.

show crypto ipsec sa

Este comando mostra as SAs ISAKMP construídas entre correspondentes. Um túnel criptografado é construído entre 12.1.1.1 e 12.1.1.2 para o tráfego que passa entre as redes 20.1.1.0 e 10.1.1.0. Você pode ver as duas SAs de ESP criadas na entrada e na saída. O AH não é usado, pois não há SAs de AH.

Um exemplo do comando show crypto ipsec sa é exibido nesta saída.

interface: outside
    Crypto map tag: vpn, local addr. 12.1.1.1
   local  ident (addr/mask/prot/port): (20.1.1.0/255.255.255.0/0/0)
   remote ident (addr/mask/prot/port): (12.1.1.2/255.255.255.255/0/0)
   current_peer: 10.2.1.1
   dynamic allocated peer ip: 12.1.1.2
     PERMIT, flags={}
    #pkts encaps: 345, #pkts encrypt: 345, #pkts digest 0
    #pkts decaps: 366, #pkts decrypt: 366, #pkts verify 0
    #pkts compressed: 0, #pkts decompressed: 0
    #pkts not compressed: 0, #pkts compr. failed: 0, 
    #pkts decompress failed: 0, #send errors 0, #recv errors 0
     local crypto endpt.: 12.1.1.1, remote crypto endpt.: 12.1.1.2
     path mtu 1500, ipsec overhead 56, media mtu 1500
     current outbound spi: 9a46ecae
     inbound esp sas:
      spi: 0x50b98b5(84646069)
        transform: esp-3des esp-md5-hmac ,
        in use settings ={Túnel, }
        slot: 0, conn id: 1, crypto map: vpn
        sa timing: remaining key lifetime (k/sec): (460800/21)
        IV size: 8 bytes
        replay detection support: Y
     inbound ah sas:

     inbound pcp sas:

     outbound esp sas:
      spi: 0x9a46ecae(2588339374)
        transform: esp-3des esp-md5-hmac ,
        in use settings ={Túnel, }
        slot: 0, conn id: 2, crypto map: vpn
        sa timing: remaining key lifetime (k/sec): (460800/21)
        IV size: 8 bytes
        replay detection support: Y 
    outbound ah sas:

debug crypto isakmp

Este comando exibe informações de depuração sobre conexões IPsec e mostra o primeiro conjunto de atributos que esteja sendo negado devido a incompatibilidades em ambas as extremidades. A segunda tentativa de correspondência (tentar 3DES em vez de DES e o Secure Hash Algorithm [SHA]) é aceitável, e a ISAKMP SA é criada. Essa depuração também é de um cliente dialup que aceita um endereço IP (10.32.8.1) fora de um pool local. Quando a ISAKMP SA é criada, os atributos IPsec são negociados e considerados aceitáveis. O PIX, então, define as SAs IPsec conforme visto aqui.

Esta saída mostra um exemplo do comando debug crypto isakmp.

crypto_isakmp_process_block: src 12.1.1.1, dest 12.1.1.2
OAK_AG exchange
ISAKMP (0): processing SA payload. message ID = 0
ISAKMP (0): Checking ISAKMP transform 1 against priority 1 policy
ISAKMP:      encryption DES-CBC
ISAKMP:      hash MD5
ISAKMP:      default group 1
ISAKMP:      auth pre-share
ISAKMP (0): atts não são aceitáveis. Next payload is 3
ISAKMP (0): Checking ISAKMP transform 3 against priority 1 policy
ISAKMP:      encryption 3DES-CBC
ISAKMP:      hash SHA
ISAKMP:      default group 1
ISAKMP:      auth pre-share
ISAKMP (0): atts são aceitáveis. Next payload is 3
ISAKMP (0): processing KE payload. message ID = 0
ISAKMP: Created a peer node for 12.1.1.2
OAK_QM exchange
ISAKMP (0:0): Need config/address
ISAKMP (0:0): initiating peer config to 12.1.1.2. ID = 2607270170 (0x9b67c91a)
return status is IKMP_NO_ERROR
crypto_isakmp_process_block: src 12.1.1.2, dest 12.1.1.1
ISAKMP_TRANSACTION exchange
ISAKMP (0:0): processing transaction payload from 12.1.1.2. 
   message ID = 2156506360
ISAKMP: Config payload CFG_ACK
ISAKMP (0:0): peer accepted the address!
ISAKMP (0:0): processing saved QM.
oakley_process_quick_mode:
OAK_QM_IDLE
ISAKMP (0): processing SA payload. message ID = 818324052
ISAKMP : Checking IPSec proposal 1
ISAKMP: transform 1, ESP_DES
ISAKMP:   attributes in transform:
ISAKMP:      authenticator is HMAC-MD5
ISAKMP:      encaps is 1
IPSEC(validate_proposal): transform proposal 
   (prot 3, trans 2, hmac_alg 1) not supported
ISAKMP (0): atts não são aceitáveis. Next payload is 0
ISAKMP : Checking IPSec proposal 2
ISAKMP: transform 1, ESP_3DES
ISAKMP:   attributes in transform:
ISAKMP:      authenticator is HMAC-MD5
ISAKMP:      encaps is 1
ISAKMP (0): atts são aceitáveis.
ISAKMP (0): processing NONCE payload. message ID = 818324052
ISAKMP (0): processing ID payload. message ID = 81
ISAKMP (0): ID_IPV4_ADDR src 10.32.8.1 prot 0 port 0
ISAKMP (0): processing ID payload. message ID = 81
ISAKMP (0): ID_IPV4_ADDR dst 12.1.1.1 prot 0 port 0
INITIAL_CONTACTIPSEC(key_engine): got a queue event...

debug crypto ipsec

Este comando exibe as informações de debug sobre conexões IPsec.

IPSEC(key_engine): got a queue event...
IPSEC(spi_response): getting spi 0xd532efbd(3576885181) for SA
        from  12.1.1.2  to  12.1.1.1  for prot 3
return status is IKMP_NO_ERROR
crypto_isakmp_process_block: src 12.1.1.2, dest 12.1.1.1
OAK_QM exchange
oakley_process_quick_mode:
OAK_QM_AUTH_AWAIT
ISAKMP (0): Criando SAs IPSec
        inbound SA from  12.1.1.2  to  12.1.1.1  
           (proxy 10.32.8.1 to  12.1.1.1.)
        has spi 3576885181 and conn_id 2 and flags 4
        outbound SA from  12.1.1.1  to  12.1.1.2  
           (proxy 12.1.1.1 to 10.32.8.1)
        has spi 2749108168 and conn_id 1 and flags 4IPSEC(key_engine):  
           got a queue event...
IPSEC(initialize_sas): ,
  (key eng. msg.) dest= 12.1.1.1, src= 12.1.1.2,
    dest_proxy= 12.1.1.1/0.0.0.0/0/0 (type=1),
    src_proxy= 10.32.8.1/0.0.0.0/0/0 (type=1),
    protocol= ESP, transform= esp-3des esp-md5-hmac ,
    lifedur= 0s and 0kb,
    spi= 0xd532efbd(3576885181), conn_id= 2, keysize= 0, flags= 0x4 
IPSEC(initialize_sas): ,
  (key eng. msg.) src= 12.1.1.1, dest= 12.1.1.2,
    src_proxy= 12.1.1.1/0.0.0.0/0/0 (type=1),
    dest_proxy= 10.32.8.1/0.0.0.0/0/0 (type=1),
    protocol= ESP, transform= esp-3des esp-md5-hmac ,
    lifedur= 0s and 0kb,
    spi= 0xa3dc0fc8(2749108168), conn_id= 1, keysize= 0, flags= 0x4
return status is IKMP_NO_ERROR

Problemas Comuns de Router-para-VPN Client

Incapacidade de Acessar Sub-redes Fora do Túnel VPN – Tunelamento Dividido

Este trecho de configuração de router exibe como ativar o tunelamento dividido para as conexões VPN. O comando access list 150 é associado ao grupo conforme configurado no comando crypto isakmp client configuration group hw-client-groupname. Isso permite que o Cisco VPN Client use o router para acessar uma sub-rede adicional que não faça parte do túnel VPN. Isso é feito sem comprometer a segurança da conexão IPsec. O túnel é formado na rede 172.168.0.128. O tráfego flui sem criptografia para dispositivos não definidos no comando access list 150, como a Internet.

!
crypto isakmp client configuration group hw-client-groupname
 key hw-client-password
 dns 172.168.0.250 172.168.0.251
 wins 172.168.0.252 172.168.0.253
 domain cisco.com
 pool dynpool
 acl 150 
!
!
access-list 150 permit ip 172.168.0.128 0.0.0.127 any 
!

Problemas Comuns de PIXr-para-VPN Client

Estas seções abordam problemas comuns encontrados ao configurar o PIX para IPsec com a ajuda do VPN Client 3.x. As configurações padrão para o PIX são baseadas na versão 6.x.

O Tráfego Não Flui Depois que o Túnel foi Estabelecido –Não Consigo Fazer o Ping Dentro da Rede Subjacente ao PIX

Este é um problema comum associado ao roteamento. Certifique-se de que o PIX possui uma rota para redes que estejam dentro e não diretamente conectadas à mesma sub-rede. Além disso, a rede interna precisa de uma rota de volta ao PIX para os endereços no conjunto de endereços do cliente.

Esta saída exibe um exemplo.

            
               !--- Endereço da interface interna do PIX.
            
ip address inside 10.1.1.1 255.255.255.240

               !--- Rota para as redes que estão no segmento interno. 
!--- O salto seguinte é o router interno.
            
route inside 172.16.0.0 255.255.0.0 10.1.1.2 1

               !--- Conjunto de endereços definido no PIX do qual ele atribui endereços  
!--- ao VPN Client para a sessão IPsec.
            
ip local pool mypool 10.1.2.1-10.1.2.254

               !--- No router interno, se o gateway padrão não for 
!--- a interface interna do PIX, o router precisará de uma rota 
!--- para a rede 10.1.2.0/24 com um salto seguinte como a interface interna do PIX
!--- (como nos routers Cisco IOS).
            
ip route 10.1.2.0 255.255.255.0 10.1.1.1

Após a Ativação do Túnel, o Usuário não Consegue Pesquisar na Internet – Tunelamento Dividido

O motivo mais comum para este problema e que, com o túnel IPsec do VPN Client para o PIX, todo o tráfego é enviado através do túnel para o PIX Firewall. A funcionalidade do PIX não permite que o tráfego seja retornado para a interface de onde foi recebido. Sendo assim, o tráfego destinado para a Internet não funciona. Para corrigir esse problema, use o comando split tunneling. A idéia subjacente a essa correção é a de que apenas um envia tráfego específico pelo túnel e o restante do tráfego passa diretamente para a Internet, e não pelo túnel.

            vpngroup vpn3000 split-tunnel 90
access-list 90 permit ip 10.1.1.0 255.255.255.0 10.1.2.0 255.255.255.0
access-list 90 permit ip 172.16.0.0 255.255.0.0 10.1.2.0 255.255.255.0

Observação: O comando vpngroup vpn3000 split-tunnel 90 habilita o tunelamento dividido com access-list number 90. O comando access-list 90 define que tráfego fluirá pelo túnel, o resto do tráfego será negado no final da lista de acesso. A lista de acesso deve ser a mesma para negação de NAT no PIX.

Após a Ativação do Túnel, Alguns Aplicativos Não Funcionam --- Ajuste de MTU no Cliente

Algumas vezes após o túnel ser estabelecido, um usuário descobre ser possível fazer o ping nas máquinas na rede subjacente ao PIX Firewall, mas não poderá usar certos aplicativos, como o Microsoft Outlook. Um problema comum é o tamanho da maximum transfer unit (MTU) dos pacotes. O cabeçalho IPSec pode ter de 50 a 60 bytes, que são adicionados ao pacote original. Se o tamanho do pacote ficar maior que 1500 (o padrão para Internet), os dispositivos precisarão fragmentá-lo. Dessa forma, após ele adicionar o cabeçalho IPsec, o tamanho ainda estará abaixo de 1496. Esse é o máximo para IPsec.

O comando show interface exibe a MTU dessa interface me particular nos routers acessíveis ou nos routers dentro das próprias instalações. Para determinar a MTU do caminho inteiro da origem para o destino, os datagramas de vários tamanhos são enviados com um conjunto de bits DF, de forma que o datagrama enviado seja superior à MTU, esta mensagem de erro seja retornada à origem:

frag. needed and DF set

Esta saída de exemplo mostra um exemplo de localização da MTU do caminho entre os hosts com endereços IP 10.1.1.2 e 172.16.1.56.

Router#debug ip icmp
ICMP packet debugging is on
 

               !--- Execute um ping estendido.
            
Router#ping
Protocol [ip]:
Target IP address: 172.16.1.56
Repeat count [5]:
Datagram size [100]: 1550
Timeout in seconds [2]:


               !--- Certifique-se de digitar y em comandos estendidos.
            
Extended commands [n]: y
Source address or interface: 10.1.1.2
Type of service [0]:


               !--- Defina o bit DF conforme exibido.
            

Set DF bit in IP header? [no]: y
Validate reply data? [no]:
Data pattern [0xABCD]:
Loose, Strict, Record, Timestamp, Verbose[none]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 5, 1550-byte ICMP Echos to 172.16.1.56, timeout is 2 seconds:
 
2w5d: ICMP: dst (172.16.1.56): frag. needed and DF set.
2w5d: ICMP: dst (172.16.1.56): frag. needed and DF set.
2w5d: ICMP: dst (172.16.1.56): frag. needed and DF set.
2w5d: ICMP: dst (172.16.1.56): frag. needed and DF set.
2w5d: ICMP: dst (172.16.1.56): frag. needed and DF set.
Success rate is 0 percent (0/5)


               !--- Reduza mais o tamanho do datagrama e execute um ping estendido novamente.
            
Router#ping
Protocol [ip]:
Target IP address: 172.16.1.56
Repeat count [5]:
Datagram size [100]: 1500
Timeout in seconds [2]:
Extended commands [n]: y
Source address or interface: 10.1.1.2
Type of service [0]:
Set DF bit in IP header? [no]: y
Validate reply data? [no]:
Data pattern [0xABCD]:
Loose, Strict, Record, Timestamp, Verbose[none]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 5, 1500-byte ICMP Echos to 172.16.1.56, timeout is 2 seconds:
!!!!!
2w5d: ICMP: echo reply rcvd, src 172.16.1.56, dst 10.1.1.2
2w5d: ICMP: echo reply rcvd, src 172.16.1.56, dst 10.1.1.2
2w5d: ICMP: echo reply rcvd, src 172.16.1.56, dst 10.1.1.2
2w5d: ICMP: echo reply rcvd, src 172.16.1.56, dst 10.1.1.2
2w5d: ICMP: echo reply rcvd, src 172.16.1.56, dst 10.1.1.2
 
Success rate is 100 percent (5/5), round-trip min/avg/max = 380/383/384 ms

Observação: O VPN Client vem com um utilitário de ajuste de MTU que permite que o usuário ajuste a MTU para o Cisco VPN Client. No caso de usuários de cliente PPP over Ethernet (PPPoE), ajuste a MTU para o adaptador PPPoE.

Observação: Conclua estas etapas para ajustar o utilitário MTU para o VPN Client.

  1. Selecione Start > Programs > Cisco System VPN Client > Set MTU (Iniciar > Programas > Cisco System VPN Client > Definir MTU).

  2. Selecione Local Area Connection (Conexão Local) e escolha 1400. Clique em OK.

    ipsec_debug-2.gif

  3. Repita a etapa 1, selecione Dial-up Networking (Rede Dial-up) e escolha 576. Clique em OK.

    ipsec_debug-1.gif

Ignorar o Comando sysopt

Use o comando sysopt connection permit-ipsec em configurações IPsec no PIX para permitir que o tráfego IPsec passe pelo PIX Firewall sem a verificação das instruções do comando conduit ou access-list. Por padrão, todas as sessões de entrada precisam ter permissão explícita com uma instrução de comando conduit ou access-list. Com tráfego IPsec protegido, a verificação da lista de acesso secundária pode ser redundante. Para que sessões de entrada IPsec authenticated/cipher sejam sempre permitidas, use o comando sysopt connection permit-ipsec.

Discussões relacionadas da comunidade de suporte da Cisco

A Comunidade de Suporte da Cisco é um fórum onde você pode perguntar e responder, oferecer sugestões e colaborar com colegas.


Informações Relacionadas


Document ID: 5409