Соединение с IPSec/L2tp с OpenSwan/xl2tpd от Windows7 до Amazon EC2

Я пытаюсь соединиться от своего Windows7 дома к моей установке OpenSwan/xl2tpd на экземпляре Ubuntu EC2 на Amazon.
Это - соединение, являющееся NATed от обоих концы клиента и сервера.
Я следовал советам от нескольких потоков для того, как выполнить это соединение, но отказавший со всеми ними

Что озадачивает меня, главным образом следующая строка в журнале:

Jul 13 11:04:21 ip-10-117-59-224 pluto[8782]: "connRW48"[2] 85.178.143.82 #1: cannot respond to IPsec SA request because no connection is known for 23.21.84.48/32===10.117.59.224[23.21.84.48,+S=C]:17/1701...85.178.143.82[192.168.2.103,+S=C]:17/1701===192.168.2.103/32 

Это соединение ясно существует с внешним IP, идентифицированным как leftid (см. ниже об автоматическом ipsec - состояние). Почему это не может быть найдено? Или что еще я делаю неправильно?

Я ценил бы любую справку.

Моя конфигурация:

Дюйм/с я использую:

  • Экземпляр EC2 внутренний IP: 10.117.59.224
  • Эластичный IP связан с экземпляром: 23.21.84.48
  • IP моего ISP, связанный с моим маршрутизатором дома: 85.178.143.82
  • Мой домашний IP NAT: 192.168.2.103

Я в настоящее время получаю эти сообщения об ошибках на своем /var/log/auth.log:

