Estou executando um servidor OpenSwan para facilitar as conexões cliente-servidor em um centro de dados seguro.
Tenho um problema com o cliente padrão L2TP sobre IPSEC no MacOS, especificamente ao usar WIFI.
Quando eu conecto pela primeira vez, funciona bem. Quando desligo e tento conectar novamente, falha na etapa de autenticação (segredo compartilhado).
Pelo que posso ver, quando o MAC está usando WIFI, não há tempo para enviar um sinal DELETE para o OpenSwan, portanto, no que diz respeito ao OpenSwan, o par ainda existe. Eu posso ver isso nos logs do OpenSwan:
Jun 8 12:23:43 vpn1 pluto[20030]: ERROR: asynchronous network error report on eth0 (sport=500) for message to 213.242.106.82 port 500, complainant 213.242.106.82: Connection refused [errno 111, origin ICMP type 3 code 3 (not authenticated)]
Esta mensagem continua aparecendo nos logs do OpenSwan muito depois de eu ter desconectado o cliente Mac. Quando reinicio o serviço ipsec no servidor, a entrada de log desaparece e posso me conectar novamente.
Incluí detecção de ponto morto em minha configuração do OpenSwan:
dpddelay=30
dpdtimeout=120
dpdaction=clear
Eu posso ver que Dead Peer Detection está habilitado quando eu inicio a conexão:
Jun 8 12:45:34 vpn1 pluto[11064]: "vpnpsk"[14] 213.242.106.82 #14: STATE_QUICK_R2: IPsec SA established transport mode {ESP/NAT=>0x0188ccda <0x7fe9af15 xfrm=AES_256-HMAC_SHA1 NATOA=none NATD=213.242.106.82:4500 DPD=enabled}
No entanto, quando fecho a conexão no MAC, o DPD não parece entrar em ação. O OpenSwan apenas registra erros sobre a conexão.
Apenas procurando sugestões re. um conserto.
Acontece que este é um bug na versão do OpenSwan que estou usando.
Estou usando o Amazon Linux AMI e o problema RPM é:
eu rebaixei para
e o problema desapareceu.
Aparentemente, existem alguns bugs no 3.17