Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.02 MB, 88 trang )
CH. Nguyễn Duy
TRIỂN KHAI IPSEC
1.4.1 Kết hợp an ninh SA
1.4.1.1 Định nghĩa và mục tiêu
IPSec cung cấp nhiều lựa chọn để thực hiện các giải pháp mật mã và xác thực ở
lớp mạng. Phần này sẽ định nghĩa các thủ tục quản lý SA cho cả IPv4 và IPv6 để thực
thi AH hoặc ESP hoặc cả hai, phụ thuộc vào lựa chọn của người sử dụng. Khi thiết lập
kết nối IPSec, hai phía phải xác định chính xác các thuật toán nào sẽ được sử dụng,
loại dịch vụ nào cần đảm bảo an toàn. Sau đó bắt đầu xử lý thương lượng để chọn một
tập các tham số và các giải thuật toán học áp dụng cho mã hóa bảo mật hay xác thực.
Theo IETF thì dịch vụ bảo mật quan hệ giữa hai hoặc nhiều thực thể để thỏa thuận
truyền thông an toàn được gọi là SA (Security Association).
Một SA là một kết nối đơn công, nghĩa là với mỗi cặp truyền thông với nhau,
có ít nhất 2 SA (một từ A tới B và một từ B tới A). Khi lưu lượng cần truyền trực tiếp 2
chiều qua VPN, giao thức trao đổi khóaIKE (Internet Key Exchange) thiết lập một cặp
SA trực tiếp và sau đó có thể thiết lập thêm nhiều SA khác. Mỗi SA có một thời gian
sống riêng. SA được nhận dạng duy nhất bởi bộ 3 gồm có: chỉ dẫn thông số an ninh
(SPI), địa chỉ IP đích và một nhận dạng giao thức an toàn (AH hay ESP). Tập các giá
trị SPI trong dãy từ 1 đến 255 được để dành bởi IANA để sử dụng cho tương lai. Theo
nguyên lý, địa chỉ IP đích có thể là một địa chỉ đơn nhất (unicast), một địa chỉ quảng
bá (broadcast) hay một địa chỉ nhóm (multicast). Tuy nhiên, cơ chế quản lý SA IPSec
hiện nay được định nghĩa chỉ cho những SA đơn nhất (unicast).
Một lên kết an ninh có thể là một trong hai kiểu: Transport và Tunnel, phụ
thuộc vào kiểu của giao thức sử dụng SA. Một SA kiểu Transport là một liên kết an
toàn giữa hai host, hoặc liên kết an toàn được yêu cầu giữa hai hệ thống trung gian dọc
trên đường truyền. Trong trường hợp khác, kiểu Transport cũng có thể được sử dụng
để hỗ trợ IP-in-IP hay đường ngầm GRE qua các SA kiểu Transport. SA kiểu Tunnel là
một SA cơ bản được ứng dụng tới một đường ngầm IP. Một SA giữa 2 cổng an toàn là
một SA kiểu Tunnel điển hình giống như một SA giữa một host và một cổng an toàn.
Tuy nhiên, trong những trường hợp mà lưu lượng đã được định hình từ trước như những
lệnh SNMP, cổng an toàn làm nhiệm vụ như host và kiểu Transport được cho phép.
GV:
23
Nhóm 8
CH. Nguyễn Duy
TRIỂN KHAI IPSEC
SA cung cấp nhiều lựa chọn cho các dịch vụ IPSec, nó phụ thuộc vào giao thức
an toàn được lựa chọn (AH hay ESP), kiểu SA, điểm kết thúc của SA đó và một sự
tuyển chọn của các dịch vụ tùy ý các bên trong giao thức đó. Ví dụ như khi sử dụng
AH để xác minh nguồn gốc dữ liệu, tính toàn vẹn phi kết nối cho gói IP, có thể sử
dụng dịch vụ chống phát lại hoặc không tùy thuộc vào các bên.
Khi một bên IP-VPN muốn gửi lưu lượng IPSec tới đầu bên kia, nó kiểm tra để
biết nếu có một đã tồn tại một SA trong cơ sở dữ liệu hay chưa để hai bên có thể sử
dụng dịch vụ an ninh theo yêu cầu. Nếu nó tìm được một SA tồn tại, nó để SPI của SA
này trong tiêu đề IPSec, thực hiện các thuật toán mã hóa và gửi gói tin đi. Bên thu sẽ
lấy SPI, địa chỉ đích và giao thức IPSec (AH hay ESP) và tìm SA trong cơ sở dữ liệu
phù hợp để xử lý gói tin đó. Lưu ý rằng một đầu cuối IP-VPN có thể đồng thời tồn tại
nhiều kết nối IPSec, vì vậy cũng có nghĩa là tồn tại nhiều SA.
1.4.1.2 Kết hợp các SA
Các gói IP truyền qua một SA riêng biệt được cung cấp sự bảo vệ một cách
chính xác bởi giao thức an ninh có thể là AH hoặc ESP nhưng không phải là cả hai.
Đôi khi một chính sách an toàn có thể được gọi cho một sự kết hợp của các dịch vụ
cho một luồng giao thông đặc biệt mà không thể thực hiện được với một SA đơn lẻ.
Trong trường hợp đó cần thiết để giao cho nhiều SA thực hiện chính sách an toàn được
yêu cầu. Thuật ngữ cụm SA được sử dụng để một chuỗi các SA xuyên qua lưu lượng
cần được xử lý để thỏa mãn một tập chính sách an toàn.
Đối với kiểu Tunnel, có 3 trường hợp cơ bản của kết hợp an ninh như sau:
• Cả hai điểm cuối SA đều trùng nhau: mỗi đường ngầm bên trong hay bên ngoài là AH
hay ESP, mặc dù host 1 có thể định rõ cả hai đường ngầm là như nhau, tức là AH bên
trong AH và ESP bên trong ESP.
Host 1
Security
Gwy 1
Security
Gwy 2
Host 2
Internet
Security Association 1 (Tunnel)
Security Association 2 (Tunnel)
GV:
24
Nhóm 8
CH. Nguyễn Duy
TRIỂN KHAI IPSEC
Hình 1.13: Kết hợp SA kiểu Tunnel khi 2 điểm cuối trùng nhau
• Một điểm cuối SA trùng nhau: đường hầm bên trong hay bên ngoài có thể là AH hay
ESP.
Host 1
Security
Gwy 1
Security
Gwy 2
Host 2
Internet
Security Association 1 (Tunnel)
Security Association 2 (Tunnel)
Hình 1.14: Kết hợp SA kiểu Tunnel khi một điểm cuối trùng nhau
• Không có điểm cuối nào trùng nhau: Mỗi đường hầm bên trong và bên ngoài là AH
hay ESP.
Host 1
Security
Gwy 1
Security
Gwy 2
Host 2
Internet
SA 1 (Tunnel)
GV:
25
Nhóm 8
CH. Nguyễn Duy
TRIỂN KHAI IPSEC
Security Association 2 (Tunnel)
Hình 1.15: Kết hợp SA kiểu Tunnel khi không có điểm cuối trùng nhau
Chi tiết về kết hợp các SA có được trình bày trong RFC 2401.
1.4.1.3 Cơ sở dữ liệu SA
Có hai cơ sở dữ liệu, đó là: Cơ sở dữ liệu chính sách an ninh (Security Policy
Database SPD) và có sở dữ liệu kết hợp an ninh (Security Association Database SAD).
SPD: chỉ ra các dịch vụ an toàn được đề nghị cho lưu lượng IP, phụ thuộc vào các
nhân tố như nguồn, đích, đi ra hay đi về. Nó chứa đựng một danh sách những lối
vào chính sách, tồn tại riêng rẽ cho lưu lượng đi vào và đi ra. Các lối vào này có thể
nhận định một vài lưu lượng không qua xử lý IPSec, một vài phải được loại bỏ và
còn lại thì được xử lý bởi IPSec. Các lối vào này là tương tự cho firewall hay bộ lọc
gói.
SAD: chứa thông số về mỗi SA, giống như các tính toán và khóa AH hay ESP, số
trình tự, kiểu giao thức và thời gian sống SA. Cho xử lý đi ra, một lối vào SPD trỏ
tới một lối vào trong SAD. SAD quyết định SA nào được sử dụng cho một gói đã
cho. Cho xử lý đi về, SAD được tham khảo để quyết định gói được xử lý như thế
nào.
1.4.2 Giao thức trao đổi khóa IKE
1.4.2.1 IKE mode:
4 chế độ IKE phổ biến thường được triển khai:2
• Chế độ chính (Main mode)
• Chế độ linh hoạt (Aggressive mode)
• Chế độ nhanh (Quick mode)
GV:
26
Nhóm 8
CH. Nguyễn Duy
TRIỂN KHAI IPSEC
• Chế độ nhóm mới (New Group mode)
1.4.2.1.1 Main Mode
Main mode xác nhận và bảo vệ tính đồng nhất của các bên có liên quan trong qua trình
giao dịch. Trong chế độ này, 6 thông điệp được trao đổi giữa các điểm:
• 2 thông điệp đầu tiên dùng để thỏa thuận chính sách bảo mật cho sự thay đổi.
• 2 thông điệp kế tiếp phục vụ để thay đổi các khóa Diffie-Hellman và nonces.
Những khóa sau này thực hiện một vai tro quan trọng trong cơ chế mã hóa.
• Hai thông điệp cuối cùng của chế độ này dùng để xác nhận các bên giao dịch
với sự giúp đỡ của chữ ký, các hàm băm, và tuỳ chọn với chứng nhận.
Hình 1.: Main mode
1.4.2.1.2 Aggressive Mode
Aggressive mode về bản chất giống Main mode. Chỉ khác nhau thay vì main mode có
6 thông điệp thì chết độ này chỉ có 3 thông điệp được trao đổi. Do đó, Aggressive
mode nhanh hơn mai mode. Các thông điệp đó bao gồm:
Thông điệp đầu tiên dùng để đưa ra chính sách bảo mật, pass data cho khóa chính, và
trao đổi nonces cho việc ký và xác minh tiếp theo.
Thông điệp kế tiếp hồi đáp lại cho thông tin đầu tiên. Nó xác thực người nhận và hoàn
thành chính sách bảo mật bằng các khóa.
GV:
27
Nhóm 8
CH. Nguyễn Duy
TRIỂN KHAI IPSEC
Thông điệp cuối cùng dùng để xác nhận người gửi (hoặc bộ khởi tạo của phiên làm
việc).
Hình 1.: Agreesive mode
Cả Main mode và Aggressive mode đều thuộc giai đoạn I.
1.4.2.1.3 Quick Mode
Chế độ thứ ba của IKE, Quick mode, là chế độ trong giai đoạn II. Nó dùng để thỏa
thuận SA cho các dịch vụ bảo mật IPSec. Ngoài ra, Quick mode cũng có thể phát sinh
khóa chính mới. Nếu chính sách của Perfect Forward Secrecy (PFS) được thỏa thuận
trong giai đoạn I, một sự thay đổi hoàn toàn Diffie-Hellman key được khởi tạo. Mặt
khác, khóa mới được phát sinh bằng các giá trị băm
GV:
28
Nhóm 8
CH. Nguyễn Duy
TRIỂN KHAI IPSEC
Hình 1.: Quick mode
1.4.2.1.4 New Group Mode
New Group mode được dùng để thỏa thuận một private group mới nhằm tạo điều
kiện trao đổi Diffie-Hellman key được dễ dàng. Hình 6-18 mô tả New Group mode.
Mặc dù chế độ này được thực hiện sau giai đoạn I, nhưng nó không thuộc giai đoạn II.
Hình 1.: New group mode
Ngoài 4 chế độ IKE phổ biến trên, còn có thêm Informational mode. Chế độ này kết
hợp với quá trình thay đổ của giai đoạn II và SAs. Chế độ này cung cấp cho các bên có
liên quan một số thông tin thêm, xuất phát từ những thất bại trong quá trình thỏa
thuận. Ví dụ, nếu việc giải mã thất bại tại người nhận hoặc chữ ký không được xác
minh thành công, Informational mode được dùng để thông báo cho các bên khác biết.
GV:
29
Nhóm 8
CH. Nguyễn Duy
TRIỂN KHAI IPSEC
1.4.2.1.5 Các bước thiết lập.
Kết nối IPSec chỉ được hình thành khi SA đã được thiết lập. Tuy nhiên bản thân IPSec
không có cơ chế để thiết lập SA. Chính vì vậy, IETF đã chọn phương án chia quá trình
ra làm hai phần:
1. IPSec cung cấp việc xử lý ở mức gói.
2. IKMP (Internet Key Management Protocol) chịu trách nhiệm thỏa thuận
các kết hợp an ninh.
Sau khi cân nhắc các phương án, trong đó có SKIP (Simple Key Internet
Protocol), và Photuis, IETF đã quyết định chọn IKE (Internet Key Exchange) là chuẩn
để cấu hình SA cho IPSec.
Một đường ngầm IPSec IP-VPN được thiết lập giữa hai bên qua các bước như sau:
Bước 1: Quan tâm đến lưu lượng được nhận hoặc sinh ra từ các bên IPSec IPVPN tại một giao diện nào đó yêu cầu thiết lập phiên thông tin IPSec cho lưu lượng đó.
Bước 2: Thương lượng chế độ chính (Main Mode) hoặc chế độ tấn công
(Aggressive Mode) sử dụng IKE cho kết quả là tạo ra liên kết an ninh IKE (IKE SA)
giữa các bên IPSec.
Bước 3: Thương lượng chế độ nhanh (Quick Mode)sử dụng IKE cho kết quả là
tạo ra 2 IPSec SA giữa hai bên IPSec.
Bước 4: Dữ liệu bắt đầu truyền qua đường ngầm mã hóa sử dụng kỹ thuật đóng
gói ESP hoặc AH (hoặc cả hai).
Bước 5: Kết thúc đường ngầm IPSec VPN. Nguyên nhân có thể là do IPSec SA
kết thúc hoặc hết hạn hoặc bị xóa.
Tuy là chia thành 4 bước, nhưng cơ bản là bước thứ 2 và bước thứ 3, hai bước
này định ra một cách rõ ràng rằng IKE có tất cả 2 pha. Pha thứ nhất sử dụng chế độ
chính hoặc chế độ tấn công để trao đổi giữa các bên, và pha thứ hai được hoàn thành
nhờ sử dụng trao đổi chế độ nhanh.
GV:
30
Nhóm 8
CH. Nguyễn Duy
TRIỂN KHAI IPSEC
Hình 1.: Các chế độ chính, chế độ nhanh của IKE
Sau đây chúng ta sẽ đi xem xét cụ thể các bước và mục đích của các pha IKE.
Bước thứ nhất
Việc quyết định lưu lượng nào cần bảo vệ là một phần trong chính sách an ninh
của mạng VPN. Chính sách được sử dụng để quyết định cần bảo vệ lưu lượng nào
(những lưu lượng khác không cần bảo vệ sẽ được gửi dưới dạng văn bản rõ).
Chính sách an ninh sẽ được phản chiếu trong một danh sách truy nhập. Các bên
phải chứa danh sách giống nhau, và có thể có đa danh sách truy nhập cho những mục
đích khác nhau giữa các bên. Những danh sách này được gọi là các danh sách điều
khiển truy nhập (ACLs- Acess Control List). Nó đơn giản là danh sách truy nhập IP
mở rộng của các routers được sử dụng để biết lưu lượng nào cần mật mã. ACLs làm
việc khác nhau dựa vào mục đích các câu lệnh permit (cho phép) và denny (phủ nhận)
là khác nhau. Hình 1.25 trình bày kết quả của các trạng thái khi thực hiện lệnh permit
và deny của nguồn và đích:
Clear-Text Packet
IPSec
GV:
31
Nhóm 8
CH. Nguyễn Duy
TRIỂN KHAI IPSEC
Crypto ACL
AH or ESP Packet
AH or ESP or Clear-Text Packet
Clear-TextPacket
IPSec
Crypto ACL
AH or ESP Packet
Source Peer
Destination Peer
Permit
Permit
Deny
Deny
Hình 1.17: Danh sách bí mật ACL
Từ khóa permit và deny có ý nghĩa khác nhau giữa thiết bị nguồn và đích:
• Permit tại bên nguồn: cho qua lưu lượng tới IPSec để xác thực, mật mã hóa hoặc
cả hai. IPSec thay đổi gói tin bằng cách chèn tiêu đề AH hoặc ESP và có thể mật
mã một phần hoặc tất cả gói tin nguồn và truyền chúng tới bên đích.
• Deny tại bên nguồn: cho đi vòng lưu lượng và đưa các gói tin bản rõ tới bên
nhận.
GV:
32
Nhóm 8
CH. Nguyễn Duy
TRIỂN KHAI IPSEC
• Permit tại bên đích: cho qua lưu lượng tới IPSec để xác thực, giải mã, hoặc cả
hai. ACL sử dụng thông tin trong header để quyết định. Trong logic của ACL,
nếu như header chứa nguồn, đích, giao thức đúng thì gói tin đã được xử lý bởi
IPSec tại phía gửi và bây giờ phải được xử lý ở phía thu.
• Deny tại bên đích: cho đi vòng qua IPSec và giả sử rằng lưu lượng đã được gửi ở
dạng văn bản rõ.
Khi những từ khóa permit và deny được kết hợp sử dụng một cách chính xác,
dữ liệu được bảo vệ thành công và được truyền. Khi chúng không kết hợp chính xác,
dữ liệu bị loại bỏ. Bảng dưới trình bày kết hợp các lệnh permit và deny và kết quả thực
hiện cho các kết hợp:
Bảng 1.2: Kết quả khi kết hợp lệnh permit và deny
Nguồn
Đích
Kết quả
Permit
Permit
Permit
Deny
Đúng
Sai
Deny
Deny
Permit
Deny
Sai
Đúng
Bước thứ hai
Bước thư hai này chính là IKE pha thứ nhất. Mục đích của IKE pha thứ nhất:
-
Đồng ý một tập các tham số được sử dụng để xác thực hai bên và mật mã một phần
chế độ chính và toàn bộ trao đổi thực hiện trong chế độ nhanh. Không có bản tin nào ở
chế độ tấn công được mật mã nếu chế độ tấn công được sử dụng để thương lượng.
-
Hai bên tham gia IP-VPN xác thực với nhau.
-
Tạo khóa để sử dụng làm tác nhân sinh ra khóa mã hóa mã hóa dữ liệu ngay sau khi
thương lượng kết thúc.
Tất cả thông tin thương lượng trong chế độ chính hay chế độ tấn công, bao gồm
khóa sau đó sử dụng để tạo khóa cho quá trình mật mã dữ liệu, được lưu với tên gọi là
IKE SA hay ISAKMP SA (liên kết an ninh IKE hay ISAKMP). Bất kỳ bên nào trong
hai bên cũng chỉ có một ISAKMP liên kết an ninh giữa chúng.
GV:
33
Nhóm 8