Your SlideShare is downloading. ×
Cai Dat SSL tren WEB SERVER
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Cai Dat SSL tren WEB SERVER

2,145
views

Published on

liên hệ: …

liên hệ:
yahoo: thaingoclong_tn90
mobile: 0973.809.853

Published in: Education

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,145
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
111
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. ®¹i häc th¸I nguyªn Tr­êng ®¹i häc c«ng nghÖ th«ng tin & truyÒn th«ng BÁO CÁO AN NINH MẠNG§Ò tµi : TÌM HIỂU VỀ SSL VÀ ỨNG DỤNG TRÊN WEB SEVER GVHD : Th.S NGUYỄN ĐỨC BÌNH Sinh viên thực hiện : NGUYỄN CÔNG LONG ĐỖ VĂN TRUYỀN Lớp : An Ninh Mạng N02 Th¸i Nguyªn, th¸ng 05 n¨m 2012 1
  • 2. MỤC LỤCLỜI NÓI ĐẦU…………………………………………………………………….2I. Giới thiệu về SSL……………………………………………………………..3 I.1 Lịch sử phát triển của giao thức SSL……………………………………………………3 I.1.1 Tại sao sử dụng SSL?………………………………………………………………3 I.1.2 Giao thức SSL là gì?………………………………………………………………..4 I.1.3 Các phiên bản của SSL…………………………………………………………......4 I.2 Cấu trúc của giao thức SSL……………………………………………………………...5 I.2.1 Giao thức SSL Record ………………………………………………………………6 I.2.2 Giao thức SSL Change Cipher Spec………………………………………………..8 I.2.3 Giao thức SSL Alert………………………………………………………………………………....9 I.2.4 Giao thức SSL Handshake………………………………………………………………….10 I.3 Các thuật toán mã hóa dùng trong SSL………………………………………………… 12II. Ứng dụng của SSL…………………………………………………………………...13 II.1 Các ứng dụng phổ biến của SSL………………………………………………………. 13 II.2 Ứng Dụng SSL Trên Web Server………………………………………………………14 II.2.1 Web Server ? ……………………………………………………………………….14 II.2.2 Giải Pháp Bảo Vệ Web Server……………………………………………………...16 II.2.3 Quy Trình Và Cài Đặt SSL…………………………………………………………18III. Demo …………………………………………………………………………………. 19TÀI LIỆU THAM KHẢO……………………………………………………………………..20 2
  • 3. LỜI NÓI ĐẦU -Như chúng ta đã biết thì kể từ khi Internet ra đời. Cùng theo đó lĩnh vực công nghệ tin khôngngừng phát triền, kèm theo Mạng Internet mang lại rất nhiều tiện ích hữu dụng cho người sửdụng, một trong các tiện ích phổ thông của Internet là hệ thống thư điện tử (email), trò chuyệntrực tuyến (chat), máy truy tìm dữ liệu (search engine), các dịch vụ thương mại và chuyển ngân,và các dịch vụ về y tế giáo dục như là chữa bệnh từ xa hoặc tổ chức các lớp học ảo. Chúng cungcấp một khối lượng thông tin và dịch vụ khổng lồ trên Internet.- Nguồn thông tin khổng lồ kèm theo các dịch vụ tương ứng chính là hệ thống các trangWeb liên kết với nhau và các tài liệu khác trong WWW (World Wide Web).=>Đó là một kênh trao đổi thông tin rất hữu ích và nhanh chong . Song tất cả không phải làtoàn mỹ , nghĩa là mọi thông tin khi bạn trao đổi thông qua Internet có thể bị bên thứ 3 tácđộng vào hay là lộ mất mát thông tin…vvĐể khắc phục những hạn chế đó người ta đã phát triển nên các giao thức giúp phần nào hạn chếđiều đó. Trong đó biết tới một giao thức góp phần tối ưu công việc bảo mật thông tin trên nềnWorld Wide Web. Đó là giao thức SSL (viết tắt Secure Sockets Layer)Hôm nay nhóm em xin trình bày những hiểu biết về giao thức SSL cũng như ứng dụng của nótrên Web Server. 3
  • 4. “ Tìm hiểu SSL và ứng dụng trên web sever ”Đề tài có thể còn nhiều thiếu sót mong Thầy và các bạn đóng góp ý kiến để đề tài được hoàn thiệnhơn.Chúng em xin cảm ơn sự hướng dẫn của Thầy Ths. Nguyễn Đức Bình đã giúp chúng emhoàn thành đề tài này. Tìm hiểu SSL và ứng dụng trên Web SeverI. Giới thiệu về SSL I.1 Lịch sử phát triển của giao thức SSL I.1.1 Tại sao sử dụng SSL? - Như chúng ta đã biết công nghệ thông tin ngày càng phát triển và thay đổi hàng ngày hàng giờ. Đồngthời cùng với sự ra đời của Internet, thì đã góp phần tăng thêm một kênh truyền tải thông tin. - Ngày nay việc bảo mật thông tin là yếu tố quan trọng để quyết định sự sống còn của một tổ chức ,mộtcông ty hay doanh nghiệp . Với sự phát triển nhanh chóng của công nghệ đã mang lại nhiều tiện ích chongười dùng nhưng đồng thời cũng đặt ra một nhu cầu hết sức cấp thiết về sự an toàn và bảo mật .Và SSLchính là giải pháp tốt nhất hiện nay đáp ứng những nhu cầu đó và nó được coi như là “lá chắn cuối cùng”trong bảo mật thương mại điện tử. - Việc truyền các thông tin nhạy cảm trên mạng rất không an toàn vì những vấn đề sau: + Bạn không thể luôn luôn chắc rằng bạn đang trao đổi thông tin với đúng đối tượng cần trao đổi. + Dữ liệu mạng có thể bị chặn ,vì vậy dữ liệu có thể bị 1 đối tượng thứ 3 khác đọc trộm, thường được biết đến như attacker . + Nếu attacker có thể chặn dữ liệu, attacker có thể sửa đổi dữ liệu trước khi gửi nó đến người nhận. - Như vậy SSL được đã được phát triển nhằm giải quyết triệt để các vấn đề trênI.1.2 Giao thức SSL là gì? - SSL (Secure Sockets Layer) là giao thức an ninh thông tin mạng được sử dụng rộng rãi nhấthiện nay nhằm mã hóa và cung cấp một kênh an toàn giữa các máy tính trên Internet hoặc mạng 4
  • 5. nội bộ. SSL thường được sử dụng khi một trình duyệt web cần kết nối bảo mật đến một máychủ web. - Được phát triển bởi Netscape, ngày nay giao thức Secure Socket Layer (SSL) đã được sửdụng rộng rãi trên World Wide Web trong việc xác thực và mã hoá thông tin giữa client vàserver. Tổ chức IETF (Internet Engineering Task Force ) đã chuẩn hoá SSL và đặt lại tên làTLS (Transport Layer Security). Mặc dù là có sự thay đổi về tên nhưng TSL chỉ là một phiênbản mới của SSL. Phiên bản TSL 1.0 tương đương với phiên bản SSL 3.1. Tuy nhiên SSL làthuật ngữ được sử dụng rộng rãi hơn. - SSL được thiết kế như là một giao thức riêng cho vấn đề bảo mật có thể hỗ trợ cho rất nhiềuứng dụng. Giao thức SSL hoạt động bên trên TCP/IP và bên dưới các giao thức ứng dụng tầngcao hơn như là HTTP (Hyper Text Transport Protocol), IMAP ( Internet Messaging AccessProtocol) và FTP (File Transport Protocol). => Để đảm bảo tính bảo mật thông tin trên internet hay bất kì mạng TCP/IP nào thì SSL(Secure Socket Layer) ra đời kết hợp với những yếu tố sau để thiết lập giao dịch an toàn: *Xác thực: đảm bảo tính xác thực của trang mà bạn sẽ làm việc ở đầu kia của kết nối. Cũngnhư vậy, các trang Web cũng cần phải kiểm tra tính xác thực của người sử dụng. *Mã hoá: đảm bảo thông tin không thể bị truy cập bởi đối tượng thứ ba. Để loại trừ việcnghe trộm những thông tin “ nhạy cảm” khi nó được truyền qua Internet, dữ liệu phải được mãhoá để không thể bị đọc được bởi những người khác ngoài người gửi và người nhận. *Toàn vẹn dữ liệu: đảm bảo thông tin không bị sai lệch và nó phải thể hiện chính xác thôngtin gốc gửi đến.I.1.3 Các phiên bản của SSL - Giao thức SSL ban đầu được phát triển bởi Netscape.Ngày nay Visa, MasterCard, AmericanExpress cũng như nhiều công ty giải pháp tài chính hàng đầu khác trên thế giới đã và đang ứng dụngSSL trong thương mại điện tử. - Cho đến bây giờ, có ba phiên bản của SSL: * SSL 1.0: được sử dụng nội bộ chỉ bởi Netscape Communications. Nó chứa một số khiếm khuyết nghiêm trọng và không bao giờ được tung ra bên ngoài. * SSL 2.0: được kết nhập vào Netscape Communications 1.0 đến 2.x. Nó có một số điểm yếu liên quan đến sự hiện thân cụ thể của cuộc tấn công của đối tượng trung gian. Trong một nỗ lực nhằm dùng sự không chắc chắn của công chúng về bảo mật của SSL, Microsoft cũng đã giới thiệu giao thức PCT cạnh tranh trong lần tung ra Internet Explorer 5
  • 6. đầu tiên của nó vào năm 1996. *SSL 3.0: Netscape Communications đã phản ứng lại sự thách thức PCT của Microsoft bằng cách giới thiệu SSL 3.0 vốn giải quyết các vấn đề trong SSL 2.0 và thêm một số tính năng mới. Vào thời điểm này, Microsoft nhượng bộ và đồng ý hỗ trợ SSL trong tất cả các phiên bản phần mềm dựa vào TCP/IP của nó .I.2 Cấu trúc của giao thức SSL SSL được thiết kế để dùng TCP cung cấp 1 dịch vụ bảo mật đầu cuối-đến-đầu cuối đáng tin cậy.SSL không phải là một giao thức đơn mà là 2 lớp giao thức,như minh họa dưới đây: Hình 5: Chồng giao thức SSL - Theo hình này, SSL ám chỉ một lớp (bảo mật) trung gian giữa lớp vận chuyển (Transport Layer) và lớp ứng dụng (Application Layer). SSL được xếp lớp lên trên một dịch vụ vận chuyển định hướng nối kết và đáng tin cậy, chẳng hạn như được cung cấp bởi TCP. - SSL Record Protocol cung cấp các dịch vụ bảo mật cơ bản cho nhiều giao thức khác nhau ở các lớp trên.Trong thực tế, Hyper Text Transfer Protocol (HTTP),cung cấp dịch vụ trao đổi cho tương tác Web client/server,có thể hoạt động trên đỉnh của SSL.Ba giao thức lớp trên được định nghĩa như là các phần của SSL: Handshake Protocol, Change Cypher Spec Protocol và Alert Protocol.Các giao thức mang tính đặc trưng-SSL này được dùng trong phần quản lý trao đổi SSL - Như vậy có ta thấy SSL có 2 lớp giao thức hay 4 thành phần con của SSL: + SSL Handshake Protocol. 6
  • 7. + SSL Change Cipher Spec Protocol. + SSL Alert Protocol. + SSL Record Protocol.II.2.1 Giao Thức SSL Record Protocol. SSL Record Protocol cung cấp 2 dịch vụ cho kết nối SSL: + Confidentiality (tính cẩn mật): Handshake Protocol định nghĩa 1 khóa bí mật được chiasẻ, khóa này được sử dụng cho mã hóa quy ước các dữ liệu SSL. + Message integrity (tính toàn vẹn thông điệp):Handshake Protocol cũng định nghĩa 1 khóa bí mật được chia sẻ, khóa này được sử dụng để hình thành MAC (mã xác thực message). - Hình sau chỉ ra toàn bộ hoạt động của SSL Record Protocol.SSL Record Protocol nhận 1 message ứng dụng sắp được truyền đi,phân mảnh dữ liệu thành nhiều block,nén dữ liệu 1 cách tùy chọn,áp dụng vào 1 MAC,mã hóa,thêm vào header,và truyền khối kết quả thu được trong 1 segment TCP.Dữ liệu nhận được được giải mã,kiểm tra ,giải nén,sắp xếp lại và phân phối đến người sử dụng ở lớp cao hơn. 7
  • 8. Phân mảnh :Mỗi message của lớp bên trên được phân mảnh thành các block ,mỗi block là 214byte(16384 byte) hoặc ít hơn. Nén: Nén phải là không mất mát thông tin và có thể không làm tăng chiều dài nội dung nhiều hơn1024 byte (Dĩ nhiên,người ta mong muốn nén làm co lại dữ liệu hơn là nới rộng dữ liệu.Tuy nhiên,với những block ngắn,có thể ,do định dạng quy ước,thuật toán nén thực sự làm cho output dài hơninput).Trong SSLv3 (cũng như phiên bản hiện tại của TLS),không có thuật toán nén nào được chỉrõ,vì vậy thuật toán nén mặc định là null.Tính toán MAC (mã xác thực message) trên dữ liệu đã được nén.Để thực hiện cần dùng đến1khóa bí mật được chia sẻ.Phép tính được định nghĩa như sau: hash(MAC_write_secret || pad_2 || hash(MAC_write_secret || pad_1 ||seq_num ||SSLCompressed.type || SSLCompressed.length || SSLCompressed.fragment)) trong đó:+ || : phép nối/hoặc.+MAC_write_secret: khóa bí mật được chia sẻ.+ hash: thuật toán băm mã hóa, MD5 hoặc SHA-1. + pad_1: byte 0x36 (0011 0110) được lặp lại 48 lần (384 bit) cho MD5 và 40 lần (320 bit) cho SHA-1.+ pad_2: byte 0x5c (0101 1100) được lặp lại 48 lần cho MD5 và 40 lần cho SHA-1.+seq_num: sequence number cho message nay+SSLCompressed.type: giao thức ở lớp trên được dùng để xử lí phân mảnh này.+SSLCompressed.length: chiều dài của phân mảnh đã được nén.+SSLCompressed.fragment: phân mảnh đã được nén (nếu nén không được dùng, phân mảnh ở dạng plaintext).Mã hóa theo phương pháp mã hóa đối xứng:Mã hóa có thể không làm tăng chiều dài nộidung hơn 1024 byte,vì vậy chiều dài tổng cộng không vượt quá 214+2048. Các thuật toán mã hóasau được cho phép: Block cipher (Mã hóa khối) Stream cipher (Mã hóa luồng) Thuật toán Kích thước khóa Thuật toán Kích thước khóa AE 128,25 RC4- 40 S IDE 6 128 40 RC4-128 128 A RC2- 40 40 DES- 40 40 DE 56 S 3DE 168 S Fortezz 80 a 8
  • 9. Cuối cùng của xử lí SSL Record Protocol là gắn thêm vào1 header ,bao gồm các mục sau: Content Type (8 bit): giao thức lớp trên được dùng để xử lí phân mảnh đi kèm. Major Version (8 bit): chỉ ra phiên bản SSL tối đa được dùng. Ví dụ, SSLv3,giá trị này là 3. Minor Version (8 bit) : chỉ ra phiên bản tối thiểu được dùng.Ví dụ, SSLv3 ,giá trị này là 0. Compressed Length (16 bit) : chiều dài theo byte của phân mảnh plaintext (hoặc chiều dài theo byte của phân mảnh đã nén nếu nén được dùng).Gía trị lớn nhất là 214+2048.I.2.2 Giao thức SSL Change Cipher Spec Protocol Giao thức SSL Change Cipher Spec là giao thức đơn giản nhất trong ba giao thức đặc trưng của SSL mà sử dụng giao thức SSL Record . Giao thức này bao gồm một message đơn 1 byte giá trị là 1. Mục đích chính của message này là sinh ra trạng thái tiếp theo để gán vào trạng thái hiện tại,và trạng thái hiện tại cập nhật lại bộ mã hóa để sử dụng trên kết nối này. I.2.3 Giao thức SSL Alert Giao thức SSL Alert được dùng để truyền cảnh báo liên kết SSL với đầu cuối bên kia.Như với những ứng dụng khác sử dụng SSL, alert messages được nén và mã hóa, được chỉ định bởi trạng thái hiện tại. Mỗi message trong giao thức này gồm 2 bytes .Byte đầu tiên giữ giá trị cảnh báo(1) hoặc nguy hiểm(2) để thông báo độ nghiêm ngặt của message.Nếu mức độ là nguy hiểm,SSL lập tức chấp dứt kết nối.Những kết nối cùng phiên khác vẫn có thể tiếp tục nhưng sẽ không kết nối nào khác trên phiên này được khởi tạo thêm.Byte thứ hai chứa một mã chỉ ra cảnh báo đặc trưng.Đầu tiên , chúng ta liệt kê những cảnh báo đó mà luôn ở mức nguy hiểm ( được định nghĩa từ những thông số SSL): 9
  • 10. unexpected_message: message không thích hợpbad_record_mac: MAC không chính xácdecompression_failure: việc giải nén nhận input không thích hợp(ví dụ như không thểgiải nén hoặc giải nén lớn hơn độ dài tối đa cho phép).handshake_failure: bên gửi không thể thương lượng một bộ chấp nhận được của cácthông số bảo mật được đưa ra từ những lựa chọn có sẵn 10
  • 11. illegal_parameter: một trường trong một handshake message thì vượt khỏi dãy hoặc trái với những trường khácPhần còn lại của cảnh báo thì như sau: close_notify: thông báo cho bên nhận rằng bên gửi sẽ không gửi thêm message nào nữa trong kết nối này.Mỗi nhóm thì được yêu cầu gửi một close_notify cảnh báo trước khi kết thúc phần ghi của một kết nối. no_certificate: có thể được gửi để trả lời cho một yêu cầu certificate nếu không certificate thích hợp nào có sẵn. bad_certificate: certificate nhận được thì không hợp lệ(ví dụ như chứa một chữ ký không xác minh) unsupported_certificate: dạng certificate nhận được thì không hỗ trợ. certificate_revoked: certificate đã bị thu hồi bởi nhà cung cấp. certificate_expired: certificate đã hết hạn đăng ký. certificate_unknown: một số phát sinh không nói rõ xuất hiện trong quá trình xử ký certificate làm cho nó không thể chấp nhận. 11
  • 12. I.2.4 Giao Thức SSL Handshake Giao thức này cho phép server và client chứng thực với nhau và thươnglượng cơ chế mã hóa , thuật toán MAC và khóa mật mã được sử dụng để bảo vệdữ liệu được gửi trong SSL record.Giao thức SSL Handshake thường được sửdụng trước khi dữ liệu của ứng dụng được truyền đi. Cơ chế giao thức SSL Handshake: 1) Client sẽ gửi cho server số phiên bản SSL đang dùng, các tham số của thuật toán mã hoá, dữ liệu được tạo ra ngẫu nhiên (đó chính là digital signature) và một số thông tin khác mà server cần để thiết lập kết nối với client. 2) Server gửi cho client số phiên bản SSL đang dùng, các tham số của thuật toán mã hoá, dữ liệu được tạo ra ngẫu nhiên và một số thông tin khác mà client cần để thiết lập kết nối với server. Ngoài ra server cũng gửi certificate của nó đến client, và yêu cầu certificate của client nếu cần. 3) Client sử dụng một số thông tin mà server gửi đến để xác thực server. Nếu như server không được xác thực thì người sử dụng sẽ được cảnh báo và kết nối không được thiết lập. Còn nếu như xác thực được server thì phía client sẽ thực hiện tiếp bước 4.
  • 13. 4) Sử dụng tất cả các thông tin được tạo ra trong giai đoạn bắt tay ởtrên, client (cùng với sự cộng tác của server và phụ thuộc vào thuậttoán được sử dụng) sẽ tạo ra premaster secret cho phiên làm việc, mãhoá bằng khoá công khai (public key) mà server gửi đến trongcertificate ở bước 2, và gửi đến server. 5) Nếu server có yêu cầu xác thực client, thì phía client sẽ đánh dấuvào phần thông tin riêng chỉ liên quan đến quá trình “bắt tay” này màhai bên đều biết. Trong trường hợp này, client sẽ gửi cả thông tin đượcđánh dấu và certificate của mình cùng với premaster secret đã được mãhoá tới server.6) Server sẽ xác thực client. Trường hợp client không được xác thực,phiên làm việc sẽ bị ngắt. Còn nếu client được xác thực thành công,server sẽ sử dụng khoá bí mật (private key) để giải mã premaster secret,sau đó thực hiện một số bước để tạo ra master secret.7) Client và server sẽ sử dụng master secret để tạo ra các session key,đó chính là các khoá đối xứng được sử dụng để mã hoá và giải mã cácthông tin trong phiên làm việc và kiểm tra tính toàn vẹn dữ liệu.8) Client sẽ gửi một lời nhắn đến server thông báo rằng các messagetiếp theo sẽ được mã hoá bằng session key. Sau đó nó gửi một lời nhắnđã được mã hoá để thông báo rằng phía client đã kết thúc giai đoạn “bắttay”.9) Server cũng gửi một lời nhắn đến client thông báo rằng các messagetiếp theo sẽ được mã hoá bằng session key. Sau đó nó gửi một lời nhắnđã được mã hoá để thông báo rằng server đã kết thúc giai đoạn “bắttay”.10) Lúc này giai đoạn “bắt tay” đã hoàn thành, và phiên làm việc SSLbắt đầu. Cả hai phía client và server sẽ sử dụng các session key để mã 13
  • 14. hoá và giải mã thông tin trao đổi giữa hai bên, và kiểm tra tính toàn vẹn dữ liệuI.3 Các thuật toán mã hóa dùng trong SSL - Các thuật toán mã hoá (cryptographic algorithm -cipher) là các hàm để mã hoá và giải mã thông tin. - Giao thức SSL hỗ trợ rất nhiều các thuật toán mã hoá, sử dụng trong quá trình xác thực server và client, truyền tải các certificates và thiết lập các khoá của từng phiên giao dịch - Client và server có thể hỗ trợ các bộ mật mã (cipher suite) khác nhau tuỳ thuộc vào phiên bản SSL đang dùng, chính sách về độ dài khoá cảm thấy chấp nhận được - điều này liên quan đến mức độ bảo mật của thông tin, …. Một số thuật toán SSL sử dụng : - DES (Data Encryption Standard) - DSA (Digital Signature Algorithm): - MD5 (Message Digest algorithm): - RSA: là thuật toán mã hoá công khai dùng cho cả quá trình xác thực và mã hoá dữ liệu được Rivest, Shamir, and Adleman phát triển. - RSA key exchange: là thuật toán trao đổi khoá dùng trong SSL dựa trên thuật toán RSA. - RC2 and RC4: - SHA-1 (Secure Hash Algorithm): - Các thuật toán trao đổi khoá như KEA, RSA key exchange được sử dụng để 2 bên client và server xác lập khoá đối xứng mà họ sẽ sử dụng trong suốt phiên giao dịch SSL. Và thuật toán được sử dụng phổ biến là RSA key exchange - Các phiên bản SSL 2.0 và SSL 3.0 hỗ trợ cho hầu hết các bộ mã hoá. Người quản trị có thể tuỳ chọn bộ mã hoá sẽ dùng cho cả client và 14
  • 15. server. Khi một client và server trao đổi thông tin trong giai đoạn bắt tay (handshake), họ sẽ xác định bộ mã hoá mạnh nhất có thể và sử dụng chúng trong phiên giao dịch SSL.II. Ứng dụng của SSL II.1 Các ứng dụng phổ biến của SSL Tuy đến nay vẫn còn tồn tại một số lỗ hổng có thể bị khai thác nhưng SSL vẫn là giao thức bảo mật cao nhất mà chưa một giao thức bảo mật nào có thể thay thế vai trò của nó . Nó phổ biến đến mức nếu thấy tên một giao thức có hậu tố “s” thì người ta biết ngay giao thức ứng dụng đó được kết hợp kèm với SSL. Sau đây là một số port phổ biến của những ứng dụng đi kèm SSL được IANA( Internet Assigned Numbers Authority) công nhận : Name Port Description Nsiiop 261 Dịch vụ IIOP trên TLS/SSL Https 443 HTTP trên TLS/SSL Smtps 465 SMTP trên TLS/SSL Nntps 563 NNTP trên TLS/SSL Ldaps 636 LDAP trên TLS/SSL Ftps-data 989 FTP-dữ liệu trên TLS/SSL Ftps 990 FTP-điều khiển trên TLS/SSL Telnets 992 TELNET trên TLS/SSL Imaps 994 IRC trên TLS/SSL Hình 1 - Ngoài một số ứng dụng phổ biến hiện nay của SSL như bảo mật trongRemote Desktop Protocol cho kết nối Terminal Service, Http cho Outlook 15
  • 16. Web Access hay Smtp/Imap/Pop3 cho mail , ứng dụng quan trọng của SSLmà không thể không nhắc tới là SSL VPN - Đó là lý do tại sao không chỉ các nhà cung cấp thiết bị mạng phần cứngđang đua nhau trong việc phát triển các sản phẩm hổ trợ SSL VPN mà cảnhững nhà cung cấp thiết bị mạng “mềm” như Microsoft cũng đưa nó vào sảnphẩm Windows Server 2008 và Windows Vista Service Pack 1 của mìnhvới cơ chế Secure Socket Tunneling Protocol (SSTP).II.2 Ứng Dụng SSL Trên Web Server II.2.1 Web Server ? - Web Server (Máy phục vụ Web): máy tính mà trên đó cài đặt phần mềm phục vụ Web, đôi khi người ta cũng gọi chính phần mềm đó là Web Server. Tất cả các Web Server đều hiểu và chạy được các file *.htm và *.html. - Máy Web Server là máy chủ có dung lượng lớn, tốc độ cao, được dùng để lưu trữ thông tin như một n hàng dữ liệu, chứa những website đã được thiết kế cùng với những thông tin liên quan khác. (các mã Script, các chương trình, và các file Multimedia).- Tất cả các Web Server đều có một địa chỉ IP (IP Address) hoặc cũng có thể có một Domain Name.- Khi máy tính của bạn kết nối đến một Web Server và gửi đến yêu cầu truy cập các tông tin từ một trang Web nào đó, Web Server Software sẽ nhận yêu cầu và gửi lại cho bạn những thông tin mà bạn mong muốn. 16
  • 17. Hình 2- Server phải hoạt động liên tục 24/24 giờ, 7 ngày một tuần và 365 ngàymột năm, để phục vụ cho việc cung cấp thông tin trực tuyến. -Có nhiều loại Web Server khác nhau, nhưng chủ yếu trên thị trường chỉthường sử dụng Apache và IIS (Internet Information Server củaMicrosoft). Hình 3 17
  • 18. II.2.2 Giải Pháp Bảo Vệ Web Server - Truyền thông HTTP được định nghĩa cho máy chủ Web nói chung, thông thường là các trang thông tin. - Một số phương pháp cho Web Server an toàn hơn(hình vẽ): Hình 4 Tuy nhiên nếu đang nghĩ đến việc chạy một trang điện tử hoặc các dịch vụ Web khác yêucầu phiên giao dịch an toàn thì bạn cần phải mã hóa dữ liệu được truyền thông giữa máy chủWeb và các máy khách của nó. Trường hợp thường được sử dụng nhất đó là Secure Sockets Layer(SSL), SSL sử dụng mã hóa khóa công khai để bảo vệ thông tin bí mật củangười dùng (như là thẻ tín dụng, số tài khoản ngân hàng) vẫn được truyềntải trên Web. Trong bài viết này sẽ giới thiệu 2 phương pháp: + Cách cài đặt SSL trên máy chủ Internet Information Services (IIS) Web trên Win Server.( Xin một chứng chỉ cho web) + Cách cài đặt SSL trên máy chủ Apache Web Server trên hệ điềuhành CenTos( Tự tạo một chứng chỉ web) 18
  • 19. II.2.3 Quy Trình Và Cài Đặt SSL II.2.3.1 Quy trình cài đặt 1. Chọn 1 Server Cho ứng dụng 2. Tạo 1 CSR(Certificate Signing Request)(tùy theo Server đã chọn mà có cách thức tạo khác nhau) * Ở bước này 1 Private Key sẽ được tạo ra cùng lúc với CSR. 3. Đăng kí tạo SSL Certificate từ 1 CA(Certificate Authority). ( ví dụ xin chứng chỉ free :http://www.thawte.com) 4. Cài đặt SSL tùy theo yêu cầu của từng Server. Trong đó thì : CSR-Certificate Signing Request:Là một block Text được mã hóa được lấy từ server mà ta sẽ dùng Certificate. Nó chứa những thông tin xác thực như :organization name, common name (domain name), locality, and country và publickey và một private key sẽ được tạo cùng lúc tạo CSR . Nội dung 1 CSR thường là : 19
  • 20. + Định dạng của SCR : Hấu hết các CSR được mã hóa theo Base64-----BEGIN CERTIFICATE REQUEST-----MIIByjCCATMCAQAwgYkxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRMwEQYDVQQKEwpHb29nbGUgSW5jMR8wHQYDVQQLExZJbmZvcm1hdGlvbiBUZWNobm9sb2d5MRcwFQYDVQQDEw53d3cuZ29vZ2xlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEApZtYJCHJ4VpVXHfVIlstQTlO4qC03hjX+ZkPyvdYd1Q4+qbAeTwXmCUKYHThVRd5aXSqlPzyIBwieMZrWFlRQddZ1IzXAlVRDWwAo60KecqeAXnnUK+5fXoTI/UgWshre8tJ+x/TMHaQKR/cIWPhqaQhsJuzZbvAdGA80BLxdMCAwEAAaAAMA0GCSqGSIb3DQEBBQUAA4GBAIhl4PvFq+e7ipARgI5ZM+GZx6mpCz44DTo0JkwfRDf+BtrsaC0q68eTf2XhYOsq4fkHQ0uA0aVog3f5iJxCa3Hp5gxbJQ6zV6kJ0TEsuaaOhEko9sdpCoPOnRBm2i/XRD2D6iNh8f8z0ShGsFqjDgFHyF3o+lUyj+UC6H1QW7bn-----END CERTIFICATE REQUEST----- 20
  • 21. Certificate Authorety ( CA ): - Là tổ chức cấp phát chữ kí điện tử.Nó giữ lại những thông tin nó ban hành và những thông tin để phát hành chữ kí điện tử đó. -Tính phí hoặc free: + Free : StartCom,Cacert ,các trial cua các CA, Godaddy (Opensource) + Tinh phí :Verisign,Comodo,DigiCert,Entrust,GlobalSign,Godady II.2.3.1 Cài đặt SSL Như ở mục trên đã trình bày xin đưa ra 2 phương pháp cài đặt SSL trên 2 loại Web erver phổ biến đó là IIS và Apache + Cách cài đặt SSL trên máy chủ Internet Information Services (IIS) Web trên Win Server.( Xin một chứng chỉ cho web) + Cách cài đặt SSL trên máy chủ Apache Web Server trên hệ điều hành CenTos.( Tự tạo một chứng chỉ web)III. Demo * Cài đặt SSL máy chủ IIS. * Cài đặt SSL máy chủ Apache. 21
  • 22. Tài Liệu Tham Khảo 1.Cryptography and Network Security Principles and Practices, Fourth Edition –By William Stallings 2.Security Cryptographic Principles, Algorithms and Protocols –By Man Young Rhee 3. MCP 70-299: Implementing and Administering Security in a Microsoft Windows Server 2003 Network4. http://www.blackhat.com/ (BlackHat-DC-09-Marlinspike-Defeating-SSL.pdf)5. http://msopenlab.com/ 22