View Single Post
  #7  
Old 03-06-2011, 19:08
NTMP_38313 NTMP_38313 vẫn chưa có mặt trong diễn đàn
Thành Viên Mới
 
Tham gia ngày: Apr 2011
Bài gởi: 27
Thanks: 7
Thanked 2 Times in 2 Posts
4. Khái niệm IP Security

Thuật ngữ IPSec là một từ viết tắt của thuật Internet Protocol Security. Nó có quan hệ tới một số bộ giao thức (AH, ESP, FIP-140-1, và một số chuẩn khác) được phát triển bởi Internet Engineering Task Force (IETF). Mục đích chính của việc phát triển IPSec là cung cấp một cơ cấu bảo mật ở tầng 3 (Network layer) của mô hình OSI, như dưới

[img] http://farm3.static.flickr.com/2784/...d88a838d7f.jpg [/img]

- Mọi giao tiếp trong một mạng trên cơ sở IP đều dựa trên các giao thức IP. Do đó, khi một cơ chế bảo mật cao được tích hợp với giao thức IP, toàn bộ mạng được bảo mật bởi vì các giao tiếp đều đi qua tầng 3. (Đó là lý do tai sao IPSec được phát triển ở giao thức tầng 3 thay vì tầng 2).
- Ngoài ra,với IPSec tất cả các ứng dụng đang chạy ở tầng ứng dụng của mô hình OSI đều độc lập trên tầng 3 khi định tuyến dữ liệu từ nguồn đến đích. Bởi vì IPSec được tích hợp chặt chẽ với IP, nên những ứng dụng có thể dùng các dịch vụ kế thừa tính năng bảo mật mà không cần phải có sự thay đổi lớn lao nào. Cũng giống IP, IPSec trong suốt với người dùng cuối, là người mà không cần quan tâm đến cơ chế bảo mật mở rộng liên tục đằng sau một chuổi các hoạt động.

4.1 Các thao tác bảo mật.

Các thao tác bảo mật trong hệ thống Windows Server 2003 gồm:

Block transmissions: Ngăn chặn những gói dữ liệu được truyền.Ví dụ, bạn muốn IPSec ngăn chặn dữ liệu truyền từ máy A đến máy B thì giao thức IPSec trên máy B loại bỏ mọi dữ liệu truyền đến từ máy A.

Encrypt transmissions: Mã hóa những gói dữ liệu được truyền. Ví dụ, bạn muốn dữ liệu được truyền từ máy A đến máy B.Nhưng bạn sợ rằng có người sẽ nghe trộm (sniffer) trên đường truyền kết nối giữa hai máy A và B, vì vậy bạn cần cấu hình cho IPSec sử dụng giao thức ESP (Encapsulating Security Payload) để mã hóa dữ liệu cần truyền trước khi đưa lên mạng. Lúc này, những người xem trộm sẽ thấy những dòng byte ngẫu nhiên và không đọc/hiểu dữ liệu thật. Do IPSec hoạt động ở lớp Network nên hầu như việc mã hóa được trong suốt đối với người dùng. Người dùng có thể gửi mail, truyền file hay telnet như bình thường.

Sign transmissions: Ký tên vào các gói dữ liệu truyền nhằm tránh những kẻ tấn công trên mạng giả dạng những gói dữ liệu được truyền từ những máy mà bạn đã thiết lập quan hệ tin cậy (kiểu tấn công còn gọi là main-in-the-middle). IPSec cho phép bạn chống lại điều này bằng một giao thức AH _ Authentication Header. Giao thức này là phương pháp ký tên số hóa (digitally signing) vào các gói dữ liệu trước khi truyền, nó chỉ ngăn ngừa được giả mạo và sai lệch thông tin chứ không ngăn ngừa được sự nghe trộm thông tin. Nguyên lý hoạt động của phương pháp này là hệ thống sẽ thêm một bit vào cuối mỗi gói dữ liệu truyền qua mạng, từ đó chúng ta có thể kiểm tra xem dữ liệu có bị thay đổi khi truyền hay không.

