Là dữ liệu luôn được mã hóa trong truyền thông IPv6?


30

Tôi dường như không thể có được một câu trả lời thẳng cho câu hỏi này. Wikipedia cho biết "IPsec là một phần không thể thiếu của bộ giao thức cơ sở trong IPv6", nhưng điều đó có nghĩa là TẤT CẢ các thông tin liên lạc luôn được mã hóa hoặc có nghĩa là mã hóa là tùy chọn, nhưng các thiết bị phải có thể hiểu được (nên sử dụng nó )?

Nếu mã hóa là tùy chọn, nó có phải là hệ điều hành quyết định sử dụng mã hóa hay là ứng dụng? Các hệ điều hành và phần mềm phổ biến thường cho phép mã hóa?

Tôi sẽ tự điều tra việc này, nhưng tôi thiếu kết nối IPv6.

Cập nhật: Ok, vì vậy nó là tùy chọn. Câu hỏi tiếp theo của tôi: thông thường, đó là ứng dụng xác định nên sử dụng mã hóa hay là hệ điều hành?

Một ví dụ cụ thể: Hãy tưởng tượng tôi có một phiên bản Windows gần đây có hỗ trợ ipv6 riêng và tôi tìm kiếm thứ gì đó trên ipv6.google.com bằng Mozilla Firefox. Nó sẽ được mã hóa?


16
IPSec giống như một cái khóa trên cánh cửa; nó có thể là một phần của cánh cửa, nhưng điều đó không có nghĩa là cánh cửa nhất thiết phải bị khóa.
Chris S

@Chris S: Nhận xét tuyệt vời, bạn có phiếu bầu của tôi cho điều đó.
SplinterReality

Câu trả lời:


31

Không.

IPv6 có IPsec tích hợp như một phần của giao thức và nó không phải là một phụ kiện như với IPv4. Tuy nhiên, điều này không có nghĩa là nó được bật theo mặc định, nó chỉ có nghĩa là nó (trên lý thuyết) thấp hơn trên ngăn xếp mạng.

Nói chung, việc sử dụng IPsec được xác định ở cấp IP của ngăn xếp mạng và do đó được xác định bởi chính các chính sách hệ thống. ví dụ: Hệ thống A có thể có chính sách yêu cầu cả AH và ESP có bất kỳ giao tiếp nào với mạng con 4.0.0.0/8.

Cập nhật: để rõ ràng, ứng dụng không quan tâm - nó chỉ biết rằng nó phải mở một kết nối mạng ở đâu đó và gửi / nhận dữ liệu xuống nó. Hệ thống sau đó phải tìm hiểu xem có nên thương lượng IPsec cho kết nối được yêu cầu không. IPsec được thiết kế rất nhiều để trở thành một cơ chế xác thực / mã hóa cấp thấp và được xây dựng có chủ đích để các giao thức và ứng dụng cấp cao hơn không phải lo lắng về nó.

Điều đó nói rằng, đó chỉ là một kiểm soát bảo mật cấp mạng khác và không nhất thiết phải được sử dụng riêng rẽ hoặc dựa vào để đảm bảo "bảo mật" - nếu bạn đang cố gắng giải quyết và xác thực sự cố, bạn hoàn toàn có thể muốn ứng dụng để thực thi một số loại xác thực cấp người dùng trong khi để xác thực cấp máy xuống IPsec.


1
Cảm ơn bạn đã loại bỏ rõ ràng một huyền thoại phổ biến khủng khiếp.
Marcin

3
Ồ, những điều có thể có được. Có lẽ chúng ta sẽ có được điều này trong IPv8 sau vài trăm năm nữa.
Michael Hampton

1
Tôi không đồng ý - mã hóa phải luôn luôn có thể, và tốt nhất, rất dễ dàng. Việc bắt buộc một loại kiểm soát bảo mật nhất định bất kể sự tồn tại của các điều khiển khác là hơi thiển cận đối với các trường hợp sử dụng mà bạn chủ động không muốn mã hóa ở cấp độ IP.
triển

