Duy trì giao tiếp an toàn thông qua một mạng không an toàn như Internet là một trong những mối quan tâm chính của bất kỳ người dùng nào trên Internet, và của các công ty khác nhau. Những lý do chính để sử dụng VPN là nó cho phép chúng tôi thiết lập thông tin liên lạc an toàn, với xác thực và mã hóa dữ liệu để bảo vệ tất cả các thông tin được trao đổi. IPsec là một trong những giao thức bảo mật quan trọng nhất, cung cấp một lớp bảo mật cho tất cả các giao tiếp IP giữa hai hoặc nhiều người tham gia. Hôm nay, trong bài viết này, chúng ta sẽ xem xét chi tiết IPsec là gì, cách nó hoạt động và cũng như cách chúng ta có thể cấu hình nó và ở đâu.
VPN là từ viết tắt của “Virtual Private mạng“, Hay còn được gọi là mạng riêng ảo, và là một công nghệ mạng cho phép chúng tôi mở rộng truyền thông LAN qua mạng Internet, và tất cả điều này theo cách hoàn toàn an toàn nhờ sử dụng mật mã. VPN sẽ cho phép máy tính gửi và nhận dữ liệu trên mạng chia sẻ hoặc mạng công cộng, nhưng về mặt logic là nằm trong mạng riêng với tất cả các chức năng, quyền, bảo mật, chính sách quản lý, v.v.
Một số cách sử dụng VPN rất điển hình như sau:
- Khả năng kết nối hai hoặc nhiều văn phòng của một công ty với nhau, sử dụng kết nối Internet.
- Cho phép các thành viên của nhóm hỗ trợ kỹ thuật kết nối từ nhà của họ đến công ty.
- Người dùng có thể truy cập máy tính gia đình của mình từ một trang web từ xa, chẳng hạn như khách sạn.
Tất cả những mục đích sử dụng này sẽ luôn thông qua một cơ sở hạ tầng mà chúng ta đều biết rõ: Internet.
Trong các VPN, chúng tôi chủ yếu có hai kiến trúc VPN, VPN truy cập từ xa (Roadwarrior VPN hoặc Mobile Clients) và VPN Site-to-Site (VPN Site-to-site). Tùy thuộc vào nhu cầu của chúng ta, chúng ta phải cấu hình kiến trúc này hay kiến trúc khác.
- VPN truy cập từ xa (Roadwarrior hoặc Mobile Client) : Kiến trúc VPN này được thiết kế để một hoặc nhiều người dùng kết nối với máy chủ VPN và có thể truy cập tất cả các tài nguyên được chia sẻ của gia đình hoặc công ty của bạn, ngoài ra, nó cho phép thực hiện chuyển hướng lưu lượng, theo cách này, chúng tôi sẽ truy cập Internet thông qua máy chủ VPN (và với IP công cộng của máy chủ VPN). Đây là loại VPN điển hình nhất mà chúng ta có thể cấu hình trên máy chủ NAS, bộ định tuyến và các thiết bị khác có mục tiêu là cung cấp cho chúng ta khả năng duyệt web an toàn qua Internet. Các VPN cấp doanh nghiệp này cũng sẽ dùng để cô lập các vùng và dịch vụ mạng nội bộ yêu cầu xác thực bổ sung, ngoài ra, nó cũng có thể là một ý tưởng hay bất cứ khi nào chúng tôi sử dụng kết nối WiFi, cả ở nhà và doanh nghiệp, để thêm một lớp mã hóa khác.
- VPN Site-to-Site (VPN Site-to-Site) : kiến trúc VPN này được thiết kế để kết nối các trang web khác nhau, ví dụ: nếu chúng tôi có một công ty với các trang web khác nhau, chúng tôi có thể kết nối chúng qua VPN và truy cập tất cả các tài nguyên. Việc thiết lập kết nối không được thực hiện ở máy khách cuối, như trường hợp của các VPN truy cập từ xa, mà được thực hiện bởi bộ định tuyến hoặc tường lửa, theo cách này, toàn bộ mạng sẽ được coi là “một”, mặc dù lưu lượng truy cập thông qua nhiều đường hầm VPN.
Trong hình ảnh sau, chúng ta có thể thấy kiến trúc VPN với cả hai mô hình, cả VPN site-to-site (trái) và VPN truy cập từ xa (phải):
VPN phải đảm bảo điều gì để được bảo mật?
Để đảm bảo kết nối được bảo mật thông qua mạng riêng ảo (VPN), một số chức năng nhất định phải được đảm bảo, nếu không, chúng ta có thể gặp phải một VPN không đáng tin cậy. Chúng tôi đã dự đoán rằng giao thức IPsec tuân thủ tất cả chúng, vì nó là một giao thức VPN an toàn, được sử dụng rộng rãi trong các công ty.
Xác thực
Xác thực là một trong những quy trình quan trọng nhất trong VPN, tính năng này cho phép người dùng được chứng minh rằng họ thực sự là chính mình. Cách để chứng minh là nhập mật mã, sử dụng chứng chỉ số hoặc kết hợp cả hai hình thức xác thực. Khi máy chủ nhận được dữ liệu IPsec từ một nguồn, máy chủ chắc chắn rằng địa chỉ IP nguồn của gói dữ liệu là nguồn thực của gói dữ liệu, vì nó đã được xác thực thành công trước đó.
Bảo mật
Tính bảo mật là một trong những đặc điểm cơ bản khác của VPN, tính bảo mật có nghĩa là thông tin được yêu cầu chỉ có thể truy cập được đối với các thực thể được ủy quyền, tức là tất cả các thông tin liên lạc đều được mã hóa điểm-tới-điểm và chỉ những người đã xác thực trước đó trong hệ thống, nó sẽ có thể giải mã tất cả các thông tin được trao đổi. Nếu ai đó có thể xen vào giữa giao tiếp và nắm bắt được nó, họ sẽ không thể giải mã nó vì họ sẽ sử dụng mật mã, mật mã khóa đối xứng hoặc không đối xứng.
TÍNH TOÀN VẸN
Xác thực và bảo mật cũng quan trọng như tính toàn vẹn. Tính toàn vẹn có nghĩa là có thể đảm bảo rằng thông tin không bị sửa đổi giữa nguồn gốc của thông tin liên lạc và điểm đến. Tất cả các giao tiếp trong VPN đều bao gồm mã phát hiện lỗi và thông tin đó không được sửa đổi. Trong trường hợp bị sửa đổi, gói tin sẽ tự động bị loại bỏ và thậm chí có thể gây ra sự cố đường hầm VPN vì lý do bảo mật. Giao thức IPsec cho phép máy chủ nhận xác minh rằng các trường tiêu đề datagram và trọng tải được mã hóa không bị sửa đổi trong khi datagram đang trên đường đến đích.
Hãy tưởng tượng chúng ta có xác thực và bảo mật trong VPN, nhưng chúng ta không có tính toàn vẹn. Nếu một người dùng ở giữa cuộc giao tiếp sửa đổi một số giá trị, thay vì gửi một khoản tiền € 10, anh ta có thể chuyển nó thành € 1,000. Nhờ tính năng toàn vẹn, ngay sau khi một chút được sửa đổi, gói tin sẽ bị loại bỏ và sẽ đợi nó được gửi lại.
Tôi không từ chối
Đặc điểm này của mật mã có nghĩa là bạn không thể nói rằng bạn chưa gửi bất kỳ thông tin nào, bởi vì nó được ký bởi chứng thư số của bạn hoặc bởi cặp tên người dùng / mật khẩu của bạn. Bằng cách này, chúng tôi có thể biết chắc chắn rằng người dùng đó đã gửi thông tin cụ thể. Việc không từ chối chỉ có thể bị “lách” nếu ai đó có thể đánh cắp cặp tên người dùng / mật khẩu hoặc các chứng chỉ kỹ thuật số.
Kiểm soát truy cập (ủy quyền)
Đó là về việc đảm bảo rằng những người tham gia được xác thực chỉ có quyền truy cập vào dữ liệu mà họ được ủy quyền. Danh tính của người dùng phải được xác minh và quyền truy cập của họ bị hạn chế đối với những người được ủy quyền. Trong môi trường kinh doanh, điều này rất quan trọng, người dùng phải có cùng cấp độ truy cập và các quyền tương tự như thể họ thực sự hoặc ít quyền hơn, nhưng không bao giờ nhiều quyền hơn những quyền mà họ có thực tế.
Đăng ký hoạt động
Đó là về việc đảm bảo hoạt động thích hợp và khả năng phục hồi. Giao thức VPN phải ghi lại tất cả các kết nối đã thiết lập, với địa chỉ IP nguồn, người đã xác thực và thậm chí cả những gì họ đang làm trong hệ thống dựa trên địa chỉ IP ảo đã được cung cấp.
Chất lượng dịch vụ
Đó là đảm bảo hiệu suất tốt, không có sự suy giảm không thể chấp nhận được về tốc độ truyền. Chúng ta phải lưu ý rằng khi chúng ta thiết lập kết nối VPN, chúng ta sẽ luôn có tốc độ thực thấp hơn vì tất cả lưu lượng truy cập đều được mã hóa điểm - điểm và tùy thuộc vào sức mạnh của máy chủ VPN và máy khách, chúng ta có thể đạt được tốc độ cao hơn hoặc tốc độ thấp hơn. Trước khi bắt đầu triển khai VPN, chúng ta nên xem xét phần cứng của thiết bị và băng thông tối đa mà chúng ta có thể có.
Giới thiệu về IPsec
Giao thức IPsec là một trong những giao thức bảo mật quan trọng nhất và nó được sử dụng rộng rãi trong các công ty và cả người dùng gia đình. Trong thời gian gần đây, các nhà sản xuất như ASUS, AVM và thậm chí cả D-Link, đang tích hợp VPN trong bộ định tuyến gia đình của họ dựa trên giao thức IPsec. Giao thức này cung cấp các dịch vụ bảo mật cho lớp IP và cho tất cả các giao thức cao hơn, chẳng hạn như TCP và UDP (lớp truyền tải Internet). Nhờ IPsec, chúng tôi có thể giao tiếp giữa các điểm khác nhau của Internet một cách an toàn, chẳng hạn như hai hoặc nhiều công ty với nhau hoặc một người dùng ở nhà của họ, IPsec hoàn toàn phù hợp với nhu cầu VPN của cả hai “thế giới”.
Một tính năng rất quan trọng của IPsec là nó hoạt động ở lớp 3 của OSI (lớp mạng), các giao thức VPN khác như OpenVPN hoặc Dây bảo vệ hoạt động ở lớp 4 (lớp truyền tải), vì hai lớp sau dựa trên cơ sở bảo mật của chúng trên TLS và DTLS tương ứng. IPsec trong mạng IPv4 nằm ngay trên tiêu đề IP, tuy nhiên, trong mạng IPv6, nó được tích hợp (ESP) trong chính tiêu đề trong phần “Phần mở rộng”.
IPsec cung cấp tất cả các dịch vụ cần thiết để giao tiếp được an toàn, như chúng tôi đã giải thích trước đây, các dịch vụ này xác thực, bảo mật, toàn vẹn và không từ chối . Nhờ các dịch vụ này, an ninh của thông tin liên lạc được đảm bảo. Tất nhiên, chúng tôi cũng có quyền kiểm soát truy cập, chất lượng dịch vụ và nhật ký hoạt động.
Một tính năng rất quan trọng khác của IPsec là nó cho phép cả hai kiến trúc VPN , cả VPN truy cập từ xa và VPN site-to-site. Liên quan đến thương lượng tiền mã hóa, IPsec tích hợp một hệ thống thương lượng để các nhóm cuối thương lượng mã hóa tốt nhất có thể mà họ hỗ trợ, đồng ý về các khóa trao đổi và chọn các thuật toán mã hóa mà họ có chung. Tùy thuộc vào tiêu đề IPsec được sử dụng (AH hoặc ESP), chúng tôi chỉ có thể kiểm tra tính xác thực của gói hoặc mã hóa tải trọng của toàn bộ gói IP và cũng có thể kiểm tra tính xác thực của nó.
Khi hai máy chủ đã thiết lập phiên IPsec, các phân đoạn TCP và biểu đồ dữ liệu UDP được gửi giữa chúng được mã hóa và xác thực, ngoài ra, tính toàn vẹn cũng được kiểm tra để ngăn người nào đó sửa đổi nó. Do đó, IPsec đảm bảo tính bảo mật của thông tin liên lạc.
Một số ưu điểm của IPsec là nó được hỗ trợ bởi tất cả các tiêu chuẩn IETF và cung cấp một "tiêu chuẩn" VPN để tất cả các thiết bị phải tương thích. IPSec đang nhận được sự hỗ trợ rất quan trọng từ tất cả các thiết bị truyền thông, vì nó là “tiêu chuẩn” cho VPN, được sử dụng rộng rãi hơn nhiều so với OpenVPN hoặc WireGuard. Tất cả các phiên bản của hệ điều hành PC như Windows or Linux, MacOS cho Apple máy tính và cả Android và iOS hỗ trợ giao thức IPsec. Ngoài ra, một đặc điểm rất quan trọng khác là, đã là tiêu chuẩn thì có sự tương tác giữa các nhà sản xuất, tạo nên sự đảm bảo cho người sử dụng. Một tính năng đáng chú ý khác của IPSec là bản chất của nó là một tiêu chuẩn mở và nó được bổ sung hoàn hảo bởi công nghệ PKI (Cơ sở hạ tầng khóa công khai).
IPsec kết hợp các công nghệ khóa công khai (RSA hoặc Đường cong Elip), thuật toán mã hóa đối xứng (chủ yếu là AES, mặc dù nó cũng hỗ trợ các thuật toán khác như Blowfish hoặc 3DES) và thuật toán băm (SHA256, SHA512, v.v.), cũng như các chứng chỉ kỹ thuật số dựa trên X509v3.
Tiêu đề IPsec
Giao thức IPsec có kiến trúc với một số tiêu đề, tùy thuộc vào những gì chúng ta quan tâm đến việc “đảm bảo”, chúng ta có thể chọn một tiêu đề này hoặc tiêu đề khác, chúng ta không thể chọn đồng thời cả hai tiêu đề trong cùng một đường hầm IPsec. Các tiêu đề mà chúng tôi có trong giao thức này như sau:
- Tiêu đề xác thực (AH)
- Tải trọng bảo mật được đóng gói (ESP)
Tiếp theo, chúng tôi sẽ giải thích chi tiết cách hoạt động của cả hai tiêu đề.
Tiêu đề xác thực (AH)
Tiêu đề này cung cấp xác thực và tính toàn vẹn cho các gói IP được truyền, để cung cấp tính năng IPsec này, nó sử dụng dấu vân tay HMAC. Bản thân giao thức sẽ phụ trách tính toán một hàm băm cho nội dung của gói IP, một số hàm băm được sử dụng bởi giao thức này là MD5 hoặc SHA-1 không an toàn, nhưng nó cũng hỗ trợ SHA256 hoặc SHA512 được bảo mật. .
Tiêu đề này cung cấp cho người nhận các gói IP một phương pháp để xác thực nguồn gốc của dữ liệu và xác minh rằng dữ liệu đã nói không bị thay đổi trong giao tiếp. Một chi tiết rất quan trọng là tiêu đề này không cung cấp tính bảo mật bởi vì nó không mã hóa dữ liệu của gói IP, do đó, thông tin trao đổi có thể bị bên thứ ba nhìn thấy trừ khi họ sử dụng các giao thức như HTTPS hoặc FTPES với bảo mật TLS.
AH là một tiêu đề xác thực được chèn vào giữa tiêu đề IP tiêu chuẩn (cả trong mạng IPv4 và IPv6) và dữ liệu được truyền. Dữ liệu được vận chuyển này có thể là một thông điệp TCP, UDP hoặc ICMP và thậm chí là một sơ đồ IP hoàn chỉnh. Trong tiêu đề AH là nơi dữ liệu lớp trên được chỉ ra, ngoài ra, AH đảm bảo tính toàn vẹn và tính xác thực của chính tiêu đề IP, ngoại trừ các thay đổi có thể thay đổi như TOS, TTL, cờ, bù đắp và tổng kiểm tra.
Hoạt động của giao thức AH như sau:
- Người gửi tính toán hàm băm từ tin nhắn sẽ được truyền đi. Nó sẽ được sao chép vào tiêu đề AH trong trường "Dữ liệu xác thực".
- Dữ liệu được truyền qua Internet.
- Khi gói đến người nhận, nó sẽ áp dụng hàm băm và so sánh với gói mà nó đã có (cả hai đều có cùng một khóa bí mật được chia sẻ).
Nếu dấu vân tay trùng khớp, có nghĩa là datagram chưa được sửa đổi, nếu không, chúng ta có thể khẳng định rằng thông tin đã bị giả mạo.
Tải trọng bảo mật được đóng gói (ESP)
Bao bọc Bảo mật Payload, hay còn được gọi là ESP, cung cấp xác thực, tính toàn vẹn và bảo mật của dữ liệu được truyền qua IPsec. Có nghĩa là, trong trường hợp này, chúng tôi sẽ mã hóa toàn bộ trường dữ liệu để mọi thông tin liên lạc đều được bảo mật, không giống như AH không mã hóa thông điệp được truyền đi. Để đạt được các tính năng bảo mật này, trao đổi khóa công khai được thực hiện bằng Diffie-Hellmann để đảm bảo giao tiếp giữa cả hai máy chủ.
Chức năng chính của giao thức ESP được tích hợp trong IPsec, là cung cấp tính bảo mật cho dữ liệu, để thực hiện điều này, ESP xác định mã hóa và cách thức mà dữ liệu sẽ được đặt trong một sơ đồ IP mới. Để cung cấp xác thực và tính toàn vẹn, ESP sử dụng các cơ chế tương tự như AH. Vì ESP cung cấp nhiều chức năng hơn AH nên định dạng tiêu đề phức tạp hơn: định dạng này bao gồm tiêu đề và đuôi (được đặt ở cuối gói), do đó ESP “bao quanh” dữ liệu được truyền. Về dữ liệu, ESP cho phép bạn sử dụng bất kỳ giao thức IP nào, ví dụ: TCP, UDP, ICMP và thậm chí là một gói IP hoàn chỉnh.
Cấu trúc của một gói ESP như sau:
ESP thuộc cấp mạng trong TCP / IP. Vùng dữ liệu là được mã hóa hoàn toàn , Các gói dữ liệu bản thân nó cũng có thể được xác thực để cung cấp bảo mật cao hơn. Việc mã hóa dữ liệu được thực hiện bằng cách sử dụng thuật toán khóa đối xứng , thường sử dụng mật mã khối (chẳng hạn như AES), mã hóa dữ liệu được thực hiện bằng cách sử dụng bội số kích thước khối , vì lý do này, chúng tôi có “Padding”, một trường điền.
Để mã hóa dữ liệu, trước tiên người gửi mã hóa thông điệp gốc bằng một khóa và chèn nó vào một sơ đồ IP mới (được bảo vệ bởi tiêu đề ESP). Trong trường hợp giả định rằng ai đó chặn tin nhắn (Man In The Middle), họ sẽ chỉ nhận được dữ liệu vô nghĩa vì họ không có khóa bí mật để giải mã tin nhắn. Khi bản tin đến đích, nó sẽ áp dụng khóa bí mật trên dữ liệu và giải mã gói tin.
Thuật toán được sử dụng rộng rãi nhất là AES trong tất cả các phiên bản của nó (128 và 256 bit) và ở các chế độ mã hóa khác nhau, chẳng hạn như AES-CBC, AES-CFB và AES-OFB . Tuy nhiên, chúng tôi nên sử dụng AES-GCM mà AEAD sẽ cung cấp cho chúng tôi và nó an toàn hơn nhiều so với các dịch vụ khác. Do đó, điều cần thiết là sử dụng thuật toán mã hóa tốt để bảo vệ tất cả dữ liệu , việc phân phối các khóa một cách an toàn sẽ rất quan trọng. Một vấn đề tế nhị là cả hai bên giao tiếp đồng ý về các thuật toán và xác thực, điều này sẽ được thực hiện bởi giao thức IKE.
IKE: nó là gì và nó dùng để làm gì
Giao thức IKE (Internet Key Exchange) này được sử dụng để tạo và quản lý các khóa cần thiết để thiết lập AH (Tiêu đề xác thực) và Kết nối ESP (Tải trọng bảo mật được đóng gói) . Hai hoặc nhiều người tham gia kết nối IPsec phải đồng ý theo một cách nào đó, các loại mã hóa và các thuật toán xác thực để có thể thiết lập kết nối một cách an toàn. Cấu hình này có thể được thực hiện thủ công ở cả hai đầu của kênh hoặc thông qua một giao thức ( Giao thức IKE ) để chăm sóc thương lượng tự động của những người tham gia (SA = Hiệp hội Bảo mật).
Giao thức IKE không chỉ chịu trách nhiệm quản lý và điều hành các khóa mà còn thiết lập kết nối giữa những người tham gia tương ứng. IKE không chỉ có trong IPsec, mà nó có thể được sử dụng trong các thuật toán định tuyến khác nhau như OSPF hoặc RIP.
Các giai đoạn đàm phán IKE
Việc thiết lập kênh an toàn sẽ được thực hiện bằng cách sử dụng một thuật toán trao đổi khóa như Diffie-Hellman để mã hóa giao tiếp IKE. Thương lượng này được thực hiện thông qua một SA hai chiều. Xác thực có thể thông qua PSK (khóa chia sẻ) hoặc bằng các phương pháp khác như chứng chỉ RSA. Sử dụng kênh bảo mật đã được tạo, hiệp hội bảo mật IPsec (hoặc các dịch vụ khác) sẽ được thương lượng.
Một số tính năng của IKE
IKE hỗ trợ duyệt NAT , ngay cả khi một hoặc cả hai người tham gia đứng sau NAT, kết nối có thể được thực hiện mà không gặp nhiều vấn đề, mặc dù chúng tôi sẽ phải mở các cổng trên máy chủ VPN nếu nó nằm sau NAT. Số thứ tự và ACK được sử dụng để cung cấp độ tin cậy, nó cũng bao gồm một hệ thống xử lý lỗi. IKE có khả năng chống lại các cuộc tấn công từ chối dịch vụ và IKE không thực hiện hành động nào cho đến khi xác định được điểm cuối yêu cầu có thực sự tồn tại hay không, do đó bảo vệ khỏi các cuộc tấn công từ các địa chỉ IP giả mạo.
Hiện tại IKEv2 được triển khai rộng rãi trong tất cả các tường lửa và bộ định tuyến chuyên nghiệp, tuy nhiên, nó vẫn chưa được mở rộng hoàn toàn trong thế giới Android hoặc iOS, chỉ Samsung người dùng điện thoại thông minh hỗ trợ IPsec với IKEv2. Hệ điều hành Windows, Linux và macOS hỗ trợ giao thức này.
IKEv2: những gì đã thay đổi
IKEv2 là phiên bản thứ hai của giao thức Internet Key Exchange phổ biến này, nó kết hợp các cải tiến cho NAT traversal, giúp giao tiếp và vượt qua tường lửa nói chung dễ dàng hơn. Nó cũng hỗ trợ một chuẩn di động mới, cho phép kết nối lại giao tiếp rất nhanh chóng, ngoài ra, nó còn cho phép multihoming (đa nguồn gốc), rất lý tưởng cho người dùng smartphone, tablet hay laptop. IKEv2 cho phép sử dụng SCTP được sử dụng trong VoIP, nó cũng có khả năng trao đổi thông điệp đơn giản hơn, nó có ít cơ chế mật mã hơn chỉ cho phép những cơ chế an toàn nhất. Lợi ích của việc sử dụng VPN với mật mã không an toàn là gì? IKEv2 chỉ cho phép sử dụng an toàn nhất
Phương thức hoạt động: vận tải hoặc đường hầm
IPsec cung cấp cho chúng ta hai chế độ hoạt động rất khác nhau, cho cả tiêu đề xác thực (AH) và cho tải trọng bảo mật đóng gói (ESP). Các chế độ hoạt động này khác nhau về cách các gói được địa chỉ. Tiếp theo, chúng tôi giải thích sâu hơn về sự khác biệt giữa hai loại này.
Phương tiện giao thông
Tiêu đề AH hoặc ESP được chèn vào giữa vùng dữ liệu và tiêu đề IP, theo cách mà các địa chỉ IP ban đầu được giữ lại. Nội dung được đóng gói trong một sơ đồ dữ liệu AH hoặc ESP đến trực tiếp từ lớp truyền tải. Do đó, tiêu đề IPsec sẽ được chèn sau tiêu đề IP và ngay trước dữ liệu được cung cấp bởi lớp truyền tải. Bằng cách này, chỉ có trọng tải được mã hóa và xác thực. Sơ đồ của datagram sẽ như sau:
Phương thức truyền tải đảm bảo giao tiếp đầu cuối, nhưng các đầu cuối phải nhận thức được sự tồn tại của giao thức IPsec để hiểu nhau.
Chế độ đường hầm
Trong chế độ đường hầm, toàn bộ gói IP (tiêu đề + dữ liệu) được mã hóa và xác thực nếu ESP được sử dụng. Gói này sẽ được đóng gói trong một gói IP mới, do đó, địa chỉ IP sẽ thay đổi thành địa chỉ của gói IP cuối cùng. Do đó, một tiêu đề AH hoặc ESP được thêm vào gói ban đầu, và sau đó tiêu đề IP được thêm vào sẽ phục vụ cho việc định tuyến gói qua mạng.
Chế độ đường hầm thường được sử dụng để giao tiếp mạng với mạng, nhưng nó cũng có thể được sử dụng (và trên thực tế được sử dụng), để giao tiếp máy tính với mạng và máy tính với máy tính. Chế độ hoạt động này giúp các nút dễ dàng ẩn danh tính của chúng khỏi các nút khác đang giao tiếp. Bằng cách sử dụng chế độ đường hầm, chúng tôi sẽ có thể có một mạng con dành riêng cho các máy khách VPN. Chế độ đường hầm được sử dụng chủ yếu bởi các cổng IPSec, để xác định mạng mà chúng bảo vệ theo cùng một địa chỉ IP và do đó tập trung xử lý lưu lượng IPSec trên máy tính.
Trong hình ảnh sau, bạn có thể thấy sự so sánh giữa cả hai sơ đồ hoạt động, luôn sử dụng ESP:
Khi chúng ta đã thấy hai phương thức hoạt động, chúng ta sẽ xem chúng ta có những phương thức xác thực nào trong IPsec.
Phương pháp xác thực
Trong giao thức IPsec, chúng tôi có tổng cộng bốn phương thức xác thực: khóa chia sẻ, chữ ký số RSA, chứng chỉ số X.509 và xác thực thông qua một nhóm người dùng XAuth. Tùy thuộc vào tình huống mà chúng ta muốn triển khai IPsec, phương pháp xác thực này hay phương pháp xác thực khác sẽ được sử dụng, mỗi phương pháp này đều có ưu và nhược điểm sẽ được đề cập. Tiếp theo, chúng tôi giải thích chi tiết bốn phương pháp này.
Chìa khóa chung
Khóa chia sẻ là một khóa được tạo thành từ một chuỗi ký tự (chuỗi ký tự tồn tại) mà chỉ hai đầu của giao tiếp mới biết để thiết lập kết nối IPsec. Thông qua việc sử dụng các thuật toán xác thực (HASH), nó sẽ được xác minh rằng các khóa là chính xác mà không cần các khóa nói trên bị tiết lộ. Để phương pháp này được bảo mật, phải có một khóa cho mỗi cặp người tham gia trong giao tiếp. Loại xác thực này không khả thi đối với nhiều người tham gia, vì sẽ có một số lượng khóa rất lớn.
Mặc dù hàm băm được sử dụng để trao đổi các khóa trong kết nối, trước khi kết nối này, các khóa phải ở cả hai đầu của giao tiếp, vì lý do này, chúng tôi không thể biết chắc chắn liệu khóa đó đã được bắt khi nó được gửi hay chưa. Chúng tôi chỉ có thể đảm bảo rằng nó an toàn nếu chúng tôi giao hàng bằng tay. Kỹ thuật này hữu ích cho các mạng nhỏ, nhưng đối với các mạng vừa và lớn thì nó hoàn toàn không khả thi.
Chữ ký kỹ thuật số RSA
IPsec hoạt động với giao thức IKE để quản lý và bảo mật khóa tự động, sử dụng chữ ký số RSA để trao đổi khóa an toàn thông qua cặp khóa công khai và khóa riêng. Các khóa này có cùng vấn đề với khóa chia sẻ, bằng cách nào đó chúng ta phải gửi các khóa đến “phía bên kia”, nhưng chúng ta có thể sửa đổi các khóa một cách an toàn bằng giao thức IKE.
Do đó, để bảo mật mạng, nên thay đổi các khóa này một cách thường xuyên. Các chữ ký RSA này cung cấp cho mạng khả năng xác thực và bảo mật.
Giấy chứng nhận X.509
Một trong những hình thức xác thực an toàn nhất trong IPsec là làm việc với chứng chỉ số, tạo cơ sở hạ tầng khóa công khai (PKI) với CA (Tổ chức chứng nhận) tương ứng, chứng chỉ số của máy chủ và chứng chỉ số của khách hàng. Nhờ các chứng chỉ số này, chúng ta có thể thiết lập xác thực rất mạnh, ngoài ra, chúng ta cũng có thể làm việc với chứng chỉ số, các chứng chỉ này chứa khóa công khai của chủ sở hữu và nhận dạng của họ. Chủ sở hữu cũng có một cặp khóa công khai và riêng tư để hoạt động tại thời điểm xác nhận.
Việc sử dụng các chứng chỉ này làm cho giao thức PKI xuất hiện trên hiện trường để xác thực các nút liên quan đến giao tiếp IPsec. Việc sử dụng PKI này giúp tạo các chứng chỉ mới và xóa các chứng chỉ khác. Hiệu lực của chứng chỉ số do PKI cấp, PKI này tích hợp CA chứa khóa công khai và danh tính của chủ sở hữu. Các điểm cuối tham gia vào kết nối IPsec sẽ nhận ra CA là hợp lệ, vì chúng sở hữu một bản sao của CA đó (khóa công khai của CA).
Việc xác thực chứng chỉ được thực hiện bằng cách sử dụng danh sách thu hồi chứng chỉ (CRL) được lưu trữ trong PKI. Tất cả những người tham gia sẽ có một bản sao CRL này được cập nhật liên tục.
Xác thực nhóm người dùng XAuth
Phương pháp này thêm người dùng và mật khẩu vào các chứng chỉ kỹ thuật số đã thấy trước đây (X.509), theo cách đó, ngoài việc xác thực chứng chỉ, nó cũng sẽ xác thực người dùng và mật khẩu. Để xác thực những người dùng và mật khẩu này, chúng tôi có thể sử dụng máy chủ Radius hoặc trực tiếp một cơ sở dữ liệu nhỏ với danh sách người dùng và mật khẩu.
Thiết lập kết nối
Việc thương lượng đường hầm IPsec được thực hiện thông qua giao thức IKE sẽ cung cấp cho chúng ta một kết nối được mã hóa và xác thực giữa hai đầu của giao tiếp. Trong quy trình kết nối, các khóa và bảo mật được sử dụng để thiết lập kết nối IPsec sẽ được thống nhất. Quy trình kết nối được thực hiện theo hai phần riêng biệt. Chúng tôi giải thích hai phần này dưới đây.
1. Cung cấp xác thực và bảo mật cho kết nối
Để bảo mật kết nối, một thuật toán mã hóa đối xứng và chữ ký HMAC sẽ được sử dụng. Các khóa được trao đổi bằng thuật toán trao đổi khóa, chẳng hạn như Diffie-Hellman. Phương pháp này không đảm bảo rằng những người tham gia là những người họ nói, do đó, chúng tôi sẽ sử dụng khóa chia sẻ trước hoặc chứng chỉ kỹ thuật số.
Phần đầu tiên của giao tiếp kết thúc khi các thông số bảo mật đã được thống nhất và kênh giao tiếp đã được bảo mật.
2. Cung cấp tính bảo mật của dữ liệu.
Kênh bảo mật IKE mà chúng tôi đã thiết lập được sử dụng để thương lượng các tham số bảo mật IPsec cụ thể (tiêu đề AH hoặc ESP, thuật toán xác thực, v.v.). Các thông số cụ thể này có thể bao gồm các khóa Diffie-Hellman mới, để cung cấp bảo mật cao hơn, miễn là chúng tôi đã định cấu hình PFS (Perfect Direct Confidentiality), được khuyến khích sử dụng để làm cho VPN mạnh mẽ hơn nữa.
Các dịch vụ bảo mật do IPsec cung cấp
Bảo mật
Dịch vụ bảo mật có được thông qua chức năng mã hóa có trong giao thức ESP. Trong trường hợp này, bạn nên kích hoạt tùy chọn xác thực, vì nếu tính toàn vẹn của dữ liệu không được đảm bảo thì việc mã hóa sẽ vô ích. Điều này là do thực tế là mặc dù dữ liệu không thể được giải thích bởi bất kỳ ai trong quá trình chuyển tiếp, nó có thể bị thay đổi bằng cách gửi lưu lượng truy cập vô nghĩa đến người nhận thông báo sẽ được chấp nhận là lưu lượng hợp lệ.
Ngoài việc cung cấp mã hóa lưu lượng, giao thức ESP cũng có các công cụ để ẩn loại giao tiếp đang được thực hiện; đối với điều này, nó cho phép điền các ký tự được nhập vào nội dung của dữ liệu gói, do đó độ dài thực của gói được ẩn đi. Đây là một biện pháp bảo vệ hữu ích chống lại các kỹ thuật phân tích lưu lượng, cho phép kẻ tấn công suy ra thông tin hữu ích từ việc nghiên cứu các đặc điểm của lưu lượng được mã hóa.
Tính toàn vẹn và xác thực nguồn gốc dữ liệu
Giao thức AH là phù hợp nhất nếu không cần mã hóa. Tùy chọn xác thực giao thức ESP cung cấp chức năng tương tự, mặc dù bảo vệ này, không giống như AH, không bao gồm tiêu đề IP. Như đã đề cập trước đây, tùy chọn này có tầm quan trọng lớn đối với những ứng dụng trong đó điều quan trọng là phải đảm bảo tính bất biến của nội dung các gói IP.
Phát hiện lặp lại
Xác thực bảo vệ chống lại giả mạo IP, tuy nhiên kẻ tấn công vẫn có thể nắm bắt các gói tin hợp lệ và chuyển tiếp chúng đến đích. Để tránh cuộc tấn công này, cả ESP và AH đều kết hợp một quy trình để phát hiện các gói lặp lại. Thủ tục Said dựa trên một số thứ tự có trong tiêu đề ESP hoặc AH, người gửi tăng số thứ tự cho mỗi gói dữ liệu mà nó gửi và người nhận sẽ kiểm tra nó, do đó các gói lặp lại sẽ bị bỏ qua.
Kẻ tấn công không thể sửa đổi chuỗi này, vì nó được bảo vệ bằng tùy chọn toàn vẹn cho một trong hai giao thức (AH và ESP) và bất kỳ sửa đổi nào trong số này sẽ gây ra lỗi trong quá trình kiểm tra tính toàn vẹn của gói.
Kiểm soát truy cập: Xác thực và ủy quyền
Vì việc sử dụng ESP và AH yêu cầu kiến thức về các khóa và các khóa này được phân phối một cách an toàn thông qua phiên IKE trong đó cả hai nút xác thực lẫn nhau, nên có sự đảm bảo rằng chỉ các máy tính mong muốn tham gia vào giao tiếp.
Cần làm rõ rằng xác thực hợp lệ không ngụ ý truy cập đầy đủ vào tài nguyên, vì IPSec cũng cung cấp các chức năng ủy quyền. Trong quá trình thương lượng IKE, luồng lưu lượng IP sẽ lưu thông qua kết nối IPSec được chỉ định. Đặc điểm kỹ thuật này tương tự như một bộ lọc gói, xem xét giao thức, địa chỉ IP của cổng nguồn và cổng đích, byte “TOS” và các trường khác. Ví dụ, IPSec có thể được sử dụng để cho phép truy cập từ một văn phòng chi nhánh đến mạng cục bộ của trung tâm.
Tôi không từ chối
Có thể sử dụng dịch vụ không từ chối bằng IKE với xác thực chứng chỉ số. Trong trường hợp này, quy trình xác thực dựa trên chữ ký điện tử của một tin nhắn có chứa danh tính của người tham gia. Chữ ký này, nhờ vào liên kết giữa khóa công khai và danh tính mà chứng chỉ số đảm bảo, là bằng chứng rõ ràng rằng kết nối IPSec đã được thiết lập với một máy tính cụ thể, do đó nó không thể phủ nhận nó. Tuy nhiên, trong thực tế, thử nghiệm này phức tạp hơn, vì nó sẽ yêu cầu lưu trữ các thông điệp thương lượng IKE.
L2TP / IPsec - đây là gì?
L2TP (Layer 2 Tunneling Protocol) là một giao thức được sử dụng cho VPN được thiết kế bởi một nhóm làm việc của IETF, với tư cách là người thừa kế PPTP, và được tạo ra để sửa chữa những thiếu sót của giao thức này và tự thiết lập nó như một tiêu chuẩn. L2TP sử dụng PPP để cung cấp quyền truy cập quay số, có thể được đào đường hầm qua Internet đến một điểm xác định. L2TP bao gồm các cơ chế xác thực của PPP, PAP và CHAP, ngoài ra, tương tự như PPTP, nó hỗ trợ việc sử dụng các giao thức xác thực này, chẳng hạn như RADIUS.
Mặc dù L2TP cung cấp khả năng truy cập được hỗ trợ đa giao thức và truy cập vào các mạng cục bộ từ xa, nhưng nó không có các đặc điểm mật mã đặc biệt mạnh mẽ. Hoạt động xác thực chỉ được thực hiện giữa các điểm cuối của đường hầm, nhưng không được thực hiện đối với từng gói đi qua nó. Điều này có thể dẫn đến việc giả mạo ở đâu đó bên trong đường hầm. Nếu không kiểm tra tính toàn vẹn của mỗi gói, có thể thực hiện tấn công từ chối dịch vụ bằng cách sử dụng các thông báo điều khiển không có thật để chấm dứt đường hầm L2TP hoặc kết nối PPP bên dưới.
L2TP không mã hóa mạnh mẽ lưu lượng dữ liệu của người dùng, do đó gây ra vấn đề khi cần giữ bí mật dữ liệu. Mặc dù thực tế là thông tin chứa trong các gói có thể được mã hóa, nhưng giao thức này không có cơ chế tạo khóa tự động hoặc làm mới khóa tự động. Điều này có thể cung cấp cho người nào đó nghe trên mạng và phát hiện ra một khóa duy nhất để có quyền truy cập vào tất cả dữ liệu được truyền.
Tính đến tất cả những điểm yếu này của L2TP, IETF đã đưa ra quyết định sử dụng các giao thức của chính giao thức IPsec, để bảo vệ dữ liệu truyền qua đường hầm L2TP. Vì lý do này, chúng luôn được viết là “L2TP / IPsec”, vì cả hai giao thức được sử dụng đồng thời và giao thức chung này được sử dụng rộng rãi. Có thể nói L2TP là giao thức ở cấp lớp “liên kết” và nó không có bảo mật, tuy nhiên, IPSec cung cấp bảo mật ở lớp mạng để việc sử dụng giao thức này được an toàn.
Vì lý do này, chúng tôi sẽ luôn tìm danh pháp L2TP / IPSec cùng nhau, vì cả hai giao thức đều được sử dụng để có kết nối VPN an toàn.
Kết luận
IPSec là một tiêu chuẩn bảo mật cực kỳ mạnh mẽ và linh hoạt. Tầm quan trọng của nó nằm ở thực tế là nó giải quyết sự thiếu truyền thống trong giao thức IP: bảo mật. Nhờ IPSec, giờ đây có thể sử dụng mạng IP cho các ứng dụng quan trọng, chẳng hạn như giao dịch kinh doanh giữa các công ty. Đồng thời, nó là giải pháp lý tưởng cho những trường hợp yêu cầu bảo mật, bất kể ứng dụng nào, vì vậy nó là một phần thiết yếu trong bảo mật của mạng IP. Giao thức IPSec đã là một trong những thành phần cơ bản của bảo mật trong mạng IP ngày nay.