Permit transmissions: Cho phép dữ liệu được truyền qua, chúng dùng để tạo ra các quy tắc (rule) hạn chế một số điều này và không hạn chế một số điều khác. Ví dụ, một quy tắc dạng này “Hãy ngăn chặn tất cả những dữ liệu truyền tới, chỉ trừ dữ liệu truyền trên các cổng 80 và 443”.
Chú ý: Đối với hai thao tác bảo mật theo phương pháp ký tên (sign) và mã hóa (encrypt) thì hệ thống còn yêu cầu bạn chỉ ra IPSec dùng phương pháp chứng thực nào (có nghĩa là cho IPSec biết cách thức mà máy nhận (receiver) và máy gửi (transmitter) sẽ trao đổi mật khẩu; sau đó, chúng sẽ dùng mật khẩu này để ký tên hoặc mã hóa các gói dữ liệu truyền đi trên mạng).
Microsoft hỗ trợ ba phương pháp chứng thực như: Kerberos, chứng chỉ (Certificate) hoặc một khóa dựa trên sự thỏa thuận (agree-upon key).
+ Phương pháp Kerberos : chỉ áp dụng được trong các máy trong cùng một miền (domain) Active Directory hoặc trong những miền Active Directory có ủy quyền cho nhau.
+ Phương pháp dùng các chứng chỉ cho phép bạn sử dụng các chứng chỉ PKI (Public Key Infrastructure) để nhận diện một máy.Phương pháp dùng khóa dùng chung (chia sẻ) trước (preshared key) thì cho phép bạn dùng một chuỗi ký tự thông thường (plain text) làm khóa (key).

4.2 Các bộ lọc IP Sec.

Để IPSec hoạt động linh hoạt hơn, Microsoft đưa thêm khái niệm bộ lọc IPSec (IPSec filter).Bộ lọc có tác dụng thống kê các điều kiện để quy tắc hoạt động.Đồng thời chúng cũng giới hạn tầm tác dụng của các thao tác bảo mật trên một phạm vi máy tính nào đó hay một số dịch vụ nào đó.Bộ lọc IPSec chủ yếu dựa trên các yếu tố sau:
Địa chỉ IP, subnet hoặc tên DNS của máy nguồn.
Địa chỉ IP, subnet hoặc tên DNS của máy đích.
Theo giao thức (TCP, UDP, ICMP) và số hiệu cổng (port).


5. Khái niệm về Radius Server

RADIUS : là một giao thức dùng để chứng thực người dùng trong những trường hợp truy cập từ xa (remote access).



Thông tin dùng để chứng thực được lưu tập trung ở RADIUS server. Khi cần chứng thực người dùng và nếu được cấu hình sử dụng RADIUS, NAS (lúc này là RADIUS client) sẽ chuyển thông tin của người dùng đến RADIUS server để nhờ kiểm tra. Kết quả sẽ được RADIUS server trả lại cho NAS. Thông tin được trao đổi giữa RADIUS server và RADIUS client đều được mã hóa.
Có thể hiểu RADIUS server cung cấp cho RADIUS client khả năng truy xuất vào hệ
thống tài khoản người dùng trên Active directory service.
Trên môi trường domain của Windows 2003 Server, máy tính cài dịch vụ RADIUS
server sẽ là máy tính nằm trong domain.

- Internet Authentication Service : là máy chủ Radius hỗ trợ thiết lập nhiều tên miền. Nó hoạt động liên kết với Routing và Remote Access (RRAS) được sử dụng cho các doanh nghiệp nhỏ. Nó cung cấp tập trung
+ Chứng thực ủy quyền Kế toán (Authentication Authorization Accounting) (AAA) và lưu trữ thông tin trong Active Directory. Active Directory cho phép các quản trị viên để tạo và thiết lập các chính sách,chứng thực cho hàng ngàn máy tính và người sử dụng. Nó có thể chuyển tiếp thẩm định và thông báo đến RADIUS server khác.
+ Hỗ trợ nhiều giao thức như PPP, PAP, CHAP, MS-CHAP, MS-CHAP v2.
+ IAS khi được triển khai trên một máy nằm trong Active Directory domain, có thể chứng thực người dùng của AD domain đó. Tính năng này chỉ có trên AD domain hoạt động ở chế độ Windows 2003 domain functional level.

5.1 Cơ chế hoạt động (operation)

Khi một client được định cầu hình để sử dụng Radius, thì bất cứ user nào của client đều giới thiệu những thông tin xác nhân quyền (Authentication information) với client. Đó có thể là dấu nhắc lệnh đăng ký vào mạng (logon prompt) yêu cầu user nhập tên và mật khẩu vào. User có thể lựa chọn việc sử dụng protocol thích hợp để thực hiện giới thiệu những thông tin này bằng các gói dữ liệu (packets), chẳng hạn như PPP (Point to Point Protocol)

