openconnect vpn
play

Openconnect VPN Nikos Mavrogiannopoulos Security Technologies Red - PowerPoint PPT Presentation

Openconnect VPN Nikos Mavrogiannopoulos Security Technologies Red Hat February, 2016 VPN story The server Future plans VPN story 3/17/13 3 Red Hat VPN story T ask Setup a VPN service to inter-connect router devices


  1. Openconnect VPN Nikos Mavrogiannopoulos Security Technologies Red Hat February, 2016

  2. ● VPN story ● The server ● Future plans

  3. VPN story 3/17/13 3 Red Hat

  4. VPN story • T ask – Setup a VPN service to inter-connect router devices 3/17/13 4 Red Hat

  5. VPN story 3/17/13 5 Red Hat

  6. VPN story 3/17/13 6 Red Hat

  7. VPN story 3/17/13 7 Red Hat

  8. VPN story • Requirements: – Simple setup for users 3/17/13 8 Red Hat

  9. VPN story • Requirements: – Standards based solution 3/17/13 9 Red Hat

  10. VPN story • Requirements: – The administrator should be able to view who is connected on every moment 3/17/13 10 Red Hat

  11. VPN story • Requirements: – The administrator should be able to disconnect and block access to users 3/17/13 11 Red Hat

  12. VPN story • Solution: – Based on OpenVPN and lots of custom scripts 3/17/13 12 Red Hat

  13. VPN story • Solution: – Based on OpenVPN and lots of custom scripts 3/17/13 13 Red Hat

  14. VPN story • Requirements: Involved configuration files for – Simple setup for users client setup, TCP/UDP had to be selected by user – Standards based solution – The administrator should be able to view who is connected on every moment – The administrator should be able to disconnect and block access to users 3/17/13 14 Red Hat

  15. VPN story • Requirements: Was using TLS for key – Simple setup for users exchange; everything else was custom – Standards based solution – The administrator should be able to view who is connected on every moment – The administrator should be able to disconnect and block access to users 3/17/13 15 Red Hat

  16. VPN story No support; lots • Requirements: of custom scripts – Simple setup for users – Standards based solution – The administrator should be able to view who is connected on every moment – The administrator should be able to disconnect and block access to users 3/17/13 16 Red Hat

  17. VPN story • Requirements: – Simple setup for users – Standards based solution – The administrator should be able to view who is connected on every moment – The administrator should be able to disconnect and block access to users No support 3/17/13 17 Red Hat

  18. VPN story • AnyConnect VPN 3/17/13 18 Red Hat

  19. VPN story • CISCO AnyConnect VPN – A proprietary VPN implementation based on standard protocols – A VPN channel established over an HTTPS session (TLS 1.x) – Supports dual TCP/UDP; UDP via a pre-draft DTLS version – Open-source compatible client → openconnect ● Implements a compatible protocol we call “Openconnect protocol” 3/17/13 20 Red Hat

  20. VPN story • CISCO AnyConnect VPN – A proprietary VPN implementation based on standard protocols – A VPN channel established over an HTTPS session (TLS 1.x) – Supports dual TCP/UDP; UDP via a pre-draft DTLS version – Open-source compatible client → openconnect Standards compliant VPN ● Implements a compatible protocol we call “Openconnect protocol” 3/17/13 21 Red Hat

  21. History • OpenConnect doesn't need any user confjguration # openconnect server.example.com:443 POST https://server.example.com/ Attempting to connect to server 127.0.0.1:443 SSL negotiation with server.example.com Connected to HTTPS on server.example.com XML POST enabled Please enter your username Username:test POST https://server.example.com/auth Please enter your password. Password: POST https://server.example.com/auth Got CONNECT response: HTTP/1.1 200 CONNECTED CSTP connected. DPD 90, Keepalive 32400 Connected tun0 as 192.168.1.191, using SSL Established DTLS connection (using GnuTLS). Ciphersuite (DTLS1.2)-(RSA)-(AES-128-GCM). 3/17/13 22 Red Hat

  22. History • OpenConnect doesn't need any user confjguration # openconnect server.example.com:443 POST https://server.example.com/ Attempting to connect to server 127.0.0.1:443 SSL negotiation with server.example.com Connected to HTTPS on server.example.com XML POST enabled Please enter your username Username:test POST https://server.example.com/auth Simple user setup Please enter your password. Password: POST https://server.example.com/auth Got CONNECT response: HTTP/1.1 200 CONNECTED CSTP connected. DPD 90, Keepalive 32400 Connected tun0 as 192.168.1.191, using SSL Established DTLS connection (using GnuTLS). Ciphersuite (DTLS1.2)-(RSA)-(AES-128-GCM). 3/17/13 23 Red Hat

  23. VPN story • Requirements: – Simple setup for users – Standards based solution – The administrator should be able to view who is connected on every moment – The administrator should be able to disconnect and block access to users 3/17/13 24 Red Hat

  24. VPN story • Requirements: – Simple setup for users – Standards based solution – The administrator should be able to view who is connected on every moment – The administrator should be able to disconnect and block access to users – The server should isolate users between them – The server should operate under the least possible privilege 3/17/13 25 Red Hat

  25. The server 3/17/13 26 Red Hat

  26. The server • Openconnect server: started in 2013 • T oday the server interoperates with both openconnect and Anyconnect clients – Is available for Linux and *BSD systems 3/17/13 27 Red Hat

  27. The server • Features: – Supports for password (fjle, PAM, radius), certifjcate or Kerberos authentication – Supports setting resource limits per client or groups of clients (e.g., cgroups, bandwidth) – Processing scales with the number of CPUs – Supports LZS, LZ4 compression – Supports TLS 1.2, DTLS 1.2 and AES-GCM – Supports online user management 3/17/13 28 Red Hat

  28. The server • Features: – Privilege separation between main server and worker processes ● Isolation of worker processes (using seccomp) – Isolated software security module handles PAM/radius and keys 3/17/13 29 Red Hat

  29. The server • Features: – Privilege separation between main server and worker processes ● Isolation of worker processes (using seccomp) – Isolated software security module handles PAM/radius and keys User isolation + Least privilege 3/17/13 30 Red Hat

  30. The server • occtl: Control tool to administer the server and view clients 3/17/13 31 Red Hat

  31. The server 3/17/13 32 Red Hat

  32. The server 3/17/13 33 Red Hat

  33. The server User overview 3/17/13 34 Red Hat

  34. The server 3/17/13 35 Red Hat

  35. The server 3/17/13 36 Red Hat

  36. The server User disconnect/block 3/17/13 37 Red Hat

  37. VPN story • Requirements: – Simple setup for users – Standards based solution – The administrator should be able to view who is connected on every moment – The administrator should be able to disconnect and block access to users – The server should isolate users between them – The server should operate under the least possible privilege 3/17/13 38 Red Hat

  38. Future plans 3/17/13 39 Red Hat

  39. Future plans • Extend and simplify the openconnect protocol – e.g., drop legacy pre-DTLS 1.0 support – Publish and standardize on an SSL/VPN protocol • Improve performance by utilizing an in-kernel TLS/DTLS stack 3/17/13 40 Red Hat

  40. Questions ● www.infradead.org/openconnect ● www.infradead.org/ocserv 3/17/13 41 Red Hat

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend