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

infrahip
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

InfraHIP

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

slide-2
SLIDE 2

What is My Problem?

  • When I move my laptop from home to
  • ffice, 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.
slide-3
SLIDE 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?

slide-4
SLIDE 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

slide-5
SLIDE 5
  • 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

Deployment Costs

slide-6
SLIDE 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
slide-7
SLIDE 7

HIP Layering Architecture

Transport Layer Application Layer Physical Layer Network Layer Application Layer Transport Layer Physical Layer Network Layer HIP Layer

slide-8
SLIDE 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
slide-9
SLIDE 9

HIP Naming Architecture

HIT, port HI IP address HIT, port and proto

User Interface Application Layer Transport Layer

Hostname

Network Layer HIP Layer

slide-10
SLIDE 10

IP-based vs. HIP-based Socket Bindings

Process Endpoint Location Socket IP address Process Endpoint Location Socket IP address Host Identity Dynamic Binding

slide-11
SLIDE 11

How Does HIP Work?

DNS Network Application Resolver

5.

  • 6. HIT
  • 6. connect(HIT)
  • 1. getaddrinfo(hostname)
  • 2. hostname
  • 3. <HIT, IP>
  • 4. <HIT, IP>

Socket Layer Transport HIP IPsec

  • 7. base exchange
  • 8. ESP protected

application data

slide-12
SLIDE 12

Base Exchange

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

slide-13
SLIDE 13

Bound End-to-End Tunnel (BEET) IPsec ESP Mode

  • vs. Other IPsec Modes

IP ESP IP ESP TCP IP TCP

inner

  • uter
  • uter

addrs inner addrs addrs addrs "inner" addresses

Beet mode Transport mode Tunnel mode DATA IP ESP TCP DATA DATA

slide-14
SLIDE 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

slide-15
SLIDE 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

slide-16
SLIDE 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

slide-17
SLIDE 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

slide-18
SLIDE 18

Rendezvous Server 3/3

Internet Initiator Responder Rendezvous Server 1. 2. 3.

slide-19
SLIDE 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

slide-20
SLIDE 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

slide-21
SLIDE 21

NAT Traversal: Base Exchange

N A T N A T Internet Initiator Responder Relay Server Base Exchange

slide-22
SLIDE 22

NAT Traversal: Connectivity Tests

N A T N A T Internet Initiator Responder Relay Server 3. 1. 2.

slide-23
SLIDE 23

NAT Traversal: Data Transfer

N A T N A T Initiator Responder Relay Server ESP Internet

slide-24
SLIDE 24

HIP + i3 = Hi3

Initiator Responder HIP control packets ESP data packets

slide-25
SLIDE 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

slide-26
SLIDE 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,

  • pportunistic mode, privacy, light-weight hip
slide-27
SLIDE 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

slide-28
SLIDE 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.

slide-29
SLIDE 29

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