Mỗi lần client nhận được thông tin như vậy, nó có thể chọn dùng Radius để xác nhận quyền. Client sẽ tạo ra một “ yêu cầu truy nhập” (Accest-Request) chứa các thuộc tính như tên, mật khẩu của user, số hiệu (ID) mà user sẽ truy cập vào. Mật khẩu khi nhập vào sẽ được ẩn (phương pháp dựa trên giải thuật RSA Message Digest Algorithm MD5).

“Yêu cầu truy nhập” (Accest-Request) sẽ được gửi cho Radius thông qua mạng. Nếu không có trả lời trong một khoảng thời gian quy ước thì yêu cầu sẽ được gửi lại. Client cũng có thể chuyển (forward) yêu cầu cho các server dự phóng trong trường hợp server chính bị tắt hoặc hư hỏng hoặc hoạt động theo kiểu round-robin.

Mỗi khi Radius server nhận được yêu cầu, nó sẽ xác nhận client gởi. Những yêu cầu từ các cliemt nào không chia sẽ thọng tin bảo mật (share secret) với Radius sẽ không được xác nhận và trả lời (sliently discarded). Nếu client là hợp lệ, Radius server sẽ tiềm kiếm trong cơ sở dữ liệu (CSDL) user có cùng tên trong yêu cầu. Chỉ mục của user (user entry) trong CSDL sẽ chứa danh sách các đòi hỏi cần thiét cho phép user truy cập vào mạng. Radius luôn luôn xác nhận mật khẩu của user và có thể cả số hiệu của client và port mà user được phép truy cập .

Radius server có thể yêu cầu các server khác xác nhận. Lúc đó Radius đóng vai trò của một client

Nếu bất cử điều kiện nào không được thỏa, Radis server sẽ gởi một trả lời “từ chối truy cập” (Access-Reject) biểu thị rằng yêu cầu của user là không hợp lệ. Server có thể kèm theo một thông báo dạng văn bản ( text message) trong Access-Reject để client có thể hiện thì cho user.

Nếu tất cả các điều kiện đều được thỏa và Radius server muốn đưa ra một yêu cầu đòi hỏi user phải trả lời, thì Radius sẽ gởi một trả lời “đòi hỏi truy cập” (Access-Challenge), nó có thể dưới dạng một thông báo dạng văn bản đươc hiển thì cho user. Client sẽ nhận Access-Challenge, và nếu nó được trang bị challenge/response, nó sẽ hiện thị thông báo nhắc user trả lời yêu cầu. Sau đó client sẽ gửi lại (re-submit) “yêu cầu truy cập” gốc (original Access-request) với một số hiệu yêu cầu ( request ID) mới, nhưng thuộc tình tên - mật khẩu được lấy từ thông yin vừa mới nhập vào, và kèm luôn cả thuộc tính trạng thái từ Access-Challenge. Radius server có thể trả lời “yêu cầu truy cập mới bằng “chấp nhận truy cập” ( Access-Request) hay “từ chối truy cập“ (Accest-Reject) hoặc một “đòi hỏi truy cập” (Access-Challenge) khác.

Nếu cuối cùng tát cả các điều kiện được thỏa, thì danh sách các giá trị cầu hình cho user được đặt vào trả lời “chấp nhận truy cập” (Accest-Accept). Các giá tri này bao gồm kiểu của dịch vụ (ví dụ:SLIP, PPP, Login user) và các giá trị cần thiết để cấp phát dịch vụ này. Ví dụ như đối với SLIP hay PPP, các giá trị này có thể là địa chỉ IP, địa chỉ mạng con (subnet mask), MTU, phương pháp nén và số hiệu lọc gói (filtering packet ID). Ở chế độ ký tự (character mde), các giá trị này có thể là giao thức (protocol) và tên máy chủ (host).

5.2 Dạng của gói (packet format)

Một gói Radius được bao bọc trong trường dữ liệu của gói UDP (UDP data field), và trường địa chỉ đích (UDP Destination Port field) có số hiệu cổng là 1645. Khi gói trả lời được tạo ra, số hiệu cổng của địa chỉ nguồn và đích được bảo lưu.

code : 1 byte




