- Tổng đài 24/7: 1800 646 881
- Đăng nhập
- 3
Hiện nay, trong lĩnh vực CNTT xuất hiện rất nhiều giao thức xác thực bảo vệ khác nhau. Một trong số đó là giao thức Kerberos. Hãy cùng BKHOST tìm hiểu chi tiết hơn về loại giao thức xác thực này và cùng so sánh nó với một số giao thức khác trong bài viết dưới đây.
Giao thức Kerberos được triển khai nhằm xác thực yêu cầu dịch vụ giữa các máy chủ trên mạng Internet. Hiện nay, hầu hết các hệ điều hành máy tính hiện nay như Microsoft Windows, Apple mac OS, FreeBSD và Linux đều được cài đặt sẵn các hỗ trợ Kerberos này.
Một số đối tượng sử dụng giao thức Kerberos như các phiên bản Windows 2000 trở đi, dịch vụ Windows Active Directory (AD) và các nhà cung cấp dịch vụ Broadband. Tên giao thức Kerberos được đặt với ý nghĩa là ba cổng bảo vệ Hades. Cụ thể đó là:
KDC với một quy trình chạy duy nhất cung cấp đồng thời hai dịch vụ đó là xác thực và cấp Ticket. Trong đó, Ticket KDC có khả năng xác thực lẫn nhau cho phép các Node dễ dàng xác minh danh tính với nhau một cách an toàn. Còn xác thực Kerberos sử dụng một loại bảo mật được chia sẻ nhằm ngăn chặn các hành vi đọc và chỉnh sửa các gói truyền qua mạng.
Ban đầu, giao thức Kerberos được triển khai nhằm cho phép người dùng mạng MIT có thể tự xác thực an toàn và cung cấp quyền truy cập vào các hệ thống. Tại thời điểm này, hầu hết các hệ thống trên mạng đều có phương thức xác thực truyền thống đó là sử dụng ID và mật khẩu không được mã hóa. Do đó, những kẻ tấn công thường lợi dụng lỗ hổng này để truy cập vào mạng và đánh cắp các thông tin cũng như dữ liệu quan trọng của người dùng.
Để giải quyết được vấn đề này, các nhà phát triển đã triển khai giao thức xác thực mạng đáng tin cậy đó là Kerberos. Loại giao thức này giúp xác thực các máy chủ trên mạng không đáng tin cậy. Ngoài ra, các quản trị viên hệ thống còn được cung cấp cơ chế xác thực thông qua Internet.
Kerberos ban đầu có tên là Kerberos Authentication and Authorization System. Nó là phương tiện hỗ trợ ủy quyền với mục đích cung cấp quyền truy cập cho đối tượng được chỉ định vào tài nguyên cụ thể trên mạng. Cụ thể, người dùng không chỉ được ủy quyền truy cập vào một số tài nguyên mà còn có thể đi sâu hơn vào các tài nguyên đó như lưu trữ và cơ sở dữ liệu.
Ngoài ra, giao thức Kerberos còn được triển khai có thể tương tác với các hệ thống thông tin kế toán an toàn. Do đó, nó trở thành phương thức kết hợp AAA bao gồm Authentication, Authorization và Accounting.
Dưới đây là một số mục tiêu khi triển khai Kerberos và các đối tượng có thể sử dụng giao thức này:
Mục tiêu của hệ thống Kerberos được triển khai bao gồm những điều sau đây:
Một số đối tượng sử dụng giao thức Kerberos bao gồm:
Dịch vụ xác thực với Kerberos hoạt động bằng cách sử dụng các TGT để xác minh người dùng đáng tin cậy. Sau khi được phê duyệt, người dùng có thể yêu cầu Kerberos cung cấp các Ticket khác để có thể truy cập vào các dịch vụ ứng dụng khác.
Giao thức Kerberos hoạt động với quy trình như sau:
Trước khi bắt đầu quá trình xác thực máy khách Kerberos, máy khách đó sẽ tự tạo một yêu cầu xác thực để gửi đến máy chủ KDC Kerberos. Trong đó, yêu cầu xác thực này được gửi dưới dạng văn bản và đảm bảo rằng không có bất kỳ thông tin nhạy cảm nào được đưa vào yêu cầu đó. Sau đó, máy chủ xác thực sẽ tiến hành xác minh yêu cầu trong cơ sở dữ liệu KDC và truy xuất khóa cá nhân của máy khách đang khởi tạo.
Sau khi xác thực yêu cầu được gửi đến, nếu như không tìm thấy tên của người dùng trên ứng dụng khách đang khởi tạo thì quá trình xác thực yêu cầu đó sẽ dừng lại. Nếu tìm thấy tên người dùng thì máy chủ xác thực sẽ gửi cho máy khách một TGT và một khóa phiên.
Hoàn tất xác thực từ máy chủ, người dùng sẽ tiếp tục gửi đi một yêu cầu cấp dịch vụ Ticket từ TGS. Trong đó, yêu cầu này cần phải đi kèm với TGT được gửi từ máy chủ xác thực KDC.
Nếu như TGS xác thực khách hàng thành công thì nó sẽ gửi về thông tin đăng nhập và Ticket để người dùng có thể bắt đầu truy cập vào dịch vụ. Quá trình này sẽ được mã hóa tự động bằng khóa phiên dành riêng cho người dùng và dịch vụ hiện tại.
Máy khách sẽ gửi đến máy chủ ứng một một yêu cầu truy cập với Ticket được nhận từ trước. Máy khách được cấp quyền truy cập chỉ khi máy chủ ứng dụng đồng ý xác thực thành công yêu cầu này.
Nếu như máy khách yêu cầu máy chủ ứng dụng tự động xác thực thì đây gọi là phản hồi bắt buộc. Tức là máy khách đã tự xác thực và phản hồi của máy chủ ứng dụng sẽ bao gồm cả xác thực Kerberos.
Ticket dịch vụ do TGS gửi về được gắn kèm dấu thời gian cho phép người dùng có thể truy cập vào dịch vụ một cách dễ dàng theo thời gian được đặt sẵn mà không cần xác thực lại. Việc gắn kèm dấu thời gian này có tác dụng hạn chế hành vi sử dụng trái phép Ticket đó trong tương lai.
Microsoft đã mặc định đặt thời gian sử dụng tối đa các Ticket dịch vụ đó trong triển khai Kerberos trên Windows Server là 600 phút. Đặc biệt, nếu như thời gian tồn tại tối đa của Ticket được đặt là 0 thì nó có thể được sử dụng mãi mãi.
Giao thức Kerberos được sử dụng nhằm xác thực các yếu tố về quyền truy cập vào tài nguyên mạng. Đặc biệt là các hệ thống mạng lớn hỗ trợ SSO hoặc các hệ thống hỗ trợ Kerberos tích hợp khác. Chẳng hạn như dịch vụ web của Amazon, Apple macOS, Google Cloud, Hewlett Packard Unix, IBM Advanced Interactive eXaries, Microsoft Azure, Microsoft Windows Server và AD, Oracle Solaris, Red Hat Linux, FreeBSD và OpenBSD.
Ngoài Kerberos có rất nhiều giao thức xác thực khác được ưa chuộng sử dụng. Tuy nhiên, Giao thức Kerberos với nhiều tính năng hiện đại và an toàn nên nó được sử dụng rộng rãi nhất hiện nay. Không chỉ với khả năng chống lại các vấn đề về đầu vào mà nó còn có khả năng khắc phục những hậu quả xảy ra trong quá trình thực thi một cách hiệu quả.
Microsoft NTLM là một giao thức xác thực được triển khai vào năm 1993 dành cho Windows NT. Điểm hạn chế của giao thức NTLM này đó là nó hoạt động phụ thuộc vào giao thức Challenge-Response để xác thực. Tuy nhiên, nó vẫn được sử dụng với nhiệm vụ cung cấp dịch vụ SSO trong miền AD. Hiện nay, Microsoft không còn sử dụng phương thức xác thực NTLM mà thay thế bằng giao thức Kerberos đối với các phiên bản Windows 2000 trở đi.
LDAP là một giao thức duy trì truy cập thông tin đáng tin cậy trên tài khoản của người dùng. Cụ thể, người dùng có thể sử dụng LDAP để đăng nhập vào tài khoản trong lần tiếp theo thông qua kết nối mạng. LDAP và Kerberos thường được sử dụng cùng nhau. Trong đó, LDAP cung cấp dịch vụ ủy quyền còn Kerberos cung cấp dịch vụ xác thực trên mạng.
Giao thức RADIUS được triển khai nhằm cung cấp dịch vụ xác thực cho người dùng truy cập từ xa. Chẳng hạn như từ các nhà cung cấp dịch vụ Internet, mạng công ty hay đường dây nóng điện thoại. Ngoài ra, giao thức RADIUS có thể kết hợp với Kerberos nhằm cung cấp khả năng xác thực mạnh hơn.
Kerberos là một giao thức an toàn được triển khai dành cho mọi người dùng với khả năng xác thực dựa trên cơ chế hoạt động hoàn thiện và an toàn. Ngoài ra, nó còn sử dụng thêm mật khẩu mạnh, mã hóa khóa bí mật nhằm bảo vệ các dữ liệu nhạy cảm của người dùng.
Tuy nhiên, nó vẫn có một số điểm hạn chế đó là:
Như vậy, bài viết trên đây chúng tôi đã đề cập cho bạn các thông tin liên quan đến giao thức Kerberos. Để ngăn chặn các cuộc tấn công nguy hiểm này, người dùng nên thường xuyên cập nhật các lỗ hổng bảo mật của Kerberos và các bản cập nhật phần mềm.
Nếu còn gặp bất cứ vướng mắc gì về Kerberos, hãy để lại ở bên bình luận bên dưới, BKHOST sẽ trả lời bạn trong thời gian sớm nhất.
P/s: Bạn cũng có thể truy cập vào Blog của BKHOST để đọc thêm các bài viết chia sẻ kiến thức về lập trình, quản trị mạng, website, domain, hosting, vps, server, email,… Chúc bạn thành công.
Thuê Cloud VPS Cao Cấp tại BKHOST
Giảm giá cực sâu, chất lượng hàng đầu. Đăng ký ngay hôm nay: