Các thành phần của mạng riêng ảo Site – to – Site: Không giống với mạng riêng ảo truy cập từ xa, các liên kết Site – to –Site đòi hỏi cả hai phía của liên kết phải có một tập đầy đủ các
Trang 1BAN CƠ YẾU CHÍNH PHỦHỌC VIỆN KỸ THUẬT MẬT MÃ
MÔN MẠNG RIÊNG ẢO
Đề tài: Tìm hiểu về mạng VPN site-to-site,
Xây dựng cài đặt mạng VPN kiểu LAN nối LAN theo giao thức L2TP/IPSec Phân tích quá trình kết nối trao
đổi thông tin.
Giảng viên hướng dẫn:
Thành viên:
1 Đặng Ngọc Giang
2 Nguyễn Thái Hà
3 Nguyễn Văn Trung
4 Nguyễn Hoàng Việt
5 La Phon
Hà Nội, tháng 9 – 2014
Trang 2LỜI MỞ ĐẦUCùng với sự phát triển của công nghệ nói chung và Công Nghệ ThôngTin nói riêng hiện nay, rất nhiều ứng dụng trên mọi mặt đã được áp dụng vàothực tế, đi sâu vào đời sống, sinh hoạt, học tập và làm việc của con ngườichúng ta Nhu cầu trao đổi thông tin của chúng ta ngày càng cao, việc kết nốivượt qua vị trí địa lý càng lúc càng quan trọng, nhưng lại nảy sinh các vấn đềliên quan đến an toàn, bảo mật của dữ liệu Từ tính cấp thiết đó, VPN – MạngRiêng Ảo ra đời Nó cho phép chúng ta kết nối với nhau như trong một mạngcục bộ thông qua mạng công cộng Để từ đó có thể giao tiếp giữa các chinhánh trong 1 công ty, giữa các đối tác có cùng công việc chung, hay hỗ trợcác nhân viên kết nối đến văn phòng từ xa vv Trong nội dung của báo cáonày, nhóm em xin trình bày về một mô hình VPN thông dụng hiện nay: VPNsite-to-site, theo đó, giới thiệu cách xây dựng cài đặt, và đưa ra phân tích quátrình trao đổi thông tin trong mô hình mạng này.
Báo cáo bao gồm 3 chương:
Chương 1: Giới thiệu tổng quan về VPN site-to-site, các khái niệm, kiếnthức liên quan
Trình bày quá trình xây dựng cài đặt mô hình
Chương 2: Phân tích quá trình trao đổi thông tin trong VPN site-to-site.Thực nghiệm
Trang 3MỤC LỤC
MỤC LỤC 3
DANH SÁCH HÌNH ẢNH 4
CHƯƠNG 1: TỔNG QUAN MÔ HÌNH MẠNG RIÊNG ẢO SITE-TO-SITE .5
1.1 Giới thiệu chung về mô hình VPN site-to-site 5
1.2 Các thành phần của mạng riêng ảo Site – to – Site: 5
1.2.1 Các Router VPN 5
1.2.2 Cơ sở hạ tầng Internet 6
1.2.3 Cơ sở hạ tầng mạng chi nhánh 6
1.2.4 Cơ sở hạ tầng AAA 6
1.2.5 Cơ sở hạ tầng chứng chỉ số 6
1.3 Triển khai mạng riêng ảo Site – to – Site: 7
1.4 Kỹ thuật Tunneling 7
1.5 Giao thức L2TP 9
1.5.1 Giới thiệu 9
1.5.2 Các thành phần của L2TP 9
1.5.3 Cấu trúc gói tin L2TP 10
1.5.4 Dữ liệu đường hầm 11
1.5.5 Mô hình đường hầm L2TP 13
1.6 IPSec 14
CHƯƠNG 2: PHÂN TÍCH QUÁ TRÌNH TRAO ĐỔI THÔNG TIN VÀ THỰC NGHIỆM 15
2.1 Thiết lập điều khiển kết nối 16
2.2 Thiết lập phiên làm việc 17
2.3 Chuyển khung PPP 19
2.4 Kiểm tra sự tồn tại của đường hầm 19
2.5 Bỏ một phiên làm việc 19
2.6 Bỏ điều khiển kết nối 19
2.7 Kịch bản demo 20
KẾT LUẬN 23
TÀI LIỆU THAM KHẢO 24
Trang 4DANH SÁCH HÌNH ẢNH
Hình 1.1 Mô hình VPN site-to-site 8
Hình 1.2 Cấu trúc khuôn dạng L2TP Header 10
Hình 1.3 Tiến trình đóng gói dữ liệu 12
Hình 1.4 Tiến trình mở gói dữ liệu 13
Hình 2.1 Quá trình thiết lập kết nối 15
Hình 2.2 Thiết lập cuộc gọi đến 17
Hình 2.3 Thiết lập cuộc gọi đi 18
Hình 2.4: Thực nghiệm mô hình VPN site to site 20
Hình 2.5 : Gói tin bắt được trên Server Sài Gòn 21
Hình 2.6: Gói tin bắt trên client Sài Gòn 22
Trang 5CHƯƠNG 1: TỔNG QUAN MÔ HÌNH MẠNG RIÊNG ẢO SITE-TO-SITE
1.1 Giới thiệu chung về mô hình VPN site-to-site
Mô tả mô hình:
VPN điểm-nối-điểm là việc sử dụng mật mã dành cho nhiều người để kếtnối nhiều điểm cố định với nhau thông qua một mạng công cộng nhưInternet Loại này có thể dựa trên Intranet hoặc Extranet Loại dựa trênIntranet: Nếu một công ty có vài địa điểm từ xa muốn tham gia vào một mạngriêng duy nhất, họ có thể tạo ra một VPN intranet (VPN nội bộ) để nối LANvới LAN Loại dựa trên Extranet: Khi một công ty có mối quan hệ mật thiếtvới một công ty khác (ví dụ như đối tác cung cấp, khách hàng ), họ có thểxây dựng một VPN extranet (VPN mở rộng) kết nối LAN với LAN để nhiều
tổ chức khác nhau có thể làm việc trên một môi trường chung(2)
Để thực thi xác thực dựa trên chứng chỉ cho các kết nối L2TP và xác thựcngười dùng dựa trên chứng chỉ cho các kết nối mạng riêng ảo sử dụng EAP-TLS Một cơ sở hạ tầng về chứng chỉ được bố trí để phát hành các chứng chỉthích hợp cho quá trình xác thực và xác minh chức chỉ
1.2 Các thành phần của mạng riêng ảo Site – to – Site:
Không giống với mạng riêng ảo truy cập từ xa, các liên kết Site – to –Site đòi hỏi cả hai phía của liên kết phải có một tập đầy đủ các tài nguyên đểlàm việc với nhau Các thành phần chính của mạng riêng ảo Site – to – Site:
Các Router VPN là các Server kiểm soát tất cả các hoạt động kết nối từ
xa của liên kết Site – to – Site Chúng là trung tâm của hệ thống mạng riêng
ảo Site – to – Site Các Router VPN là các thực thể khởi tạo hoặc nhận cáckết nối theo yêu cầu quay số dựa trên VPN và có các thành phần cơ bản sauđược cài đặt trên đó:
- Dịch vụ định tuyến
- Các Port
Trang 6- Tên của Router trả lời phải có khả năng phân giải được.
- Có khả năng kết nối tới được Router trả lời
- Luồng lưu lượng VPN phải được cho phép và từ Router trả lời
1.2.3 Cơ sở hạ tầng mạng chi nhánh
Cơ sở hạ tầng của mạng chi nhánh là một phần tử quan trọng của thiết kếVPN Các Router gọi không thể chuyển tiếp các gói mà không có cơ sở hạtầng định tuyến thích hợp được đặt vào vị trí thích hợp
1.2.4 Cơ sở hạ tầng AAA
Cơ sở hạ tầng AAA tồn tại để cung cấp xác thực các kết nối và ghi nhật
ký hoạt động của các kết nối đó sao cho vấn đền an toàn của mạng có thểđược giám sát Một cơ sở hạ tầng AAA mạnh là điều kiện sống còn với sự antoàn của mật kỳ mạng truy cập từ xa hay mạng Site –to – Site nào Cơ sở hạtầng AAA thực hiện các nhiệm vụ sau:
- Xác thực các giấy uỷ quyền của các Router gọi
- Cấp quyền cho kết nối mạng riêng ảo
- Ghi lại các hoạt động của kết nối mạng riêng ảo phục vụ cho chức năngkiểm toán
Cơ sở hạ tầng AAA thường bao gồm:
Trang 7TLS Một cơ sở hạ tầng về chứng chỉ được bố trí để phát hành các chứng chỉthích hợp cho quá trình xác thực và xác minh chức chỉ.
1.3 Triển khai mạng riêng ảo Site – to – Site:
Trong phần này trước chúng ta đã mô tả các phần tử cần thiết cho mạngriêng ảo theo mô hình kết nối Site – to – Site Trong phần này chúng ta xemxét các bước để triển khai giải pháp mạng riêng ảo Site – to – Site dựa trênPPTP hoặc L2TP với IPSec Việc triển khai giải pháp này bao gồm các bước
cơ bản như sau:
- Triển khai cơ sở hạ tầng cung cấp chứng chỉ: Cho phép ta triển khai cácdịch vụ cung cấp chứng chỉ cho cả hai phía của liên kết
- Triển khai cơ sở hạ tầng Internet: Cho phép ta kết nối tới Internet từ cảhai phía của liên kết
- Triển khai Router trả lời: Triển khai máy chủ mạng riêng ảo sẽ nhận cácyêu cầu kết nối mạng riêng ảo
- Triển khai Router gọi: Triển khai máy chủ mạng riêng ảo sẽ khởi tạocác yêu cầu kết nối mạng riêng ảo
- Triển khai cơ sở hạ tầng AAA: Cho phép xác thực, cấp quyền và kiểmtoán các kết nối cho cả hai phía của liên kết
- Triển khai cơ sở hạ tầng của nhánh mạng bên trong: Cho phép chuyểntiếp các gói dữ liệu tới các nhánh mạng qua kết nối mạng riêng ảo Site – to –Site.(3)
1.4.Kỹ thuật Tunneling
Khi gói tin được truyền đến đích, chúng được tách lớp header và chuyểnđến các máy trạm cuối cùng cần nhận dữ liệu Để thiết lập kết nối Tunnel,máy khách và máy chủ phải sử dụng chung một giao thức (tunnel protocol) Giao thức của gói tin bọc ngoài được cả mạng và hai điểm đầu cuối nhậnbiết Hai điểm đầu cuối này được gọi là giao diện Tunnel (tunnel interface),nơi gói tin đi vào và đi ra trong mạng
Kỹ thuật Tunneling yêu cầu 3 giao thức khác nhau:
Giao thức truyền tải (Carrier Protocol) là giao thức được sử dụng bởimạng có thông tin đang đi qua
Trang 8- Giao thức mã hóa dữ liệu (Encapsulating Protocol) là giao thức (nhưGRE, IPSec, L2F, PPTP, L2TP) được bọc quanh gói dữ liệu gốc.
- Giao thức gói tin (Passenger Protocol) là giao thức của dữ liệu gốc đượctruyền đi (như IPX, NetBeui, IP)
Người dùng có thể đặt một gói tin sử dụng giao thức không được hỗ trợtrên Internet (như NetBeui) bên trong một gói IP và gửi nó an toàn quaInternet Hoặc, họ có thể đặt một gói tin dùng địa chỉ IP riêng (không địnhtuyến) bên trong một gói khác dùng địa chỉ IP chung (định tuyến) để mở rộngmột mạng riêng trên Internet
Kỹ thuật Tunneling trong mạng VPN điểm-nối điểm
Trong VPN loại này, giao thức mã hóa định tuyến GRE (Generic RoutingEncapsulation) cung cấp cơ cấu "đóng gói" giao thức gói tin (PassengerProtocol) để truyền đi trên giao thức truyền tải (Carier Protocol) Nó bao gồmthông tin về loại gói tin mà bạn đang mã hóa và thông tin về kết nối giữa máychủ với máy khách Nhưng IPSec trong cơ chế Tunnel, thay vì dùng GRE,đôi khi lại đóng vai trò là giao thức mã hóa IPSec hoạt động tốt trên cả hailoại mạng VPN truy cập từ xa và điểm- nối-điểm Tất nhiên, nó phải được hỗtrợ ở cả hai giao diện Tunnel
Hình 1.1 Mô hình VPN site-to-site
Trang 9Trong mô hình này, gói tin được chuyển từ một máy tính ở văn phòngchính qua máy chủ truy cập, tới router (tại đây giao thức mã hóa GRE diễnra), qua Tunnel để tới máy tính của văn phòng từ xa.
1.5 Giao thức L2TP
1.5.1 Giới thiệu
L2TP – Layer 2 Tunneling Protocol: Giao thức đường hầm lớp 2
- Được phát triển và chuẩn hóa bởi IETF và nhận được sự đồng thuận củanhiều hãng lớn
Cần một server truy cập mạng (NAS – Network AccessServer) cung cấp kết nối cho người dùng ở xa, thiết lập kếtnối đường hầm qua mạng công cộng
Hai điểm cuối của một đường hầm L2TP là LAC (L2TPAccess Concentrator) và LNS (L2TP Network Server) LAC làngười khởi xướng đường hầm trong khi LNS là server chờ đợiđường hầm mới Khi một đường hầm được thành lập, lưulượng giữa chúng sẽ là 2 chiều Để có lợi cho mạng, các giaothức bậc cao hơn cũng được chạy qua đường hầm L2TP Đểthuận tiện cho việc này, một phiên L2TP được thành lập trongđường hầm cho mỗi giao thức bậc cao ví dụ như PPP Lưulượng của mỗi phiên sẽ được tách ra bởi L2TP, nên có thể cónhiều mạng ảo tên một đường hầm duy nhất
Trang 10Các gói tin trao đổi trong đường hầm L2TP được phân loại :gói tin điều khiển và gói tin dữ liệu L2TP cung cấp tính tincậy cho các gói điều khiển, nhưng không cung cấp đối với gói
dữ liệu Độ tin cậy, nếu muốn, phải được cung cấp bởi cácgiao thức lồng nhau chạy trong mỗi phiên của đường hầmL2TP
L2TP cho phép tạo ra một mạng quay số riêng ảo để kếtnối client từ xa tới mạng văn phòng sử dụng cơ sở hạ tầngchia sẻ, vd: Internet.(1)
1.5.3 Cấu trúc gói tin L2TP
Như trên đã nói, với 2 loại gói tin L2TP, điều khiển và dữ liệu, chúng cóchung khuôn dạng Header:
Hình 1.2 Cấu trúc khuôn dạng L2TP Header
Nhưng trong đó, đối với gói dữ liệu thì các trường Length, Ns, Nr là tùychọn trong khi với gói điều khiển là bắt buộc
Bit T (Type): Xác định dạng gói tin Nó có giá trị bằng 0 đối với gói dữliệu và 1 với gói điều khiển
Nếu bit L(Length) =1, trường Length sẽ xuất hiện, bit này bắt buộc phải =
1 với các gói điều khiển
Các bit X được dành mở rộng cho tương lai Tất cả các bit mở rộng phải
có giá trị 0 đối với các cuộc gọi đi và không cần quan tâm với các cuộc gọiđến
Khi bit S(Sequence) có giá trị =1 thì trường Ns và Nr phải xuất hiện Bitnày bắt buộc phải bằng 1 với các gói điều khiển
Khi bit (Offset) =1 thì trường Offset Size phải xuất hiện Bit này có giá trịbằng 0 đối với gói tin điều khiển
Trang 11Khi bit P (Priority : độ ưu tiên) = 1, gói tin dữ liệu này sẽ nhận được các
ưu tiên trong việc xếp hàng và truyền Trong trường hợp này, một yêu cầuLCP được gửi kèm đi cùng gói tin để đảm bảo liên kết luôn được hoạt động.Nếu không có LCP, có thể có một lúc nào đó liên kết bị đứt quãng Đặc điểmnày chỉ có đối với gói tin dữ liệu Bit P sẽ có giá trị bằng 0 với gói tin điềukhiển
Phần Ver phải bằng 2, đây là số version của L2TP Giá trị 1 được dành đểdùng trong trường hợp các gói tin L2F đến lẫn với gói L2TP Các gói tinnhận được mà không có trường Ver sẽ bị loại bỏ
Trường Chiều dài (Length): mô tả chiều dài gói tin tính theo byte
Trường số hiệu đường hầm: Tunnel ID xác định số hiệu của điều khiểnkết nối Đường hầm L2TP được đặt tên theo các số hiệu này tùy thuộc vàotừng khu vực Tức là, cùng một đường hầm có thể được xác định bởi các sốhiệu đường hầm khác nhau tùy vào mỗi điểm cuối trên đường hầm Tunnel
ID trong mỗi gói tin là của người nhận chứ không phải của người gửi Tunnel
ID được lựa chọn và trao đổi khi thiết lập Tunnel ID AVPs trong quá trìnhtạo đường hầm
Trường số hiệu phiên Session ID xác định số hiệu phiên làm việc trongmột đường hầm Một phiên L2TP được đặt tên theo các số hiệu này tùy thuộcvào từng khu vực Tức là: cùng một phiên có thể được xác định bởi các sốhiệu phiên khác nhau tùy vào mỗi điểm cuối đường hầm Session ID trongmỗi gói tin là của người nhận chứ không phải của người gửi Session ID đượclựa chọn và trao đổi khi thiết lập Session ID AVPs trong quá trình tạo ra mộtphiên
Trường Ns xác định một dãy số cho các gói tin dữ liệu hoặc điều khiển,bắt đầu bằng 0 và tăng thêm 1 mỗi khi một gói tin được truyền
Trường Nr xác định số trong dãy số đối với gói tin điều khiển tiếp theochuẩn bị được nhận Do đó, giá trị của Nr bằng giá trị cuối cùng của Ns cộngthêm 1 Trong các gói tin dữ liệu, trường Nr được để dành và nếu có xuấthiện khi bít S chỉ định thì cần bỏ qua khi nhận
Trường Offset Size nếu có xuất hiện thì sẽ mô tả số byte được gửi quaL2TP Header tại đó dữ liệu cần truyền được xem là sẽ bắt đầu Thường thì
Trang 12trường Offset Padding không xác định Nếu trường Offset Size xuất hiện thìL2TP Header kết thúc sau byte cuối cùng của trường Offset Padding.
1.5.4 Dữ liệu đường hầm.
Hình 1.3 Tiến trình đóng gói dữ liệu
- Đóng PPP vào dữ liệu: Không giống như việc đóng gói của PPTP, dữ liệu không được mã hóa trước khi đóng gói Chỉ có duy nhất một PPP header được thêm vào
- Đóng gói L2TP Header: Sau khi phần dữ liệu ban đầu được đóng gói vào PPP thì một L2TP Header được thêm vào
- Thêm UDP header: gói L2TP tiếp theo được đóng thành các khung UDP Nói cách khác, một UDP Header được thêm vào gói L2TP Cổngngầm định là 1701, hoặc khác
- Đóng gói IPSec: sau khi đã đóng gói UDP, khung UDP kết quả được
mã hóa và một IPSec ESP Header được thêm vào nó Một IPSec AH Trailer cũng được thêm vào dữ liệu sau khi nó đã được đóng gói và mãhóa
Trang 13- Đóng gói IP: Một IP Header được thêm vào gói IPSec vừa nhận được Header này chứa IP của L2TP Server (LNS) và người dùng từ xa.
- Đóng gói lớp liên kết dữ liệu: Cuối cùng một header ở tầng liên kết dữ liệu được thêm vào gói trên Phần header và trailer của lớp liên kết dữ liệu này giúp cho gói tin đến nút đích Nếu như nút đích nằm trong mạng cục bộ, các header và trailer này sẽ dựa trên kỹ thuật mạng cục
bộ (vd: Ethernet-based) Mặt khác nếu nút đích nằm ở xa, một PPP Header và trailer sẽ được thêm vào gói tin đã được đóng gói trong đường hầm
Hình 1.4 Tiến trình mở gói dữ liệu
Ở bên nhận, quá trình xử lý như sau:
Khi một thành phần L2TP (người dùng cuối hoặc LNS) nhận được mộtgói tin L2TP, nó sẽ xử lý bóc tách và loại bỏ header trailer của lớp liên kết dữliệu Tiếp đến gói tin được xử lý kỹ hơn và phần IP Header bị loại bỏ Gói tin
dữ liệu sau đó được xác thực bằng cách kiểm tra các thông tin có trong IPSecESP Header và AH Trailer IPSec ESP Header cũng được sử dụng để giải mãcác thông tin đã mã hóa Tiếp đến, UDP Header sẽ được xử lý và loại bỏ Các