20

Câu trả lời ngắn gọn: Không.

Câu trả lời dài: IPsec đã được xem xét khi thiết kế IPv6, theo nghĩa, không giống như trong IPv4, IPsec (khi được sử dụng) là một phần của tiêu đề IPv6.

Giải thích thêm: trong IPv4, IPsec chạy trên chính IP. Đây thực sự là một giao thức lớp 4 'giả mạo' như một giao thức lớp 3 (do đó các giao thức L4 thông thường của TCP và UDP vẫn có thể hoạt động). ESP (Encapsulation Security Payload) không thể trải dài giữa các gói IP. Do đó, các gói IPsec thường sẽ bị giảm khả năng tải trọng nghiêm trọng nếu ngăn chặn sự phân mảnh. Ngoài ra, vì nằm trên IP, tiêu đề của IP không được bảo vệ.

Trong IPv6, IPsec là một phần của chính IP. Nó có thể mở rộng các gói, vì tiêu đề ESP hiện là một phần của tiêu đề IP. Và bởi vì nó được tích hợp với IP, nhiều phần của tiêu đề IP có thể được bảo vệ.

Tôi hy vọng lời giải thích 'một cách ngắn gọn' của tôi là đủ rõ ràng.


1
Trên thực tế, AH ký toàn bộ gói, có nghĩa là không có gì có thể thay đổi (ví dụ NAT phá vỡ nó.) Đây là lý do tại sao rất ít đường hầm IPSec thực sự sử dụng AH. Và đó là một trong nhiều tiêu đề mở rộng , không phải là "một phần của tiêu đề IP".
Ricky Beam

2

Để bạn theo dõi câu hỏi:

Hệ điều hành xác định khi nào nên sử dụng mã hóa. Các tùy chọn "chính sách" này nằm trong bảng điều khiển / chính sách cấu hình. Bạn nói những điều như "nếu bạn muốn kết nối với bất kỳ địa chỉ nào trong mạng con ab12 :: bạn phải có bí mật Blah1234". Có các tùy chọn để sử dụng PKI.

Hiện tại, một ứng dụng không thể thêm vào chính sách này hoặc yêu cầu chính sách này được thiết lập. Có một đề cập trong phần ipv6 socket socket linux "Không hỗ trợ IPSec cho các tiêu đề EH và AH." Vì vậy mọi người đã nghĩ về điều này nhưng hiện tại không có triển khai làm việc nào được biết đến.


1

Để câu hỏi tiếp theo của bạn có và không.

Các ứng dụng có thể chỉ định mã hóa, nhưng mã hóa được thực hiện ở cấp ứng dụng. Có rất nhiều cặp giao thức không được mã hóa / mã hóa bằng các cổng khác nhau như HTTP / HTTPS, LDAP / LDAPS, IMAP / IMAPS và SMTP / SSMTP. Tất cả đều sử dụng mã hóa SSL hoặc TLS. Một số dịch vụ sẽ cung cấp tùy chọn startTLS cho phép bắt đầu kết nối được mã hóa trên cổng thông thường không được mã hóa. SSH là một ứng dụng luôn sử dụng kết nối được mã hóa. Mã hóa là kết thúc để kết thúc cho những trường hợp này. (Có một thuật toán mã hóa NULL có thể được sử dụng và nội dung được mã hóa sẽ được vận chuyển không được mã hóa.)

IPSEC được cấu hình bởi quản trị viên và ứng dụng sẽ không biết liệu kết nối có được mã hóa hay không. Tôi chủ yếu thấy IPSEC được sử dụng để kết nối lưu lượng giữa các mạng LAN qua các kết nối không bảo mật (kết nối VPN). Tôi tin rằng IPSEC chỉ có thể áp dụng cho một phần của tuyến đường, vì vậy trên một số phân đoạn mạng, dữ liệu được truyền đi rõ ràng (không được mã hóa).

Đưa ra lựa chọn tôi sẽ sử dụng mã hóa ứng dụng vì mã hóa mạng không được sử dụng nhiều.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.