Guest User!

You are not Sophos Staff.

Help Us Test L2TP PSK For Android!

Hi everyone,

With the amount of Android devices out there, we are looking to accommodate the L2TP over IPSec VPN capabilities of these users. TLDR: Android asks for Plain Chap authentication and Astaro at the moment says "nope'.

Rather than develop support in ASG for plain chap, another solution which brings the feature available much sooner is to have ASG just respond with "no, but give me ChapV2" which most Android devices can actually do just fine. Also we don't want to have anyone need to root their phone or do complex operations.  However rather than just say you MUST have android 2.3 and on a "new"  phone, we'd like to know the results others have on various hardware and  android-version combinations.

The solution is quite easy to "test".
On ASG
1) enable and configure L2TP in Webadmin the way you want it
2) login to ASG as root and go to /var/chroot-ipsec/etc/ppp
3) edit (joe or pico) "options" (if you havent enabled l2tp in webadmin yet this file wont exist, just a defaults file, see step 1).
4) at the bottom of the file, add the line "require-mschap-v2" (no quotes, no caps).
5) save the file
6) *OPTIONAL* restart IPSec service (warning will disconnect site-site tunnels and connected roadwarriors!) /var/mdw/scripts/ipsec-starter restart) optional because PPP options get applied during L2TP client reconnect, but if you notice weird log entry spam or oddities it might help.

On your Android Phone:
1) make an L2TP over IPSec with PSK connection to your ASG. (eg. Settings-->Wireless and network-->VPN Settings--"Add VPN")
*note that enable L2TP secret should be left blank!

Now connect. You should get a tunnel. Let us know how you did, and if this affects anything else like other L2TP tunnels which were working fine, or any abnormalities. If a tunnel wont connect, please give us a snippet of the ipsec.log (preferably with debug options from the advanced tab in ASG enabled). 

**Remember** if you cause ASG to rewrite the options file (by say making a change to L2TP in WebAdmin) you need to re-add that line to the options file again. Please double check that your addition is still there to the options file before claiming it doesn't work. A few testers have made this mistake already. You can also add the line to options-default. This way it stays if mdw rewrites the options file, but then is more permanent, which you might not want to "test" with.

Anything we can do to help? Let us know! We will look to add this for 8.200 if it looks promising without any big downfalls perhaps.
Parents
  • ipsec.log:



    2011:03:28-17:18:51 fw pluto[7390]: packet from 72.62.225.37:500: received Vendor ID payload [RFC 3947]
    2011:03:28-17:18:51 fw pluto[7390]: packet from 72.62.225.37:500: ignoring Vendor ID payload [draft-ietf-ipsec-nat-t-ike-02]
    2011:03:28-17:18:51 fw pluto[7390]: packet from 72.62.225.37:500: ignoring Vendor ID payload [draft-ietf-ipsec-nat-t-ike-02_n]
    2011:03:28-17:18:51 fw pluto[7390]: packet from 72.62.225.37:500: ignoring Vendor ID payload [draft-ietf-ipsec-nat-t-ike-00]
    2011:03:28-17:18:51 fw pluto[7390]: packet from 72.62.225.37:500: ignoring Vendor ID payload [FRAGMENTATION 80000000]
    2011:03:28-17:18:51 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #29: responding to Main Mode from unknown peer 72.62.225.37
    2011:03:28-17:18:52 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #29: NAT-Traversal: Result using RFC 3947: no NAT detected
    2011:03:28-17:18:52 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #29: Peer ID is ID_IPV4_ADDR: '72.62.225.37'
    2011:03:28-17:18:52 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #29: sent MR3, ISAKMP SA established
    2011:03:28-17:18:52 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #29: ignoring informational payload, type IPSEC_INITIAL_CONTACT
    2011:03:28-17:18:53 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #30: responding to Quick Mode
    2011:03:28-17:18:53 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #30: IPsec SA established {ESP=>0x0c353221  
    2011:03:28-17:18:56 fw pppd-l2tp[9556]: Overriding mtu 1500 to 1380
    2011:03:28-17:18:56 fw pppd-l2tp[9556]: Overriding mru 1500 to mtu value 1380
    2011:03:28-17:18:59 fw pppd-l2tp[9556]: Overriding mtu 1400 to 1380
    2011:03:28-17:19:02 fw pppd-l2tp[9556]: Cannot determine ethernet address for proxy ARP
    2011:03:28-17:19:02 fw pppd-l2tp[9556]: local  IP address x.x.x.121
    2011:03:28-17:19:02 fw pppd-l2tp[9556]: remote IP address x.x.x.122
    2011:03:28-17:19:03 fw pppd-l2tp[9556]: id="2201" severity="info" sys="SecureNet" sub="vpn" event="Connection started" username="barry" variant="l2tp" srcip="72.62.225.37" virtual_ip="x.x.x.122"

    (manually disconnecting)

    2011:03:28-17:19:27 fw pppd-l2tp[9556]: LCP terminated by peer (User request)
    2011:03:28-17:19:27 fw pppd-l2tp[9556]: Connect time 0.5 minutes.
    2011:03:28-17:19:27 fw pppd-l2tp[9556]: Sent 0 bytes, received 0 bytes.
    2011:03:28-17:19:27 fw pppd-l2tp[9556]: Overriding mtu 1500 to 1380
    2011:03:28-17:19:27 fw pppd-l2tp[9556]: Overriding mru 1500 to mtu value 1380
    2011:03:28-17:19:27 fw pppd-l2tp[9556]: Terminating on signal 15
    2011:03:28-17:19:27 fw pppd-l2tp[9556]: id="2202" severity="info" sys="SecureNet" sub="vpn" event="Connection terminated" username="barry" variant="l2tp" srcip="72.62.225.37" virtual_ip="x.x.x.122"
    2011:03:28-17:19:29 fw pppd-l2tp[9556]: Modem hangup
    2011:03:28-17:19:29 fw pppd-l2tp[9556]: Connection terminated.
    2011:03:28-17:19:29 fw pppd-l2tp[9556]: Exit.


    Barry
Reply
  • ipsec.log:



    2011:03:28-17:18:51 fw pluto[7390]: packet from 72.62.225.37:500: received Vendor ID payload [RFC 3947]
    2011:03:28-17:18:51 fw pluto[7390]: packet from 72.62.225.37:500: ignoring Vendor ID payload [draft-ietf-ipsec-nat-t-ike-02]
    2011:03:28-17:18:51 fw pluto[7390]: packet from 72.62.225.37:500: ignoring Vendor ID payload [draft-ietf-ipsec-nat-t-ike-02_n]
    2011:03:28-17:18:51 fw pluto[7390]: packet from 72.62.225.37:500: ignoring Vendor ID payload [draft-ietf-ipsec-nat-t-ike-00]
    2011:03:28-17:18:51 fw pluto[7390]: packet from 72.62.225.37:500: ignoring Vendor ID payload [FRAGMENTATION 80000000]
    2011:03:28-17:18:51 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #29: responding to Main Mode from unknown peer 72.62.225.37
    2011:03:28-17:18:52 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #29: NAT-Traversal: Result using RFC 3947: no NAT detected
    2011:03:28-17:18:52 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #29: Peer ID is ID_IPV4_ADDR: '72.62.225.37'
    2011:03:28-17:18:52 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #29: sent MR3, ISAKMP SA established
    2011:03:28-17:18:52 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #29: ignoring informational payload, type IPSEC_INITIAL_CONTACT
    2011:03:28-17:18:53 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #30: responding to Quick Mode
    2011:03:28-17:18:53 fw pluto[7390]: "S_REF_iaNcjXoTEB_0"[1] 72.62.225.37 #30: IPsec SA established {ESP=>0x0c353221  
    2011:03:28-17:18:56 fw pppd-l2tp[9556]: Overriding mtu 1500 to 1380
    2011:03:28-17:18:56 fw pppd-l2tp[9556]: Overriding mru 1500 to mtu value 1380
    2011:03:28-17:18:59 fw pppd-l2tp[9556]: Overriding mtu 1400 to 1380
    2011:03:28-17:19:02 fw pppd-l2tp[9556]: Cannot determine ethernet address for proxy ARP
    2011:03:28-17:19:02 fw pppd-l2tp[9556]: local  IP address x.x.x.121
    2011:03:28-17:19:02 fw pppd-l2tp[9556]: remote IP address x.x.x.122
    2011:03:28-17:19:03 fw pppd-l2tp[9556]: id="2201" severity="info" sys="SecureNet" sub="vpn" event="Connection started" username="barry" variant="l2tp" srcip="72.62.225.37" virtual_ip="x.x.x.122"

    (manually disconnecting)

    2011:03:28-17:19:27 fw pppd-l2tp[9556]: LCP terminated by peer (User request)
    2011:03:28-17:19:27 fw pppd-l2tp[9556]: Connect time 0.5 minutes.
    2011:03:28-17:19:27 fw pppd-l2tp[9556]: Sent 0 bytes, received 0 bytes.
    2011:03:28-17:19:27 fw pppd-l2tp[9556]: Overriding mtu 1500 to 1380
    2011:03:28-17:19:27 fw pppd-l2tp[9556]: Overriding mru 1500 to mtu value 1380
    2011:03:28-17:19:27 fw pppd-l2tp[9556]: Terminating on signal 15
    2011:03:28-17:19:27 fw pppd-l2tp[9556]: id="2202" severity="info" sys="SecureNet" sub="vpn" event="Connection terminated" username="barry" variant="l2tp" srcip="72.62.225.37" virtual_ip="x.x.x.122"
    2011:03:28-17:19:29 fw pppd-l2tp[9556]: Modem hangup
    2011:03:28-17:19:29 fw pppd-l2tp[9556]: Connection terminated.
    2011:03:28-17:19:29 fw pppd-l2tp[9556]: Exit.


    Barry
Children
  • Sony Xperia X10, Android 2.2 - Custom CyanogenMOD 6.1.3 ROM


    2011:05:02-03:12:19 thor pluto[2406]: packet from CLIENT-IP:500: received Vendor ID payload [RFC 3947]
    2011:05:02-03:12:19 thor pluto[2406]: packet from CLIENT-IP:500: ignoring Vendor ID payload [draft-ietf-ipsec-nat-t-ike-02]
    2011:05:02-03:12:19 thor pluto[2406]: packet from CLIENT-IP:500: ignoring Vendor ID payload [draft-ietf-ipsec-nat-t-ike-02_n]
    2011:05:02-03:12:19 thor pluto[2406]: packet from CLIENT-IP:500: ignoring Vendor ID payload [draft-ietf-ipsec-nat-t-ike-00]
    2011:05:02-03:12:19 thor pluto[2406]: packet from CLIENT-IP:500: ignoring Vendor ID payload [FRAGMENTATION 80000000]
    2011:05:02-03:12:19 thor pluto[2406]: "S_REF_KErlgzXuDQ"[14] CLIENT-IP #16: responding to Main Mode from unknown peer CLIENT-IP
    2011:05:02-03:12:20 thor pluto[2406]: "S_REF_KErlgzXuDQ"[14] CLIENT-IP #16: NAT-Traversal: Result using RFC 3947: peer is NATed
    2011:05:02-03:12:20 thor pluto[2406]: "S_REF_KErlgzXuDQ"[14] CLIENT-IP #16: Peer ID is ID_IPV4_ADDR: '10.157.25.8'
    2011:05:02-03:12:20 thor pluto[2406]: "S_REF_KErlgzXuDQ"[15] CLIENT-IP #16: deleting connection "S_REF_KErlgzXuDQ" instance with peer CLIENT-IP {isakmp=#0/ipsec=#0}
    2011:05:02-03:12:20 thor pluto[2406]: | NAT-T: new mapping CLIENT-IP:500/59152)
    2011:05:02-03:12:20 thor pluto[2406]: "S_REF_KErlgzXuDQ"[15] CLIENT-IP:59152 #16: sent MR3, ISAKMP SA established
    2011:05:02-03:12:20 thor pluto[2406]: "S_REF_KErlgzXuDQ"[15] CLIENT-IP:59152 #16: ignoring informational payload, type IPSEC_INITIAL_CONTACT
    2011:05:02-03:12:21 thor pluto[2406]: "S_REF_KErlgzXuDQ"[6] CLIENT-IP:59152 #17: responding to Quick Mode
    2011:05:02-03:12:21 thor pluto[2406]: "S_REF_KErlgzXuDQ"[6] CLIENT-IP:59152 #17: IPsec SA established {ESP=>0x0b642f7f 


    Phone reports that the connection was not successful and asks for a retry.
  • Tested with 8.102 and 8.103. Device used was HTC Desire Z with stock rom (Froyo 2.2.1). Everything works ok so far.