infrahip
play

InfraHIP Helsinki-Rutgers Workshop 1.6.2007 Miika Komu - PowerPoint PPT Presentation

InfraHIP Helsinki-Rutgers Workshop 1.6.2007 Miika Komu <miika@iki.fi> Helsinki Institute for Information Technology (HIIT) What is My Problem? When I move my laptop from home to office, my ssh connections break. I want to access


  1. InfraHIP Helsinki-Rutgers Workshop 1.6.2007 Miika Komu <miika@iki.fi> Helsinki Institute for Information Technology (HIIT)

  2. What is My Problem? ● When I move my laptop from home to office, my ssh connections break. ● I want to access my home NFS filesystem automatically and securely from everywhere. I want to keep others out. ● My parents are bugging me with annoying questions on their Windows. I want to remotely login to their machine through their double NATted ADSL line to fix their problem. I cannot touch the NAT of ISP.

  3. Solutions for My Problems ● Different protocols for different problems – Mobility: MobileIPv4, MobileIPv6, SCTP – Secure File systems: SFS, NFSv3 over IKE+IPsec, NFSv4 – NAT traversal: ICE for SIP, application specific hacks (usually in games) ● Why not a single solution to all of my problems instead of “short-term” fixes?

  4. Potential Benefits of A Single Solution ● Software reuse – Single protocol to handle network authentication, integrity, privacy and mobility ● Robustness – One proper NAT traversal implementation works better than 1000 application-specific hacks ● Usability – Zero-conf mobility like with GSM phones – Unified format for network access control identifiers

  5. Deployment Costs ● End-host solution – Application layer: port all applications – Lower layer approach: costs more to develop but may not require changes to apps ● Middlebox solution – No changes to end-hosts, but introduces a dependency to infrastructure – May not realize all benefits, such as end-to- end security

  6. A Solution to the Problems: Host Identity Protocol (HIP) ● Public key based host authentication – Public keys are exposed to applications – Can be used for access control at the application or lower layers ● End-host mobility and multihoming – Transparent to applications ● End-to-end encryption and integrity protection using IPsec ● NAT traversal and privacy extensions

  7. HIP Layering Architecture Application Layer Application Layer Transport Layer Transport Layer HIP Layer Network Layer Network Layer Physical Layer Physical Layer

  8. HIP Related Identifier Types ● Host Identifier = HI = public key – Currently standardized algos: RSA and DSA ● Legacy application identifiers – Host Identity Tag = HIT ● prefix | hash(HI) = size of IPv6 address – Local Scope Identifier = LSI ● IPv4-sized HIT (valid only on the local host) ● Locator = a routable IPv4 or IPv6 address

  9. HIP Naming Architecture User Interface Hostname Application Layer HIT, port and proto Transport Layer HIT, port HIP Layer HI Network Layer IP address

  10. IP-based vs. HIP-based Socket Bindings Process Socket Process Socket Endpoint Endpoint Host Identity Dynamic Binding Location IP address Location IP address

  11. How Does HIP Work? DNS 2. hostname 3. <HIT, IP> 1. getaddrinfo(hostname) Application Resolver 6. HIT 5. 4. <HIT, IP> 6. connect(HIT) Socket Layer Transport HIP 7. base exchange IPsec Network 8. ESP protected application data

  12. Base Exchange I1: trigger base exchange I R N E R1: puzzle, D-H, key, signature S I T P I O I2: puzzle solution, D-H, key, signature A N T D O E R2: signature R R

  13. Bound End-to-End Tunnel (BEET) IPsec ESP Mode vs. Other IPsec Modes Transport mode Tunnel mode IP ESP TCP DATA IP ESP IP TCP DATA Beet mode "inner" addresses outer inner addrs addrs IP ESP TCP DATA outer inner addrs addrs

  14. HIP vs. TLS ● TLS: IP(TCP(TLS(encrypted(data)))) – NAT traversal works because NAT boxes support TCP – Attacks against TCP protocol (remember SYN cookies). – Reveals the port numbers (good and bad) ● ESP: IP(ESP(encrypted(TCP + data))) – Works also with UDP (e.g. NFS) – May work with some new NAT boxes – Usually requires extra UDP encapsulation which decreases MTU

  15. HIP Mobility and Multihoming ● When a host moves, it updates its peer directly of its new location ● The peer sends a challenge and the host sends a response – Called the “return routability check” – Acknowledges the new location and protection against reflection/flooding attacks ● What if both hosts move at the same time? – They lose contact with each other

  16. Rendezvous Server (RVS) 1/3 ● Rendezvous server has a stable IP address – A host can use it as a contact point with a mobile for peer – Both for initial contact and “double jump” ● When Responder changes its location, it updates the RVS of its new location ● Configuration using DNS: – Hostname of peer – Host Identifier of peer – IP address of the RVS

  17. Rendezvous Server 2/3 ● Only the first packet is relayed! – Responder responds directly to Initiator ● RVS cannot be used to flood other hosts – Responder has to register to RVS – Registration is like a normal base exchange but with some extra parameters – RVS can enforce public-key based access control

  18. Rendezvous Server 3/3 Initiator Responder 3. Internet 1. 2. Rendezvous Server

  19. NAT Traversal with HIP ● End-to-end NAT traversal – Both the Initiator and Responder can be located behind NATs – End-hosts uniquely identifiable using HITs in private address realms ● Works with legacy NATs and requires no configuration of NAT devices

  20. ICE Style Approach with NATs ● End-hosts exchange their locators ● Hosts test connectivity between locator pairs (tests also firewalls) – Prefer IPv6 locators – Detect when hosts are behind the same NAT – Prefer a direct end-to-end path – Relaying of ESP traffic if nothing else works ● Works also with multihomed hosts! – RTT measurement for selecting fastest iface

  21. NAT Traversal: Base Exchange Initiator Responder N N A A Internet T T Base Exchange Relay Server

  22. NAT Traversal: Connectivity Tests Initiator Responder 3. N N A A Internet 1. T T 2. Relay Server

  23. NAT Traversal: Data Transfer Initiator Responder N N ESP A A T T Internet Relay Server

  24. HIP + i3 = Hi3 Initiator HIP control packets Responder ESP data packets

  25. HIP Implementations 1/2 ● Ericsson – Main platform: FreeBSD – Used in Ambient Networks – Ericsson Open Source Licence ● Boeing (OpenHIP) – Platforms: Linux, Windows, MAC – Userspace IPsec – GPL licence

  26. HIP Implementations 2/2 ● HIP for Linux (HIPL), InfraHIP project / HIIT – Platforms: Linux, Nokia Tablet (Symbian port work in progress) – Actively maintained, used by various researchers – GPL licence – Supports several extensions: GUI, NAT traversal, HIP-firewall, rendezvous server, opportunistic mode, privacy, light-weight hip

  27. InfraHIP II ● Deploy! – Supporting infrastructure (rvs and relay servers) to planetlab and test servers – Test varying network applications, report problems and solutions to the problems to IETF ● Couple of extensions – TCP extensions – “Advanced” opportunistic mode

  28. Back to the Original Problems ● Yes, my SSH connections survive when I move my laptop from home to office ● Yes, I can access my NFS mounted share from everywhere. The NFSv3 traffic is authenticated by HIP and encrypted with IPsec. HIP firewall keeps others out. ● Yes, I can remotely access my parents Windows machine through ISP and ADSL NAT boxes.

  29. Thank you! Questions? http://infrahip.hiit.fi/

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