Xác định kiểu gói của Radius, gói có mã không hợp lệ sẽ không được xác nhận và trả lời (sliently discarded)

Code 1: Accest-Request
Code 2: Accest-Accept
Code 3: Accest-Reject
Code 4: Accouting-Request
Code 5: Accouting -Response

Code 11: Accest-Challenge
Code 12: Status-Server (experimental - thực nghiệm) được sử dụng cho tương lai
Code 13: Status-Client (experimental - thực nghiệm) được sử dụng cho tương lai

5.3 Kiểu của gói (packet types)

Kiểu của gói được xác định bởi trường mã (code field) chiếm byte đầu tiên của Radius.

5.3.1 Gói “yêu cầu truy cập” (Accest-Requset)
Gói Accest-Request được gởi tới Radius server. Nó chuyên chở thông tin dùng để xác định xem user có được phép truy câp vào NAS và các dịch vụ được chỉ định hay không. Trường mã của gói phải có giá trị 1.
Gói Access-Request phải chứa thuộc tính User-Name, User-Password hoac CHAP-Password, và có thể chứa các thuộc tính NAS-IP-Address, NASIdentifier,
NAS-Port, NAS-Port-Type.

5.3.2 Gói “chấp nhận truy cập” (Accest-Accept)

Gói Access-Accept được gửi trả bởi Radius server khi tất cả các giá trị của gói Accest-Request. Nó cung cấp thông tin cấu hình cần thiết để cấp phát các dịch vụ cho user. Trường mã của gói phải có giá trì 2. Gói Access-Accept nhận được ở NAS phải có trường danh hiệu trùng khớp với gói Accest-Request tương ứng đã gởi trước đó và phải có trường xác nhận (Response Authenticator) phù hợp với thông tin bí mật dùng chung (share secret).

5.3.3 Gói “từ chối truy cập” (Accest-Reject)

Gói Accest-Reject được gửi trả từ Radius server khi có giá trị thuộc tính không được thỏa. Trường mã của gói phải có trị 3. Gói có thể chứa hoặc nhiều thuộc tính Reply-Message với một thông báo dạng văn bản mà NAS sẽ hiển thị nó với user. Trường danh hiệu của gói Access-Reject chính là bản sao của gói Access-Request tương ứng.

5.3.4 Gói “ đòi hỏi truy cập” (Access-Challenge)

Access-Challenge được Radius server gửi đền user đòi hỏi thêm thông tin cần thiết mà user phải trả lời. Trường mã của gói phải có giá trị 11. Gói có thể chứa 1 hoặc nhiều thuộc tính Reply-Message và có thể có 1 thuộc tính State. Các thuộc tính khác không được xuất hiện trong gói Access-Challenge. Trường danh hiệu của gói Access-Challenge phải trùng khớp với gói Access-Request tương ứng đã gởi trước đó và phải có trường xác nhận (Response uthenticator) phủ hợp với thông tin bí mật dùng chung (share secret). Nếu NAS không được trang bị challenge/response thì gói Access-Challenge nhận được sẽ coi như là gói Access-Reject. Nếu NAS được trang bị chức năng challenge / response và gói Access-Challenge nhận được là hợp lệ thì NAS sẽ hiển thị thông báo và yêu cầu user trả lời thông tin mà Radius server yêu cầu. Sau đó NAS sẽ gởi gói Access-Request gốc nhưng với danh hiệu yêu cầu (request ID) và xác nhận yêu cầu (request authenticator) mới, đồng thời thuộc tính User-Password cũng được thay thế bởi thông tin trả lời của user.

5.4 Giao thức chứng thực ( Authentication protocol)

Radius có nhiều giao thức chứng thực khác nhau. Số ít được liệt kê dưới đây được sử dụng với mạng Point to point. Một vài giao thức chứng thực mở rộng (Extensible Authentication Protocol) cũng được sử dụng trong mạng 802.1x điển hình là mạng WLAN.

5.4.1 Giao thức chứng thực mật khẩu ( Password Authentication Protocol - PAP)

Được sử dụng khi máy chủ (host) và thiết bị định tuyến (router) kết nối với giao thức Point to Point Protocol (PPP) thông qua dịch vu quay số (dial up) hoặc đường truyền chuyên dụng khác.
Liên kết được thành lập lặp đi lặp lại việc gửi ID và mật khẩu để xác thực cho đền khi nó được công nhận hoặc cho đến khi kết nối kết thúc