Jul 13 11:03:55 ip-10-117-59-224 pluto[8782]: Changed path to directory '/etc/ipsec.d/ocspcerts'
Jul 13 11:03:55 ip-10-117-59-224 pluto[8782]: Changing to directory '/etc/ipsec.d/crls'
Jul 13 11:03:55 ip-10-117-59-224 pluto[8782]:   Warning: empty directory
Jul 13 11:03:55 ip-10-117-59-224 pluto[8782]: listening for IKE messages
Jul 13 11:03:55 ip-10-117-59-224 pluto[8782]: adding interface eth0/eth0 10.117.59.224:500
Jul 13 11:03:55 ip-10-117-59-224 pluto[8782]: adding interface lo/lo 127.0.0.1:500
Jul 13 11:03:55 ip-10-117-59-224 pluto[8782]: adding interface lo/lo ::1:500
Jul 13 11:03:55 ip-10-117-59-224 pluto[8782]: loading secrets from "/etc/ipsec.secrets"
Jul 13 11:03:55 ip-10-117-59-224 pluto[8782]: loaded private key for keyid: PPK_RSA:AQOnFE96U
Jul 13 11:03:57 ip-10-117-59-224 pluto[8782]: added connection description "connRW48"
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: packet from 85.178.143.82:500: ignoring Vendor ID payload [MS NT5 ISAKMPOAKLEY 00000008]
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: packet from 85.178.143.82:500: received Vendor ID payload [RFC 3947] meth=109, but port floating is off
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: packet from 85.178.143.82:500: received Vendor ID payload [draft-ietf-ipsec-nat-t-ike-02_n] meth=106, but port floating is off
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: packet from 85.178.143.82:500: ignoring Vendor ID payload [FRAGMENTATION]
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: packet from 85.178.143.82:500: ignoring Vendor ID payload [MS-Negotiation Discovery Capable]
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: packet from 85.178.143.82:500: ignoring Vendor ID payload [Vid-Initial-Contact]
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: packet from 85.178.143.82:500: ignoring Vendor ID payload [IKE CGA version 1]
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: "connRW48"[1] 85.178.143.82 #1: responding to Main Mode from unknown peer 85.178.143.82
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: "connRW48"[1] 85.178.143.82 #1: OAKLEY_GROUP 20 not supported.  Attribute OAKLEY_GROUP_DESCRIPTION
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: "connRW48"[1] 85.178.143.82 #1: OAKLEY_GROUP 19 not supported.  Attribute OAKLEY_GROUP_DESCRIPTION
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: "connRW48"[1] 85.178.143.82 #1: transition from state STATE_MAIN_R0 to state STATE_MAIN_R1
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: "connRW48"[1] 85.178.143.82 #1: STATE_MAIN_R1: sent MR1, expecting MI2
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: "connRW48"[1] 85.178.143.82 #1: transition from state STATE_MAIN_R1 to state STATE_MAIN_R2
Jul 13 11:04:20 ip-10-117-59-224 pluto[8782]: "connRW48"[1] 85.178.143.82 #1: STATE_MAIN_R2: sent MR2, expecting MI3
Jul 13 11:04:21 ip-10-117-59-224 pluto[8782]: "connRW48"[1] 85.178.143.82 #1: Main mode peer ID is ID_IPV4_ADDR: '192.168.2.103'
Jul 13 11:04:21 ip-10-117-59-224 pluto[8782]: "connRW48"[1] 85.178.143.82 #1: switched from "connRW48" to "connRW48"
Jul 13 11:04:21 ip-10-117-59-224 pluto[8782]: "connRW48"[2] 85.178.143.82 #1: deleting connection "connRW48" instance with peer 85.178.143.82 {isakmp=#0/ipsec=#0}
Jul 13 11:04:21 ip-10-117-59-224 pluto[8782]: "connRW48"[2] 85.178.143.82 #1: transition from state STATE_MAIN_R2 to state STATE_MAIN_R3
Jul 13 11:04:21 ip-10-117-59-224 pluto[8782]: "connRW48"[2] 85.178.143.82 #1: STATE_MAIN_R3: sent MR3, ISAKMP SA established {auth=OAKLEY_PRESHARED_KEY cipher=aes_256 prf=oakley_sha group=modp2048}
Jul 13 11:04:21 ip-10-117-59-224 pluto[8782]: "connRW48"[2] 85.178.143.82 #1: the peer proposed: 23.21.84.48/32:17/1701 -> 192.168.2.103/32:17/0
Jul 13 11:04:21 ip-10-117-59-224 pluto[8782]: "connRW48"[2] 85.178.143.82 #1: cannot respond to IPsec SA request because no connection is known for 23.21.84.48/32===10.117.59.224[23.21.84.48,+S=C]:17/1701...85.178.143.82[192.168.2.103,+S=C]:17/1701===192.168.2.103/32
Jul 13 11:04:21 ip-10-117-59-224 pluto[8782]: "connRW48"[2] 85.178.143.82 #1: sending encrypted notification INVALID_ID_INFORMATION to 85.178.143.82:500
Jul 13 11:04:22 ip-10-117-59-224 pluto[8782]: "connRW48"[2] 85.178.143.82 #1: the peer proposed: 23.21.84.48/32:17/1701 -> 192.168.2.103/32:17/0
Jul 13 11:04:22 ip-10-117-59-224 pluto[8782]: "connRW48"[2] 85.178.143.82 #1: cannot respond to IPsec SA request because no connection is known for 23.21.84.48/32===10.117.59.224[23.21.84.48,+S=C]:17/1701...85.178.143.82[192.168.2.103,+S=C]:17/1701===192.168.2.103/32

Моя группа безопасности позволяет входящую коммуникацию для портов UDP 500 и 4500 среди других

Мои iptables позволяют также 1701 среди других

Мой/etc/ipsec.conf:

version 2.0
config setup
        protostack=netkey
        interfaces=%defaultroute
        nat_traversal=yes
        virtual_private=%v4:10.0.0.0/8,%v4:172.16.0.0/12
        oe=no
        nhelpers=0
        disable_port_floating=yes
include /etc/ipsec.d/*.conf

Мой/etc/ipsec.d/connRW48.conf

conn connRW48
        rightsubnet=vhost:%no,%priv
        type=transport
        authby=secret
        pfs=no
        rekey=no
        ikelifetime=8h
        keylife=1h
        leftprotoport=17/1701
        left=10.117.59.224
        #leftid=@ip-10-117-59-224.ec2.internal
        leftid=23.21.84.48
        rightprotoport=17/0
        right=%any
        auto=ignore

Мой (подвергнутый цензуре)/etc/ipsec.secrets:

: RSA   {
        # RSA 2048 bits   ip-10-117-59-224   Tue Jul 10 14:01:50 2012
        # for signatures only, UNSAFE FOR ENCRYPTION
        #pubkey=XXXXXXX
        Modulus: XXX
        PublicExponent: 0x03
        # everything after this point is secret
        PrivateExponent: XXX
        Prime1: XXX
        Prime2: XXX
        Exponent1: XXX
        Exponent2: XXX
        Coefficient: XXX
        }
# do not change the indenting of that "}"
@ip-10-117-59-224.ec2.internal %any: PSK "XXX"
23.21.84.48  %any: PSK "XXX"

Мой вывод от выполнения 'ipsec проверяет':

Checking your system to see if IPsec got installed and started correctly:
Version check and ipsec on-path                                 [OK]
Linux Openswan U2.6.37/K3.2.0-25-virtual (netkey)
Checking for IPsec support in kernel                            [OK]
 SAref kernel support                                           [N/A]
 NETKEY:  Testing XFRM related proc values                      [OK]
        [OK]
        [OK]
Checking that pluto is running                                  [OK]
 Pluto listening for IKE on udp 500                             [OK]
 Pluto listening for NAT-T on udp 4500                          [FAILED]
Checking for 'ip' command                                       [OK]
Checking /bin/sh is not /bin/dash                               [WARNING]
Checking for 'iptables' command                                 [OK]
Opportunistic Encryption Support                                [DISABLED]

Мой вывод для выполнения 'ipsec автоматический - состояние:

000 using kernel interface: netkey
000 interface lo/lo ::1
000 interface lo/lo 127.0.0.1
000 interface eth0/eth0 10.117.59.224
000 %myid = (none)
000 debug none
000
000 virtual_private (%priv):
000 - allowed 2 subnets: 10.0.0.0/8, 172.16.0.0/12
000 - disallowed 0 subnets:
000 WARNING: Disallowed subnets in virtual_private= is empty. If you have
000          private address space in internal use, it should be excluded!
000
000 algorithm ESP encrypt: id=2, name=ESP_DES, ivlen=8, keysizemin=64, keysizemax=64
...
...
000 algorithm IKE dh group: id=24, name=OAKLEY_GROUP_DH24, bits=2048
000
000 stats db_ops: {curr_cnt, total_cnt, maxsz} :context={0,0,0} trans={0,0,0} attrs={0,0,0}
000
000 "connRW48": 10.117.59.224[23.21.84.48,+S=C]:17/1701...%virtual[+S=C]:17/0===?; unrouted; eroute owner: #0
000 "connRW48":     myip=unset; hisip=unset;
000 "connRW48":   ike_life: 28800s; ipsec_life: 3600s; rekey_margin: 540s; rekey_fuzz: 100%; keyingtries: 0
000 "connRW48":   policy: PSK+ENCRYPT+DONTREKEY+IKEv2ALLOW+SAREFTRACK+lKOD+rKOD; prio: 32,32; interface: eth0;
000 "connRW48":   newest ISAKMP SA: #0; newest IPsec SA: #0;
000

Заранее спасибо

4
задан 13 July 2012 в 15:09
2 ответа

Проблема, похоже, связана с патчем реестра Windows для разрешения NATTed-соединения из клиента Windows на сервер L2TP.

Reg patch:

Редактор реестра Windows версии 5.00 [HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ PolicyAgent] "AssumeUDPEncapsulationContextOnSendRule" = двойное слово: 00000002

0
ответ дан 3 December 2019 в 04:00

Я запускаю openwan в EC2 с подобной настройкой, и клиенты windows могут подключаться без проблем. Не уверен, в чём именно проблема, но вот некоторые различия между моими и вашими конфигурациями:

openswan 2.6.38

No version 2.0 parameter. Остальные параметры setup более или менее совпадают.

Имейте следующие параметры, которые отличаются от ваших (настроены для вашей конфигурации):

leftsubnet=10.117.59.224/32 
leftnexthop=%defaultroute # this might be redundant with netkey stack.
rightprotoport=17/%any
rightid=%any
forceencaps=yes
auth=esp
ike=3des-sha1
phase2alg=3des-sha1

Я не указываю ikelifetime или keylife.

ipsec.secretts ссылается на публичный IP, только - нет @внутренней записи.

Я не уверен, применимо ли это исправление к Win7, но для XP / Vista клиентов мне нужно было отредактировать реестр согласно http://support.microsoft.com/kb/926179

Моя политика безопасности (AWS SG / iptables / etc) разрешает входящие UDP 1701,500,4500, протокол 50, протокол 51 (ESP & AH).

.
2
ответ дан 3 December 2019 в 04:00

Теги

Похожие вопросы