Quản lý truy cập mạng dựa trên NAP

TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP Bảo vệ truy cập mạng – NAP là một công nghệ mới ra đời của Microsoft với mục đích kiểm soát quá trình kết nối vào hệ thống mạng nội bộ của các máy trạm. Khả năng áp dụng của công nghệ NAP vào hệ thống mạng doanh nghiệp là rất lớn. Chính vì thế, đồ án được thực hiện với mục đích tìm hiểu và triển khai công nghệ NAP để bảo vệ truy cập đối với hệ thống mạng doanh nghiệp với những nội dung chính như sau: Chương I: Vai trò của hệ thống mạng doanh nghiệp •Trình bày về sự phát triển Internet ở nước ta và các yêu cầu đặt ra với doanh nghiệp trong tình hình mới. •Xác định vai trò, tầm quan trọng và các mối đe dọa gây mất an toàn của hệ thống mạng doanh nghiệp. Từ đó cho thấy việc cần thiết phải quản lý truy cập hệ thống mạng •Phân tích, lựa chọn công nghệ Microsoft NAP để thực hiện quản lý truy cập. Chương II: Công nghệ Microsoft – NAP Tập trung vào việc tìm hiểu công nghệ NAP: Cấu trúc hệ thống, cấu trúc các thành phần trên NAP-Client và NAP-Server, nguyên lý hoạt động, các chức năng mà NAP hỗ trợ cho hệ thống mạng để quản lý truy cập (IPSEC, 802.1X, VPN .) và cách thức hoạt động của các chức năng đó. Chương III: Triển khai và phát triển NAP •Triển khai áp dụng công nghệ NAP vào hệ thống mạng doanh nghiệp: phân tích, đề xuất mô hình triển khai tổng quát •Triển khai 5 phương pháp thực thi NAP áp dụng cho việc quản lý truy cập mạng: Phương thức thực thi NAP-IPSEC, NAP-802.1X, NAP-DHCP, NAP-VPN, NAP- TS Gateway. •Phát triển hệ thống NAP: Tạo ra một thành phần trong cấu trúc hệ thống NAP, thay thế cho thành phần đã xây dựng sẵn đã tích hợp sẵn cùng Windows. •Nhận xét và đánh giá những điểm mạnh, điểm yếu của các mô hình triển khai NAP được áp dụng trong hệ thống mạng doanh nghiệp. Chương IV: Kết luận •Những kết quả đạt được và những hạn chế của đồ án •Hướng phát triển của đồ án trong tương lai. MỤC LỤC DANH MỤC HÌNH ẢNH .5 DANH MỤC THUẬT NGỮ VÀ CÁC TỪ VIẾT TẮT 7 LỜI NÓI ĐẦU .8 CHƯƠNG I. VAI TRÒ CỦA HỆ THỐNG MẠNG DOANH NGHIỆP 9 1.1.Tình hình phát triển Internet ở Việt Nam. .9 1.2.Hệ thống mạng doanh nghiệp – Vai trò và tầm quan trọng 10 1.3.Những mối đe dọa đối với hệ thống mạng doanh nghiệp. 11 1.4.Các công nghệ quản lý truy cập mạng hiện nay 12 CHƯƠNG II. CÔNG NGHỆ MICROSOFT – NAP 14 2.1.Giới thiệu công nghệ NAP 14 2.2. Hệ thống mạng triển khai NAP .17 2.2.1. Thành phần hệ thống mạng triển khai NAP .17 2.2.2. Sự hoạt động giữa các thành phần trong hệ thống NAP .19 2.2.3. Cấu trúc của NAP – Client và NAP – Server .22 2.3. Các phương thức thực thi NAP. 29 2.3.1. Phương thức thực thi IPSec 31 2.3.2. Phương thức thực thi 802.1X 38 2.3.3. Phương thức thực thi VPN 44 2.3.4. Phương thức thực thi DHCP .49 2.3.5. Phương thức thực thi Terminal Services Gateway .53 CHƯƠNG III. TRIỂN KHAI VÀ PHÁT TRIỂN NAP .58 3.1. Triển khai phương thức thực thi IPSec 59 3.1.1. Cài đặt và cấu hình Root CA trên máy chủ Domain Controller .61 3.1.2. Cấu hình máy chủ NPS .62 3.1.3. Kiểm tra sự hoạt động của NAP. 65 3.2. Triển khai phương thức thực thi 802.1X .67 3.2.1. Cấu hình 802.1X Switch .68 3.2.2. Cài đặt Enterprise Root CA trên máy chủ Domain Controller .69 3.2.3. Cài đặt và cấu hình máy chủ NPS 69 3.2.4. Cấu hình máy trạm sử dụng 802.1X .74 3.3.Triển khai phương thức thực thi DHCP, VPN và TS Gateway . 3.3.1.Phương thức thực thi DHCP .75 3.3.2.Phương thức thực thi VPN 76 3.3.3.Phương thức thực thi TS Gateway 78 3.4. Phát triển chương trình. .79 3.4.1. Môi trường phát triển: .79 3.4.2. Phát triển hệ thống 80 3.4.3. Thử nghiệm cặp SHA-SHV xây dựng 83 3.5.Nhận xét - Đánh giá .85 CHƯƠNG IV. KẾT LUẬN 86 4.1.Kết quả đạt được của đồ án .86 4.2.Những mặt hạn chế 86 4.3.Hướng phát triển trong tương lai .86 TÀI LIỆU THAM KHẢO 88

pdf88 trang | Chia sẻ: lvcdongnoi | Lượt xem: 3537 | Lượt tải: 4download
Bạn đang xem trước 20 trang tài liệu Quản lý truy cập mạng dựa trên NAP, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
mật dữ liệu. Để cung cấp kết nối giữa các máy tính, các gói thông tin được bao bọc bằng một header có chứa những thông tin định tuyến, cho phép dữ liệu có thể gửi từ máy truyền qua môi trường mạng chia sẻ và đến được máy nhận, như truyền trên các đường ống riêng được gọi là tunnel. Để bảo đảm tính riêng tư và bảo mật trên môi trường chia sẻ này, các gói tin được mã hoá và chỉ có thể giải mã với những khóa thích hợp, ngăn ngừa trường hợp "trộm" gói tin trên đường truyền. Hình 2.18: Nguyên lý VPN Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 45 Tunneling là kỹ thuật sử dụng một hệ thống mạng trung gian (thường là mạng Internet) để truyền dữ liệu từ mạng máy tính này đến một mạng máy tính khác nhưng vẫn duy trì được tính riêng tư và toàn vẹn dữ liệu. Dữ liệu truyền sau khi được chia nhỏ thành những frame hay packet theo các giao thức truyền thông sẽ được bọc thêm 1 lớp header chứa những thông tin định tuyến giúp các packet có thể truyền qua các hệ thống mạng trung gian theo những đường riêng (tunnel). Khi packet đượ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 client và server phải sử dụng chung một giao thức (tunnel protocol). Giao thức đó có thể là: - PPTP (Point-to-Point Tunneling Protocol): Giao thức PPTP sử dụng phương pháp xác thực người dùng thông qua giao thức PPP (Point-to- Point Protocol) và mã hóa dữ liệu bằng phương pháp MPPE (Microsoft Point-to-Point Encryption). PPTP có thể sử dụng cho Remote Access hay Site-to-Site VPN. Những thuận lợi khi áp dụng PPTP cho VPN là không yêu cầu certificate cho quá trình chứng thực và client có thể đặt phía sau NAT Router. - L2TP ( Layer 2 Tunneling Protocol): L2TP là sự kết hợp của PPTP và Layer 2 Forwading (L2F, giao thức được phát triển bởi Cisco System). So với PPTP thì L2TP có nhiều đặc tính mạnh và an toàn hơn. Trên hệ thống Microsoft, L2TP được kết hợp với IPSec Encapsulating Security Payload (ESP) cho quá trình mã hóa dữ liệu, gọi là L2TP/IPSec. Sự kết hợp này không chỉ cho phép chứng thực đối với người dùng mà còn cho phép chứng thực đối với các máy tính thông qua các chứng chỉ, nâng cao hơn độ an toàn của dữ liệu khi truyền, và quá trình tunnel có thể diễn ra trên nhiều hệ thống mạng khác nhau. Tuy nhiên trong môi trường L2TP/IPSec các VPN Client không thể đặt phía sau NAT Router. Các tình huống thông dụng của VPN: - Remote Access: Đáp ứng nhu cầu truy cập dữ liệu và ứng dụng cho người dùng ở xa, bên ngoài công ty thông qua Internet. Ví dụ khi người dùng muốn truy cập vào cơ sở dữ liệu hay các file server, gửi nhận email từ các mail server nội bộ của công ty… Mô hình Remote Access VPN như hình 2.19 dưới đây. - Site To Site: Áp dụng cho các tổ chức có nhiều văn phòng chi nhánh, giữa các văn phòng cần trao đổi dữ liệu với nhau. Ví dụ một công ty đa quốc gia có nhu cầu chia sẻ thông tin giữa các chi nhánh đặt tại Singapore và Việt Nam, có thể xây dựng một hệ thống VPN Site-to-Site kết nối hai Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 46 site Việt Nam và Singapore tạo một đường truyền riêng trên mạng Internet phục vụ quá trình truyền thông an toàn, hiệu quả. Mô hình VPN Site to Site như hình 2.20. Hình 2.19: Remote Access VPN Hình 2.20: Site-to-site VPN Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 47 Trong các mô hình trên, khi VPN Client muốn truy cập tài nguyên nội bộ trong hệ thống, nó sẽ phải khởi tạo kết nối VPN tới máy chủ VPN Server. Máy chủ này có nhiệm vụ lắng nghe các yêu cầu kết nối VPN, thực thi việc tạo kết nối, xác thực, và route các gói tin. Khác với mô hình Remote Access VPN thích hợp cho trường hợp truy cập tài nguyên một cách đơn lẻ, không thường xuyên, mô hình VPN Site to Site đáp ứng được các yêu cầu truy cập dữ liệu liên tục, nhiều kết nối trong một thời điểm, và đặc biệt là trong suốt đối với người dùng. Khi sử dụng phương thức thực thi VPN, chúng ta cần có máy chủ NAP health policy và VPN EC trên NAP Client. VPN EC có tên là Remote Access Quarantine enforcement client. Sau quá trình xác thực và kiểm tra tình trạng sức khỏe hệ thống, sẽ xảy ra 1 trong 3 trường hợp sau cho NAP Client: - Không được xác thực - Xác thực và không hạn chế truy cập - Xác thực nhưng bị hạn chế truy cập. Nguyên tắc hoạt động của phương thức thực thi VPN như sau: 1. VPN client khởi tạo kết nối tới VPN server. 2. VPN server gửi bản tin EAP–Request/Identity tới thành phần EAP client. Thành phần này được đặt tại VPN client. 3. Thành phần EAP client đáp trả với bản tin EAP-Response/Identity chứa user name của VPN client. 4. VPN server gửi bản tin EAP-Response/Identity nhận được tới máy chủ NAP health policy bằng thông điệp RADIUS Access-Request. Giữa máy chủ NAP health policy và EAP Client đã thiết lập một kênh kết nối logic, với thiết bị trung gian đứng giữa là VPN Server. 5. NAP health policy server gửi bản tin EAP-Request/Start Protected EAP (PEAP) tới EAP client và thỏa thuận thiết lập phiên TLS. 6. NAP health policy server yêu cầu VPN client xác thực sử dụng phương pháp PEAP. Ví dụ như PEAP-MS-CHAP v2. 7. VPN client xác thực với NAP health policy server sử dụng phương pháp xác thực PEAP đã thỏa thuận. Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 48 8. NAP health policy server gửi yêu cầu lấy bản tin SSoH tới VPN client qua bản tin PEAP–Type-Length-Value (TLV). 9. EAP client chuyển yêu cầu tới Remote Access Quarantine EC, sau đó yêu cầu NAP Agent thu thập thông tin SSoH. 10. Remote Access Quarantine EC chuyển thông tin SSoH thu nhận được tới EAP client, rồi EAP Client chuyển nó tới NAP health policy server qua bản tin PEAP-TLV. 11. NPS service tách ra các bản tin SoH và chuyển nó tới thành phần NAP Administration Server. 12. NAP Administration Server chuyển các bản tin SoH tới đúng các SHV tương ứng. 13. SHV phân tích bản tin SoH này và đưa ra bản tin SoHR gửi tới NAP Administration Server. 14. NAP Administration Server chuyển các bản tin SoHR tới NPS để tạo ra bản tin SSoHR. 15. NPS service gửi thông điệp PEAP-TLV có chứa bản tin SSoHR tới EAP client. 16. EAP client chuyển bản tin SSoHR tới Remote Access Quarantine EC, rồi chuyển tới NAP Agent. 17. NPS service gửi bản tin RADIUS Access-Accept tới VPN server để thông báo quyết định cho phép hay hạn chế truy cập Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 49 Trong trường hợp VPN client không thỏa mãn CSTCM và bị hạn chế truy cập, nó sẽ thực hiện quá trình remediation được hướng dẫn trong bản tin SSoHR để cập nhật sức khỏe hệ thống thỏa mãn CSTCM, và chuyển từ trạng thái hạn chế truy cập sang trạng thái truy cập không hạn chế. 2.3.4. Phương thức thực thi DHCP Trong một hệ thống mạng lớn, việc cấu hình các thông số TCP/IP như địa chỉ IP, Gateway, DNS Server …. cho các server, client và các thiết bị khác một cách thủ công chiếm rất nhiều thời gian, công sức của quản trị mạng. Và thậm chí trong nhiều trường hợp là không thể thực hiện được một cách thủ công như vậy. Khi sử dụng DHCP (Dynamic Host Configuration Protocol) Server, các thông số TCP/IP sẽ được cấu hình một cách tự động, chính xác. Các quản trị mạng sẽ dễ dàng quản lý, kiểm soát… tài nguyên địa chỉ IP của mình, giảm thiểu nhiều sai sót không đáng có, và giảm rất nhiều công sức nếu so với việc cấu hình thủ công các thông số đó. Hình 2.21: Nguyên lý hoạt động phương thức thực thi VPN Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 50 Khi máy trạm khởi động hoặc được kết nối vào hệ thống mạng có triển khai DHCP, nó sẽ được tự động cấu hình các thông số TCP/IP sau khi trao đổi một số các bản tin cần thiết. Các bản tin đó là DHCPDISCOVER, DHCPOFFER, DHCPREQUEST, DHCPACK. Các bản tin này được truyền qua giao thức UDP. Bản tin từ Client tới Server sử dụng UDP Source Port 68 và UDP Destination Port 67, còn bản tin gửi từ Server tới Client, sử dụng UDP Source Port là 68, Destination Port 67. Chúng ta có thể miêu tả quá trình trao đổi các bản tin trên qua hình sau: - Client cần được cấp địa chỉ, nó sẽ Broadcast các bản tin DHCPDiscover trong mạng của mình, để xác định ra máy chủ DHCP đang hoạt động. - Máy chủ DHCP nhận được bản tin DHCPDiscover, sẽ gửi lại bản tin DHCPOffer tới Client theo phương thức Unicast. Trong bản tin DHCPOffer gửi đi, sẽ có các tham số về TCP/IP được cấu hình trên DHCP Server, và một địa chỉ IP dành cho máy client đó. Và nếu trong mạng có nhiều DHCP Server, sẽ có khả năng nhiều bản tin DHCPOffer cùng được gửi đến 1 máy Client. - Máy Client sẽ đáp trả lại 1 trong số các bản tin DHCPOffer nhận được bằng bản tin DHCPRequest, yêu cầu được cấp địa chỉ IP được đưa ra trong bản tin DHCPOffer. - DHCP Server sẽ gửi bản tin DHCPAck để xác nhận lại địa chỉ IP mà Client xin được cấp. Trên thực tế, hệ thống mạng doanh nghiệp bao gồm rất nhiều lớp mạng khác nhau, mỗi lớp mạng này cần có các thông số TCP/IP tương ứng. Và cũng không thể triển khai tại tất cả các lớp mạng con này một máy chủ DHCP để cấp cấu hình TCP/IP tự động. Để đáp ứng yêu cầu thực tế đó, mô hình DHCP Relay được áp dụng. Mô hình DHCP Relay được miêu tả qua hình sau: Hình 2.22: Nguyên lý hoạt động hệ thống DHCP Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 51 Các máy Client ở các lớp mạng khác với máy chủ DHCP, khi khởi động hoặc kết nối vào mạng, broadcast bản tin DHCPDiscover, sẽ được DHCP Relay Agent chuyển tiếp bản tin đó tới máy chủ DHCP, và ngược lại. DHCP Relay Agent hiện nay đã được tích hợp vào phần lớn các thiết bị mạng như Router, Switch Layer 3, hoặc máy chủ Windows Server cài đặt dịch vụ RRAS (Routing and Remote Access Service). Trong trường hợp máy client xin cấp địa chỉ IP mà không nhận được phản hồi từ DHCP Server, nó sẽ sử dụng cơ chế APIPA (Automatic Private IP Addressing) để tự gán cho mình một địa chỉ IP. Địa chỉ này được lấy ngẫu nhiên trong dải từ 169.254.1.0 - 169.254.254.255. Và khi đó, máy client này sẽ chỉ giao tiếp được với máy client khác nếu máy đó cũng không nhận được cấu hình DHCP và sử dụng APIPA như nó. Nguyên tắc hoạt động của phương thức thực thi DHCP: 1. DHCP Client gửi bản tin DHCP Request yêu cầu được cấp DHCP và bản tin SSoH tới DHCP server. 2. DHCP server chuyển bản tin SSoH nhận được tới NAP health policy server thông qua thông điệp RADIUS Access-Request. 3. NPS service tách từ thông điệp RADIUS nhận được, lấy ra bản tin SSoH và chuyển nó tới NAP Administration Server. 4. NAP Administration Server tách các bản tin SoH từ bản tin SSoH nhận được, chuyển chúng tới đúng các SHV tương ứng. 5. SHV phân tích nội dung bản tin SoH nhận được, tạo ra bản tin SoHR và chuyển nó tới NAP Administration Server. 6. NAP Administration Server chuyển các bản tin SoHR tới NPS. NPS service so sánh các bản tin này với chính sách đã cấu hình, tạo ra bản tin SSoHR. Hình 2.23: Nguyên lý hoạt động hệ thống DHCP Relay Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 52 7. NPS service gửi thông điệp RADIUS Access-Accept có chứa bản tin SSoHR tới DHCP server. Nếu DHCP client không thỏa mãn CSTCM, thông điệp RADIUS Access-Accept sẽ có chứa thông tin về để hướng dẫn DHCP Client kết nối với remediation server. Và sau khi quá trình cấu hình DHCP hoàn thành, DHCP client sẽ bị đưa vào lớp mạng hạn chế truy cập. Ngược lại, nếu DHCP Client thỏa mãn CSTCM, trong thông điệp RADIUS Access-Accept sẽ không có các thông tin như trên, và sau khi nhận xong cấu hình DHCP, máy Client sẽ không bị hạn chế truy cập mạng. 8. Trong quá trình trao đổi các bản tin DHCP, máy chủ DHCP gửi bản tin SSoHR tới DHCP client. Hình 2.24: Nguyên lý hoạt động phương thức thực thi DHCP Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 53 9. DHCP client service sẽ chuyển bản tin SSoHR nhận được tới thành phần DHCP Quarantine EC, sau đó chuyển tới NAP Agent. NAP Agent tách ra các bản tin SoHR, chuyển tới đúng các SHA. Trong trường hợp DHCP Client không thỏa mãn CSTCM, quá trình Remediation xảy ra. Các thông số cần thiết cho quá trình này được các SHA lấy ra từ các bản tin SoHR nhận được. Sau quá trình cập nhật, DHCP Client sẽ tổng hợp lại thành bản tin SSoH mới, và gửi tới DHCP Server. Bắt đầu lại quá trình như trên. 2.3.5. Phương thức thực thi Terminal Services Gateway Windows Server 2008 Terminal Services Gateway (TS Gateway) cho phép những người dùng từ xa truy cập tới các loại tài nguyên trong hệ thống nội bộ từ bất kỳ một thiết bị kết nối Internet nào có thể chạy chương trình Remote Desktop Connection (RDC) client. Tài nguyên trong trường hợp này, có thể là các terminal servers, các chương trình chạy từ xa (RemoteApp™ programs), hoặc các máy tính được thiết lập Remote Desktop. TS Gateway đóng gói giao thức Remote Desktop Protocol (RDP) trong RPC, hoặc HTTP over Secure Sockets Layer (SSL) connection. Với việc thiết lập kết nối mã hóa giữa remote user trên Internet và hệ thống mạng nội bộ, TS Gateway làm tăng độ an toàn cho hệ thống. TS Gateway thường được triển khai như mô hình sau: Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 54 TS Gateway có nhiều ưu điểm như: - Không cần thiết lập cấu hình kết nối VPN, nhưng chúng ta vẫn có một đường truyền an toàn, được mã hóa, dành cho remote user kết nối tới các tài nguyên trong hệ thống nội bộ. Điều này giúp cho việc quản trị, cấu hình các thiết bị như Router, Firewall … của các nhà quản trị mạng đơn giản hơn rất nhiều. - Cung cấp tính năng cho phép các nhà quản trị mạng kiểm soát truy cập của remote user đối với từng loại tài nguyên riêng biệt. Nói cách khác, TS Gateway cung cấp kết nối point-to-point RDP, remote user sẽ không có khả năng truy cập tới tất cả các loại tài nguyên hệ thống như trước kia. - Cho phép tất cả các remote user kết nối tới mạng nội bộ được đặt sau các firewall và cấu hình network address translator (NAT). Với việc triển khai TS Gateway, chúng ta không cần thực hiện thêm bất kỳ cấu hình nào trên Firewall hay Router .... Hình 2.25: Mô hình triển khai TS Gateway Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 55 - Chúng ta có thể cấu hình TS Gateway servers và Terminal Services client sử dụng NAP. Điều này là không thể đối với các phương pháp truy cập từ xa trước kia. Nguyên lý hoạt động của phương thức thực thi TS Gateway: 1. TS Client gửi bản tin xác thực, yêu cầu tạo kết nối vào mạng nội bộ và bản tin SSoH tới TS Gateway server. Các bản tin này được gửi bằng giao thức HTTPS. 2. TS Gateway server nhận được bản tin SSoH và gửi tới NAP health policy server bằng qua thông điệp RADIUS Access-Request. 3. NPS service tách từ thông điệp RADIUS nhận được, lấy ra bản tin SSoH và chuyển nó tới NAP Administration Server. 4. NAP Administration Server tách các bản tin SoH từ bản tin SSoH nhận được, chuyển chúng tới đúng các SHV tương ứng. 5. SHV phân tích nội dung bản tin SoH nhận được, tạo ra bản tin SoHR và chuyển nó tới NAP Administration Server. 6. NAP Administration Server chuyển các bản tin SoHR tới NPS. NPS service so sánh các bản tin này với chính sách đã cấu hình, tạo ra bản tin SSoHR. Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 56 7. NPS service gửi thông điệp RADIUS Access-Accept có chứa bản tin SSoHR tới TS Gateway server. Nếu TS client không thỏa mãn CSTCM, thông điệp RADIUS Access-Accept sẽ có chứa thông tin về để hướng dẫn TS Client kết nối với remediation server. 8. TS Gateway server gửi bản tin cho phép kết nối (nếu xác thực thành công) và bản tin SSoHR tới TS client bằng giao thức HTTPS. TS client service sẽ chuyển bản tin SSoHR nhận được tới thành phần TS Quarantine EC, sau đó chuyển tới NAP Agent. NAP Agent tách ra các bản tin SoHR, chuyển tới đúng các SHA tương ứng. Nếu được yêu cầu thực hiện quá trình remediation, các SHA sẽ cập nhật và gửi lại bản tin SoH. Quá trình sẽ tiếp tục lại như trên. Hiểu được nguyên lý hoạt động của 5 phương pháp truy cập mạng trên, các nhà quản trị có thể thiết kế triển khai NAP cho phù hợp với hệ thống mạng của mình. Nếu hệ thống mạng doanh nghiệp thường xuyên có kết nối VPN hay Remote Hình 2.26: Nguyên lý hoạt động phương thức thực thi TS Gateway Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 57 Desktop, thì chúng ta có thể triển khai cả 2 phương thức thực thi NAP – VPN và NAP – TS Gateway. Chúng ta cũng có thể lựa chọn, có cần thiết triển khai NAP – DHCP hay không ? Có nên triển khai NAP – IPSEC ? Triển khai NAP – 802.1X cho hệ thống có dây hay không dây ? Kết hợp các phương pháp thực thi NAP như thế nào cho hiệu quả cao nhất ? Tất cả điều đó, chúng ta sẽ giải quyết trong phần tiếp theo: Triển khai và phát triển NAP. Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 58 CHƯƠNG III. TRIỂN KHAI VÀ PHÁT TRIỂN NAP Trong phần này, chúng ta sẽ tiến hành thử nghiệm cách triển khai và cấu hình các phương thức thực thi NAP phục vụ cho hệ thống mạng của một công ty cỡ trung bình với số lượng máy trạm từ 75 đến 100 máy. Nhìn chung, các phương pháp thực thi có cách cấu hình không khác nhau nhiều. Chúng ta sẽ đi sâu vào 2 phương pháp thực thi hay được sử dụng trong hệ thống mạng này, đó là phương thức thực thi IPSec và 802.1X.Với 3 phương thức thực thi còn lại (VPN, DHCP và TS Gateway), chúng ta sẽ không đi vào chi tiết mà chỉ phân tích các điểm khác biệt cần phải chú ý. Mô hình dưới đây thường được các nhà quản trị mạng sử dụng để triển khai NAP cho hệ thống mạng của mình: Để đảm bảo an toàn đối với những đe dọa từ Internet, hệ thống mạng này được triển khai tường lửa theo mô hình Back – to – back, với 2 tường lửa chịu trách Hình 3.1: Mô hình triển khai NAP cho hệ thống mạng doanh nghiệp Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 59 nhiệm phân tách các khu vực mạng. Các khu vực mạng được phân tách riêng biệt, gồm có: - Khu vực Perimeter network: Khu vực này được đặt phía sau tường lửa thứ nhất, thường được sử dụng là nơi đặt các máy chủ như DNS Server, Web Server … Khi triển khai phương thức thực thi NAP – VPN hay NAP – TS Gateway, các máy chủ VPN Server và TS Gateway Server cũng được đặt tại khu vực này. - Khu vực Server network: Khu vực này được sử dụng để đặt các máy chủ phục vụ hệ thống mạng của doanh nghiệp, tổ chức mình. Các máy chủ thường được đặt tại đây, ví dụ như máy chủ Domain Controller, máy chủ DHCP, máy chủ CA, File server … Khi triển khai NAP, các máy chủ NPS, HRA … được đặt tại khu vực này. - Khu vực Client network và Wireless network: Đây là 2 khu vực dành cho máy trạm. Một khu vực phục vụ cho việc đặt các máy trạm trong mạng nội bộ, một khu vực phục vụ cho việc kết nối các máy trạm không dây. Đối với hệ thống Firewall, khi triển khai các phương thức thực thi NAP các nhà quản trị cần phải chú ý một số điều như sau: - Tường lửa phía ngoài cùng, chỉ cần tạo Rule cho phép kết nối VPN (port 1723) hoặc kết nối thông qua TS Gateway (Port 443). - Tường lửa thứ 2 ở phía trong, cần tạo Rule cho phép các giao thức sau đây đi qua: HTTP/HTTPS (Port 80/443), RADIUS (UDP Port 1812), DHCP (UDP Port 67-68), RDP (Port 3389) Mô hình trên là mô hình được thiết kế tổng thể để triển khai cả 5 phương thức thực thi NAP cho hệ thống mạng. Khi đi chi tiết vào từng phương pháp, chúng ta sẽ sử dụng mô hình chi tiết hơn, giúp cho các nhà quản trị mạng có được cái nhìn sâu hơn về từng phương thức thực thi. 3.1. Triển khai phương thức thực thi IPSec Phương thức thực thi NAP IPSec được thực hiện để bảo vệ các kết nối quan trọng trong hệ thống nội bộ. Đó có thể giao tiếp giữa máy Client và File server chứa các thông tin nhạy cảm (như danh sách khách hàng, báo cáo tài chính …), đó có thể là kết nối giữa 2 máy client để trao đổi thông tin … Triển khai phương thức thực thi IPSec, chúng ta sẽ tránh được các nguy cơ mất an toàn ngay từ trong nội bộ hệ thống. Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 60 Các nhà quản trị mạng có thể triển khai phương thức này cho hệ thống mạng tổ chức mình theo mô hình như sau: Mục đích của phương thức thực thi này là đảm bảo các máy thỏa mãn chính sách trong hệ thống nội bộ khi trao đổi dữ liệu sẽ được mã hóa. Vì thế, khi triển khai, các nhà quản trị mạng không cần phải tác động tới các thành phần khác như Switch, Router hay Firewall, cũng như tới các thiết bị tại các lớp mạng khác không liên quan. Để triển khai được phương thức thực thi IPSec, trong hệ thống chúng ta cần phải có: Máy chủ Domain Controller, máy chủ Root CA, các máy chủ NPS, HRA, subordinate CA. Tùy theo yêu cầu của tổ chức mà chúng ta có thể gộp chung các máy chủ này hoặc tách ra riêng lẻ từng loại máy chủ với nhau. Và không phải tất cả các máy chủ này đều yêu cầu hệ điều hành Windows Server 2008. Chúng ta chỉ phải cài đặt Windows Server 2008 lên các máy chủ NPS, HRA mà thôi. Và tất nhiên, máy Client nào muốn được bảo vệ các kết nối của mình thì phải được cài đặt hệ điều hành Windows XP SP3 hoặc Windows Vista. Tiếp theo, chúng ta triển khai phương thức thực thi IPSec. Trong mô hình triển khai này, chúng ta có một máy chủ Domain Controller quản trị domain vietnam.vn (Máy chủ này được cài đặt Windows Server 2003 SP1), máy chủ này cũng giữ vai trò là Root CA trong miền. Các máy chủ NPS, HRA và Subordinate CA được cài đặt trên 1 máy Windows Server 2008. Máy chủ này là member của domain vietnam.vn. Về mặt vật lý, lớp mạng dành cho các máy trạm được tách riêng với lớp mạng dành cho các Server bởi hệ thống Firewall. Chính vì vậy, các nhà quản trị mạng cần cấu hình Firewall như chúng ta đã phân tích phía trên. Còn về mặt Logic Hình 3.2: Mô hình triển khai phương thức thực thi IPSec Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 61 trong hệ thống Active Directory, mô hình triển khai này chúng ta giả sử các máy trạm được đặt cùng trên 1 OU (Organization Unit), máy File Server nằm trên OU khác. 3.1.1. Cài đặt và cấu hình Root CA trên máy chủ Domain Controller Chúng ta tiến hành cài đặt Enterprise Root Certification Authority cho miền vietnam.vn. Sau khi cài đặt thành công, chúng ta sử dụng giao diện quản trị certtmpl.msc để cấu hình Certificate Template dùng cho việc cấp Health Certificate sau này. Trong mô hình triển khai này, chúng ta đặt tên cho Template là System Health Authentication và ID của Template là 1.3.6.1.4.1.311.47.1.1 như sau: Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 62 Sau khi tạo thành công và Public Template trong miền, chúng ta cần phải cấu hình GPO áp dụng trên toàn miền, cho phép RootCA cấp phát chứng chỉ tự động 3.1.2. Cấu hình máy chủ NPS. Máy chủ NPS được cài đặt hệ điều hành Windows Server 2008 Enterprise. Máy chủ này cũng sẽ nắm vai trò HRA và Suboridinate CA trong hệ thống. Khi triển khai máy chủ NPS trong mô hình này, chúng ta cần phải kiểm tra để chắc chắn rằng NPS Server đã được nhận 2 chứng chỉ. Đầu tiên là chứng chỉ System Health Authentication, Client Authentication dành cho các máy không cần phải áp dụng NAP IPSec, và chứng chỉ thứ hai: Client Authentication, Server Authentication dùng vào việc tạo kết nối mã hóa SSL giữa các Server. Hình 3.3: Cấu hình Root CA trong phương thức IPSec Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 63 Bước tiếp theo, chúng ta sử dụng Server Manager để cài đặt các Role NPS, HRA và CA. Sau khi cài đặt 3 role này, máy chủ NPS sẽ hoạt động với vai trò NAP Health Policy Server, NAP Enforcement Server và CA Subordinate server. Hình 3.4: Cài đặt NPS và SubOrdinate CA Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 64 Sau khi cài đặt xong, chúng ta tiến hành cấu hình Subordinate CA, HRA và NAP Health Policy server. Trong phần này, chúng ta cần chú ý cấu hình chỉ rõ cho HRA sử dụng Subordinate CA khi nhận được yêu cầu xin chứng chỉ như sau: Để cấu hình NAP Health Policy Server, chúng ta sử dụng giao diện quản trị nps.msc như sau: Để có thể sử dụng phương pháp thực thi IPSec, ngoài việc cấu hình các server như trên, chúng ta cần enable NAP Agent và NAP Enforcement Client Hình 3.5: Cấu hình Subordinate CA trên máy chủ NPS Hình 3.6: Cấu hình NPS Server trong phương thức IPSec Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 65 trên các máy client. Cách đơn giản nhất để làm việc này là sử dụng GPO như sau: 3.1.3. Kiểm tra sự hoạt động của NAP. Để kiểm tra xem NAP đã hoạt động hay chưa, chúng ta tiến hành kiểm tra như sau: - Kiểm tra các máy Client thỏa mãn chính sách truy cập mạng xem có nhận được Health Certificate hay không. Chúng ta phải chắc chắn nó đã được tự động cấp chứng chỉ như sau: Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 66 - Kiểm tra tính năng auto-remediation: Nếu NAP Client đang từ trạng thái thỏa mãn chính sách truy cập chuyển sang trạng thái không tương thích, NAP sẽ tự động nhận ra, cảnh báo và chuyển nó sang lớp mạng hạn chế truy cập. Để kiểm tra tính năng này, các bạn có thể thử tắt Firewall trên NAP Client. Khi đó, tính năng auto-remediation sẽ hoạt động, sau khi chuyển NAP Client sang lớp hạn chế truy cập, tính năng này sẽ cố gắng bật Firewall lại. Và nếu thành công, NAP Client sẽ quay trở lại lớp mạng không hạn chế truy cập. - Kiểm tra NAP Policy Enforcement: Nếu chúng ta cấu hình lại chính sách truy cập mạng, các máy Client sẽ phải cập nhật lại tình trạng sức khỏe hệ thống. Chúng ta cần kiểm tra chắc chắn rằng, nếu không thỏa mãn chính Hình 3.7: Kiểm tra sự hoạt động của NAP IPSec Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 67 sách, Health Certificate phải được xóa khỏi máy client. Và sau khi quá trình cập nhật thông tin, nếu client tương thích với chính sách mới, nó sẽ được cấp lại Health Certificate. Kiểm tra thành công sự hoạt động của NAP có nghĩa là chúng ta đã triển khai được phương thức thực thi IPSec, đảm bảo an toàn cho các kết nối tại hệ thống mạng nội bộ. Trên đây chúng ta mới chỉ thực hiện các bước tiến hành cấu hình NAP IPSec, đảm bảo nó hoạt động với các chính sách về IPSec đã được cấu hình trước đó. Tùy theo yêu cầu của từng hệ thống, mà các nhà quản trị mạng sẽ cấu hình các chính sách IPSec khác nhau, nhưng các bước thực hiện cấu hình phía trên là như nhau đối với tất cả các hệ thống. 3.2. Triển khai phương thức thực thi 802.1X Phương thức thực thi NAP 802.1X phân tách các máy trạm theo các lớp mạng vật lý. Có thể nói, đây là cách hay nhất để thực hiện giới hạn và quản lý truy cập trong hệ thống. Không có một phương pháp hay thủ thuật nào có thể sử dụng để cho một máy tính xâm nhập vào hệ thống nội bộ khi chúng ta triển khai phương pháp này. Tất cả các máy, tất cả người dùng đều sẽ được kiểm tra tình trạng sức khỏe hệ thống rồi mới được cấp quyền truy cập. Mô hình triển khai dưới đây có thể được áp dụng trong nhiều tổ chức, công ty khác nhau: Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 68 Trong mô hình triển khai phương thức thực thi 802.1X, các nhà quản trị có thể triển khai cả cho hệ thống mạng có dây và không dây. Và ở mô hình này, có một chú ý: Đó là máy chủ RADIUS cần phải được tích hợp với máy chủ NPS. Các bước tiếp theo dưới đây, chúng ta sẽ triển khai NAP – 802.1X cho truy cập mạng có dây. Đối với mạng không dây, các bước làm tương tự, không có khác biệt. Để triển khai phương thức này, các nhà quản trị mạng cần phải có Switch hỗ trợ phương thức xác thực 802.1X, máy chủ quản trị miền, máy chủ Root CA và máy chủ NPS Server. Trong đó, máy chủ NPS Server phải được cài đặt hệ điều hành Windows Server 2008. Và ngoài ra, các máy Client trong hệ thống cần phải được cài đặt hệ điều hành Windows XP SP3 hoặc Windows Vista. Chúng ta sẽ phải thực hiện các bước sau đây khi triển khai phương thức thực thi này: - Cấu hình 802.1X Switch - Cài đặt Enterprise Root CA - Cài đặt và cấu hình máy chủ NPS - Cấu hình máy trạm thực thi 802.1X 3.2.1. Cấu hình 802.1X Switch Chúng ta cần phải tạo ra ít nhất 3 VLAN trên Switch. Trong mô hình này, chúng ta tạo ra 3 VLAN như sau: - VLAN ID 1: Được đặt tên là Default_VLAN. VLAN này bao gồm tất cả các port không được đánh dấu, không thuộc 2 VLAN tiếp theo. - VLAN ID 2: Đặt tên là NONCOMPILIANT_VLAN. Những máy client được xác định không đủ sức khỏe hệ thống sẽ được đưa vào VLAN này để hạn chế truy cập. - VLAN ID 3: Có tên COMPLIANT_VLAN. VLAN này dành cho các máy thỏa mãn chính sách truy cập mạng. Chúng ta cấu hình Switch sử dụng máy chủ NPS làm máy chủ xác thực (authentication) và ủy quyền (authorization). Và các port nối với 2 máy chủ NPS và Domain Controller cần phải cấu hình không yêu cầu xác thực Hình 3.8: Mô hình triển khai phương thức thực thi 802.1X Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 69 802.1X. Ngoài ra chúng ta cần chú ý, nếu sử dụng Switch Layer 3, thì phải disable inter-VLAN routing giữa VLAN 2 và VLAN 3. 3.2.2. Cài đặt Enterprise Root CA trên máy chủ Domain Controller. Quá trình cài đặt Root CA không quá phức tạp. Chúng ta chỉ cần làm tương tự như phần trước. Tuy nhiên, phương thức thực thi 802.1X không yêu cầu phải có Health Certificate, cho nên chúng ta không phải tạo thêm Template mới như với phương thức thực thi IPSec. 3.2.3. Cài đặt và cấu hình máy chủ NPS Máy chủ NPS là thành viên của domain, được cài đặt hệ điều hành Windows Server 2008. Chúng ta sử dụng Server Manager, cài đặt Role Network Policy Server. Triển khai phương thức thực thi 802.1X, chúng ta chỉ cần cài đặt 1 role là Network Policy Server như sau: Sau khi quá trình cài đặt thành công, chúng ta cần phải Request tới Root CA để lấy chứng chỉ cho NPS. Chứng chỉ này sẽ được sử dụng cho quá trình xác thực PEAP giữa NPS Server và Domain Controller. Sử dụng giao diện MMC\Certificate, chúng ta có thể yêu cầu lấy được chứng chỉ từ CA như sau: Hình 3.9: Cài đặt NPS Server trong phương thức thực thi 802.1X Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 70 Sau khi request thành công chứng chỉ, chúng ta thực hiện bước tiếp theo, đó là cấu hình NPS Server. Sử dụng giao diện nps.msc để cấu hình phương thức thực thi 802.1X. Đối với phương thức này, NAP cung cấp cho chúng ta 2 lựa chọn. Thứ nhất là 802.1X – Wired cho hệ thống mạng LAN, và thứ hai là 802.1X – Wireless dành cho hệ thống mạng không dây. Cách thức cấu hình giữa 2 lựa chọn này là tương tự như sau. Trong mô hình thử nghiệm này, chúng ta sử dụng 802.1X – Wired như sau: Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 71 Tiếp theo, chúng ta phải cung cấp cho NPS server địa chỉ của RADIUS Client, ở đây chính là thiết bị 802.1X như sau: (Trong mô hình này, 802.1X Switch có địa chỉ là 172.16.1.254) Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 72 Sau khi cung cấp địa chỉ của 802.1X Switch, chúng ta phải cấu hình NPS Server với các thông tin về VLAN dành cho các máy thỏa mãn và không thỏa mãn chính sách truy cập mạng. Trong mô hình triển khai này, VLAN 3 dành cho các máy thỏa mãn chính sách, còn VLAN 2 dành cho cách máy không thỏa mãn. Các thông số cấu hình 2 VLAN này tương tự như nhau, chỉ khác phần VLAN ID (Tunnel-Ptv-Group-ID) mà thôi. Do đó chúng ta cần phải chú ý cung cấp đúng. Dưới đây là các thông số về VLAN dành cho các máy thỏa mãn chính sách truy cập. Hình 3.10: Cấu hình NPS Server trong phương thức thực thi 802.1X Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 73 Hình 3.11: Thông số cấu hình VLAN trong phương thức 802.1X Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 74 Bước cuối cùng trên máy chủ NPS, chúng ta cấu hình để khởi động các dịch vụ cần thiết trên máy client. Ngoài services NAP Agent và một Enforcement Client (trong trường hợp này là EAP Quarantine Enforcement Client) cần phải khởi động như các phương thức khác, phương thức thực thi 802.1X còn yêu cầu client khởi động một dịch vụ khác. Đó là dịch vụ Wire AutoConfig. Các dịch vụ này có thể được cấu hình khởi động local trên từng máy trạm, hoặc cấu hình thông qua GPO của miền. Cách đơn giản nhất là chúng ta cấu hình bằng GPO của miền. 3.2.4. Cấu hình máy trạm sử dụng 802.1X Chúng ta cần phải cấu hình cho máy trạm sử dụng phương thức xác thực 802.1X. Nếu như máy chủ Domain Controller được cài đặt hệ điều hành Windows Server 2008, chúng ta có thể làm bước này bằng cách dùng GPO tại phần Wired Network (IEEE 802.3) Policies. Tuy nhiên, nếu hệ thống mạng sử dụng máy Windows Server 2003 làm Domain Controller, chúng ta sẽ phải mở rộng Schema hệ thống trước khi cấu hình GPO. Trong mô hình Hình 3.12: Sử dụng GPO cấu hình các dịch vụ 802.1X Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 75 triển khai này, chúng ta sẽ cấu hình trực tiếp trên máy client. Chúng ta phải cấu hình client với các thông số như sau: Sau 4 bước cấu hình như trên, chúng ta sẽ triển khai thành công phương thức thực thi NAP 802.1X trong hệ thống. Phương thức thực thi 802.1X là một phương pháp hoàn hảo nhất để ép buộc tất cả các máy trạm phải thực hiện việc kiểm tra tình trạng sức khỏe hệ thống nếu muốn truy cập vào mạng. 3.3. Triển khai phương thức thực thi DHCP, VPN và TS Gateway 3.3.1. Phương thức thực thi DHCP Mô hình triển khai phương thức này khá đơn giản, không có gì phức tạp. DHCP và NPS Server có thể được cùng cài đặt trên 1 server. Khi triển khai, chúng ta cũng tiến hành tương tự như 2 phương thức trên: Cài đặt và cấu hình NPS Server, khởi động các dịch vụ và Enforcement Client cần tương ứng. Tuy nhiên, đối với phương thức này, chúng ta phải cấu hình thêm 1 bước tại DHCP Server như sau: Hình 3.13: Cấu hình máy trạm sử dụng 802.1X Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 76 Mỗi khi Client yêu cầu được cấp DHCP, nếu thỏa mãn chính sách truy cập mạng, nó sẽ được cấp đầy đủ các thông số TCP/IP. Ngược lại, nếu không đủ tiêu chuẩn, nó sẽ được DHCP Server sử dụng NAP Default Class để cấp các thông số hạn chế truy cập. 3.3.2. Phương thức thực thi VPN. Chúng ta triển khai mô hình thử nghiệm phương thức thực thi VPN như sau: Hình 3.14: Cấu hình phương thức thực thi DHCP Hình 3.15: Mô hình triển khai phương thức thực thi VPN Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 77 Quá trình cài đặt, triển khai Root CA, NPS Server đối với phương thức thực thi VPN không khác so với các phương thức khác mà chúng ta đã làm ở trên. Tuy nhiên, khi triển khai chúng ta cần phải chú ý 2 điểm khác biệt sau: - Khi cấu hình VPN bằng dịch vụ Routing and Remote Access, chúng ta cần phải cấu hình chỉ rõ RADIUS Server chính là NPS Server (địa chỉ 192.168.0.2) - Khi cấu hình NPS Server, chúng ta phải chỉ cho nó biết RADIUS Client là máy chủ nào. Trong mô hình này, RADIUS Client chính là VPN Server, có địa chỉ là 192.168.0.3 Hình 3.16: Cấu hình RADIUS Server trong phương thức VPN Hình 3.17: Cấu hình RADIUS Client trong phương thức VPN Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 78 3.3.3. Phương thức thực thi TS Gateway Chúng ta có thể thử nghiệm triển khai phương thức thực thi này theo mô hình như sau: Quá trình cài đặt và yêu cầu Root CA cấp chứng chỉ cho NPS server tương tự như chúng ta đã làm phía trên. Tuy nhiên, khi cấu hình TS Gateway Server chúng ta cần chú ý cấu hình mục TS CAP Store như sau: Hình 3.18:Mô hình triển khai phương thức thực thi TS Gateway Hình 3.19: Cấu hình TS Gateway server Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 79 Chúng ta cần phải đảm bảo mục Request clients to send a statement of health được đánh dấu chọn. Tiếp theo, chúng ta cần chỉ rõ sử dụng NPS Server ở đâu. Tùy theo mô hình triển khai, mà chúng ta chọn Local (NPS và TS Gateway được cài đặt trên cùng 1 server) hay Central. Trong mô hình thử nghiệm này, chúng ta chọn Local. Các bước triển khai còn lại, chúng ta cấu hình tương tự như đã làm với các phương thức thực thi khác. Tóm lại, với 5 phương thức thực thi đã triển khai, các nhà quản trị mạng có thể sử dụng kết hợp, hay đơn lẻ tùy theo mục đích của mình. Và nhìn chung, hệ thống NAP được xây dựng sẵn bởi Microsoft đã đáp ứng phần lớn yêu cầu của các nhà quản trị mạng hiện nay. Với những trường hợp đặc biệt, có yêu cầu khác, chúng ta cần phải phát triển riêng cho mình một hệ thống NAP. Phần tiếp theo chúng ta sẽ cùng đi vào việc phát triển hệ thống đó. 3.4. Phát triển chương trình. Trong thực tế, sẽ có rất nhiều tình huống xảy ra cũng như có rất nhiều các yêu cầu khác nhau đối với hệ thống NAP. Vì vậy, để đáp ứng điều đó, NAP cho phép chúng ta tự xây dựng một cặp SHA-SHV theo mục đích riêng. Mục đích đó có thể là kiểm tra phần mềm nào đang chạy trên máy, kiểm tra các khóa Registry … Nâng cao hơn nữa, các nhà phát triển có thể thiết kế cả NAP-Client để cài đặt cho các máy không được tích hợp sẵn NAP như Linux, Windows XP SP1/SP2 … Mục tiêu: Xây dựng một cặp SHA-SHV riêng, phù hợp với yêu cầu của hệ thống. Bên cạnh đó, việc phát triển thành phần hệ thống, sẽ giúp chúng ta hiểu sâu và chính xác hơn nữa về hệ thống NAP. Chức năng: SHA-SHV do chúng ta tự xây dựng, tuân theo cấu trúc quy định của hệ thống NAP, sẽ tiến hành thu thập thông tin và xử lý tình trạng sức khỏe hệ thống, từ đó cho phép hay hạn chế truy cập mạng. 3.4.1. Môi trường phát triển: Môi trường Mô tả Windows Server 2008 Server đóng vai trò quản lý các chính sách và dịch vụ mạng. Windows Vista Windows XP SP3 Client hỗ trợ chức năng NAP, nếu dùng Vista chúng ta nên cập nhật các Hotfix hoặc cài Service Pack 1 để NAP hoạt động tốt. SDK for Windows Server 2008 Thư viện để phát triển ứng dụng trên Windows, trong đó có API NAP. Visual Studio 2005 Công cụ phát triển. Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 80 3.4.2. Phát triển hệ thống a. Xây dựng System Health Agent (SHA) Khi thiết kế SHA, chúng ta cần phải quan tâm tới các module sau đây: - Module dùng để đăng ký SHA với NAP Client: DoSHARegistration - Module hủy SHA đã đăng ký: DoSHAUnRegistration - Module thực thi nhiệm vụ: DoSHAExecution Để có thể đăng ký SHA vào hệ thống, NAP sử dụng một Structure là NapComponentRegistrationInfo. Structure này có cấu trúc như sau: Trong Structure này, quan trọng nhất là thành phần NapComponentId. Đây chính là ID giúp hệ thống xác định được đúng cặp SHA-SHV tương ứng, cũng như phân biệt các SHA với nhau. Sau khi lấy đầy đủ thông tin theo cấu trúc trên, SHA sử dụng phương thức RegisterSystemHealthAgent để đăng ký nó với NAP Client. Phương thức này thuộc về Interface INapClientManagement. Ngược lại, nếu muốn hủy đăng ký, SHA sẽ sử dụng phương thức UnregisterSystemHealthAgent cũng nằm trong Interface trên. Trong quá trình hoạt động, SHA có thể trả lời khi nhận yêu cầu về SoH hoặc thông báo SoH có sự thay đổi trên máy trạm cho NAP Client. Điều này được thực hiện thông qua cơ chế callback interface, SHA sẽ có các hàm tương ứng được gọi tùy theo loại yêu cầu. NAP API đã tạo ra interface để sử dụng trong cơ chế này, đó chính là INapSystemHealthAgentCallback. Một số phương thức được sử dụng trong Interface này như sau: METHOD DESCRIPTION INapSystemHealthAgentCallback::CompareSoHRequests Sử dụng bởi SHA để so sánh các SoH INapSystemHealthAgentCallback::GetFixupInfo Gọi bởi NapAgent để quyết định trạng thái của SHA. typedef struct tagNapComponentRegistrationInfo { NapComponentId id; CountedString friendlyName; CountedString description; CountedString version; CountedString vendorName; CLSID infoClsid; CLSID configClsid; FILETIME registrationDate; UINT32 componentType; } NapComponentRegistrationInfo; Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 81 INapSystemHealthAgentCallback::GetSoHRequest Gọi bởi NapAgent để truy vấn yêu cầu lấy bản tin SoH. INapSystemHealthAgentCallback::NotifyOrphanedSoHRequest Được gọi nếu truy vấn lấy bản tin SoH tới SHA, nhưng SHA không trả lời INapSystemHealthAgentCallback::NotifySystemIsolationStateChange Gọi bởi NapAgent để cho biết tình trạng cách ly hệ thống thay đổi. INapSystemHealthAgentCallback::ProcessSoHRespond Được gọi khi NapAgent nhận được bản tin SoH response. Để sử dụng Callback Interface này, SHA phải thực hiện các công việc sau. - Khởi tạo biến trỏ tới interface quản lý SHA: - Khởi tạo Callback Interface - Đăng ký Callback Interface với SHA Để lấy được thông tin về trạng thái sức khỏe hệ thống, NAP Agent sử dụng phương thức GetSoHRequest. Phương thức này được định nghĩa trong nhiều Interface khác nhau, nhưng chúng ta có thể thấy được phương thức này hoạt động chủ yếu dựa vào cấu trúc SoHRequest. Cấu trúc SoHRequest, SoHRespond, và SoH được định nghĩa như sau: CComPtr binding = NULL; hr = binding.CoCreateInstance(CLSID_NapSystemHealthAgentBinding,NULL, CLSCTX_INPROC_SERVER); IShaCallbackPtr callback = NULL; callback = ShaCallback::CreateInstance(binding); hr = binding->Initialize(QuarSampleSystemHealthId,callback); typedef struct tagSoH { UINT16 count; SoHAttribute *attributes; }SoH, SoHRequest, SoHResponse; Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 82 Trong cấu trúc này, thành phần SoHAttribute cũng là một cấu trúc, được định nghĩa từ cấu trúc kiểu Union SoHAttributeValue. Cấu trúc SoHAttributeValue chứa thông tin về danh sách các ứng dụng được định nghĩa để cho máy trạm thỏa mãn chính sách, hoặc thông tin về lỗi nếu xảy ra. SHA sẽ sử dụng 2 Interface là INapSoHConstructor và InapSoHProcessor để thu thập thông tin về tình trạng sức khỏe hệ thống. Các Interface cũng như các cấu trúc đã nói ở trên, chúng ta có thể tìm hiểu chi tiết hơn tại hệ thống Microsoft Developer Network (MSDN). b. Xây dựng System Health Validator (SHV) SHV, được phát triển trong môi trường COM DLL, chính là nơi giúp người quản trị mạng thiết lập các chính sách về an toàn truy cập tài nguyên mạng. Khi xây dựng SHV, ngoài 2 module đăng ký và hủy đăng ký SHV, chúng ta cần quan tâm tới các Module chính sau: - Module kiểm tra sự hợp lệ của trạng thái máy trạm với chính sách truy cập mạng: Module Validate. - Module xử lý bản tin SoH gửi tới: Module CheckRequestSoHHealth Mỗi cặp SHA-SHV có mã trùng nhau, điều này giúp từng cặp SHA và SHV có thể liên lạc với nhau. Khi đăng ký SHV với máy chủ NPS, chúng ta cũng cần phải chỉ rõ mã ID cho nó. HRESULT CSdkShvModule::RegisterSdkShv() throw() { // 1. Khai báo và khởi tạo biến trỏ tới interface của NPS CComPtr pSHVMgmt = NULL; hr = pSHVMgmt.CoCreateInstance(CLSID_NapServerManagement, ...); // 2. Khai báo và khởi tạo thông tin về SHV NapComponentRegistrationInfo shvInfo; hr = FillShvComponentRegistrationInfo(&shvInfo); // 3. Đăng ký SHV với NPS, CSampleShv chứa các hàm xử lý yêu cầu hr = pSHVMgmt->RegisterSystemHealthValidator(&shvInfo, (CLSID*)&__uuidof(CSampleShv)); } Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 83 Để thực hiện việc kiểm tra tình trạng sức khỏe hệ thống có phù hợp với chính sách truy cập mạng hay không, SHV sử dụng 2 Interface sau đây: INapSystemHealthValidationRequest và INapServerCallback. Các phương thức trong 2 Interface này, chúng ta có thể tìm thấy chi tiết trên website MSDN. Để thực hiện việc xử lý bản tin SoH gửi tới, SHV sử dụng Interface INapSoHProcessor như sau: Ngoài ra, chúng ta cần chú ý thêm là SHV được cài đặt trên server và có nhiệm vụ kiểm tra những yêu cầu về khả năng tự bảo vệ từ nhiều máy trạm cùng lúc. Do đó SHV trong thực tế sẽ phải nhận và xử lý nhiều yêu cầu kiểm tra chính sách cùng lúc. Bên cạnh đó cũng có rất nhiều trường hợp việc kiểm tra chính sách đòi hỏi SHV phải liên lạc với server khác, và mất nhiều thời gian cho từng yêu cầu kiểm tra chính sách. Để giải quyết vấn đề trên SHV đã tạo ra từng thread xử lý cho từng yêu cầu kiểm tra chính sách. STDMETHODIMP CSampleShv::Validate( INapSystemHealthValidationRequest* pShvRequest, UINT32 hintTimeOutInMsec, INapServerCallback* pCallback) throw() { // 1. Chuẩn bị thông tin cho một yêu cầu kiểm tra chính sách asyncDataItems* requestData = NULL; requestData->pthis = this; requestData->piShvRequest = pShvRequest; requestData->piCallback = pCallback; // 2. Tạo thread mới để xử lý yêu cầu kiểm tra chính sách hr = QShvCreateThread( requestData ); } 3.4.3. Thử nghiệm cặp SHA-SHV xây dựng STDMETHODIMP CSampleShv::Validate( /*[in]*/ INapSystemHealthValidationRequest* pShvRequest, /*[in]*/ UINT32 hintTimeOutInMsec, /*[in]*/ INapServerCallback* pCallback) HRESULT CSampleShv::CheckRequestSoHHealth( SystemHealthEntityId systemHealthId, INapSoHProcessor *pSohRequest, HRESULT &complianceResult ) Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 84 Trên máy trạm Windows Vista, việc triển khai SHA như sau: - Dùng lệnh SdkSha.exe /register để đăng ký SHA với NAP Client. - Để kiểm tra việc đăng ký thành công, dùng lệnh: netsh nap client show state Chúng ta sẽ thấy có SHA mới tên là SHA SDK Sample đã xuất hiện trong hệ thống như sau: Trên máy chủ NPS, chúng ta tiến hành đăng ký SHV với hệ thống như sau: - Dùng lệnh regsvr32.exe SdkShv.dll để đăng ký SHV với NPS mang tên SDK SHV Sample. Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 85 Sau khi đăng ký SHA và SHV thành công, chúng ta tiến hành cấu hình các phương thức thực thi như đã làm tại các bước trên. Khi đó, SHA và SHV sẽ là một thành phần trong hệ thống thực thi NAP đang hoạt động. 3.5. Nhận xét - Đánh giá NAP được xem là giải pháp tăng cường bảo mật mạng chứ không phải là giải pháp bảo mật mạng. Lý do là nó chỉ đảm bảo các máy toàn quyền truy cập tài nguyên mạng là những máy tuân thủ chính sách truy cập mạng, mà không cung cấp cơ chế ngăn chặn tấn công từ những máy đã tuân thủ chính sách đó. Bên cạnh đó, khi triển khai các phương thức thực thi NAP, chúng ta nhận thấy thông tin trao đổi giữa SHA và SHV chưa được bảo vệ. Điều này có thể dẫn đến khi có sự thay đổi trái phép yêu cầu Auto-Remediation cho SoH khi nó chuyển từ SHV tới SHA, nó có thể yêu cầu SHA thực hiện những việc gây hại cho máy trạm. Để giải quyết vấn đề này, SHA và SHV phải tự thực hiện cơ chế bảo vệ thông tin trao đổi hoặc không mở chức năng Auto-Remediation trong môi trường không có bảo vệ thông tin đường truyền. Các dịch vụ có sẵn hỗ trợ môi trường bảo vệ thông tin đường truyền là: IPSec, 802.1x, VPN. Vấn đề quan tâm tiếp theo là việc có thể tạo SHA trái phép, nhằm mục đích thay thế SHA có sẵn nào đó trong hệ thống thực hiện trả lời SoH cho NPS. Điều này có thể làm cho NPS kiểm tra những SoH sai lệch và xem như máy trạm đã tuân thủ chính sách truy cập mạng. Để giải quyết vấn đề này, chúng ta không nên cấp cho người sử dụng có toàn quyền trên máy trạm để đăng ký và thay đổi SHA. Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 86 CHƯƠNG IV. KẾT LUẬN 4.1. Kết quả đạt được của đồ án • Trong quá trình thực hiện đồ án, những yêu cầu về đảm bảo an toàn cho truy cập mạng được tìm hiểu cặn kẽ. • Nguyên lý hoạt động, cấu trúc, thành phần của hệ thống NAP được tìm hiểu và nắm vững. • Mô hình triển khai cài đặt thành công, đáp ứng được yêu cầu rất thực tế của hệ thống mạng doanh nghiệp. • Tìm hiểu hướng phát triển hệ thống NAP, tùy biến hệ thống theo từng yêu cầu khác nhau của nhà quản trị 4.2. Những mặt hạn chế • Đồ án chưa phát triển được hoàn chỉnh một cặp thành phần mới, có nhiều tính năng hơn thành phần có sẵn trong hệ thống NAP. • Hệ thống NAP khó triển khai nếu trong mạng có những máy cài đặt phiên bản Windows cũ (như Windows XP SP2, Windows 2000…) hoặc Linux 4.3. Hướng phát triển trong tương lai • Xây dựng thành công thành phần SHA-SHV đáp ứng đầy đủ tất cả các yêu cầu khác nhau của nhà quản trị • Xây dựng hệ thống NAP Client dành cho các phiên bản Windows cũ, cho các máy trạm cài đặt hệ điều hành nền Linux … không được NAP hỗ trợ. Đảm bảo tính tương thích tối đa cho tất cả các hệ thống mạng. Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 87 Quản lý truy cập mạng dựa trên NAP Sinh viên thực hiện: Trương Vĩnh Điển Trang 88 TÀI LIỆU THAM KHẢO 1. Windows Server 2008 – Networking and Network Access Protection (NAP), Joseph Davies, Tony Northrup, Microsoft Press, 2008 2. Microsoft Solutions for Security and Compliance, Microsoft Press, 2006 3. Windows Server 2008 - Administration, Steve Seguis, McGrow Hill, 2008 4. Windows Server 2008 – Configuring Network Infrastructure, Brien Posey, Syngress, 2008 5. Microsoft Windows Software Development Kit (SDK), 2008. 6. Website: 7. Website: 8. Website: 9. Website:

Các file đính kèm theo tài liệu này:

  • pdfQuản lý truy cập mạng dựa trên NAP.pdf
Luận văn liên quan