5.4.2 Chap (Challenge-Handshake Authentication Protocol) :

Là một kiểu kết nối khác hỗ trợ giao thức PPP , nó trái ngược vói giao thức PAP mà mật khẩu được gửi đi là chính bản thân nó trong suốt quá trình chứng thực. Quá trình chứng thực gồm ba bước :
+ Sau khi liên kết được thiết lập, máy chủ xác nhận (authenticator) gửi gói tin challenge tới máy khách, máy khách phản hồi lại bằng việc sử dụng thuật toán băm MD5 để tính toán các giá trị mà kết quả dựa trên mật khẩu và gói tin challenge ở trên.
+ Máy chủ xác nhận (authenticator) sử dụng một dạng mật khẩu tương tự của hàm băm để so sánh kết quả máy khách gửi tới.
+ Nếu 2 chuỗi là giống nhau thì quá trình chứng thực CHAP đã thành công. Điều này có nghĩa là kết nối đã được chứng thực hợp lệ.

Thuật toán được nêu ở trên là một cách mã hóa dữ liệu rất phức tạp do đó CHAP được sử dụng phổ biến hơn PAP,

5.4.3 MS Chap(v1/v2)

MSCHAP (Microsoft Challenge Handshake Authentication Protocol) là phiên bản Chap của Microsoft.
Cả hai phiên bản 1 và phiên bản 2 đều có thể mua được, nhưng phiên bản 1 không được ưa chuộng. Nó sử dụng thuật toán băm MD4, mã hóa DES và được sử dụng trong mạng của Microsft

5.4 Giao thức chứng thực mở rộng (Extensible Authentication Protocol )
Là giao thức cung cấp cơ cấu làm việc (framework) cho máy khách truy cập vào mạng và máy chủ chứng thực. được miêu tả trong RFC 3748. Nó hỗ trở việc sử dụng chứng thực đa phuong tiện. Ngoài ra nó còn chỉ rỏ các gói tin trao đổi giữa máy khách, việc chứng thực và máy chủ xác nhận (authenticator) được diễn ra như thế nào.
Thông thường nó được phát triển cho việc sử dụng giao thức PPP, nhưng bây giờ nó được sử dụng cho mạng Lan không dây IEEE 802.1x.Trong hệ thống mạng này,máy khách (client) có thể đăng nhập vào hệ thống mạng không dây

Nó hỗ trợ một số giao thức dưới đây.

EAP-MD5 ( Message-Digest 5) : tên người dùng và mật khẩu để được sử dụng để xác nhận thông tin theo miêu tả trong RFC 1194. Đó là một giao thức đơn giản. Máy chủ RADIUS xác nhận yêu cầu kết nối mật khẩu người bằng thuật toán băm MD5. Nó gửi một gói tin (challenge) ngẫu nhiên mà máy khách phản hồi lại mật khẩu bằng việc sử dụng MD5

EAP-TLS (Transport Layer Security) : nó cung cấp bảo mật mạnh mẽ bằng cách yêu cầu cả máy chủ lẫn máy khách xác nhận chứng thực bằng PKI.Các gói tin EAP tương tác với máy khách lẫn máy chủ được mã hóa và bảo vệ kết nối mạng bằng TLS. Nhược điểm với giao thức này là sử dụng và cài đặt chứng thực luôn ở cả hai bên.

EAP-TTLS
PEAP (Protected EAP)
Cisco LEAP ( Lightweight EAP Protocol)


III. Mô hình triển khai

Thực hành

1 ) HTTPS :
+ Cài đặt Enterprise CA
+ Default Website
+ Network Monitor
+ HTTPS

2 ) Secure Mail :
+ Cài đặt Mail Server Mdeamon
+ Cấu hình Windows Mail cho users
+ Admin sửa mail của users
+ User xin và cài đặt Certificates
+ User gửi mail có sign
+ Users gửi mail có encrypt

3 ) IP Security :
+ Cài đặt Network Monitor
+ Cấu hình IPSEC trên DC
+ Cấu hình IPSEC trên máy Client

4 ) Radius :
+ Cấu hình VPN – Client to gateway
+Cài IAS – Internet Authencation Services
+Cấu hình Radius Server



IV . Kết luận
Trả Lời Với Trích Dẫn
Những người sau đây đã gửi lời cảm ơn NTMP_38313 vì bài viết hữu ích này: