Your SlideShare is downloading. ×
Ssl it-slideshares.blogspot.com
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Ssl it-slideshares.blogspot.com

3,350
views

Published on

Ssl more from http://it-slideshares.blogspot.com and japanese-zen-garden.blogspot.com

Ssl more from http://it-slideshares.blogspot.com and japanese-zen-garden.blogspot.com

Published in: Education, Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
3,350
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
124
Comments
0
Likes
0
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
  • Public-key cryptography Client cóthểyêucầu server đểchứng minh danhtínhbằngcáchkyvàodữliệuNhưnglàmsaocóthểbiêtđược đo là public-key của server thựcsự.Kẻtấncôngcóthẻgiảlập server Đưa cho client public-key củanóvàbảođólà server Client co thểgửithông tin cógiátrịtớikẻtấncông.Kẻtấncông co thểgửidữliệukhôngđúngtrờlạitới client
  • Emulates server when talking to clientEmulates client when talking to serverPasses through most messages as-isSubstitutes own public key for client’s and server’sRecords secret data, or modifies data to cause damage
  • Transcript

    • 1. Thiết lập và triển khaiSecure Socket Layer(SSL)
    • 2. GVHD: TS Phạm Văn Tính
      Thựchiện :
      TrầnNgọcSơn
      NguyễnHữuTình
      HuỳnhCôngTân
      Lê Minh Vương
    • 3. GiớiThiệuTổngQuan SSL
      TriểnKhai SSL trên Apache2
      TriểnKhai SSL trên Tomcat6
      TriểnKhai SSL trên IIS
      Demo
      Nôi Dung
    • 4. Giới thiệu
      Tổng Quan
    • 5. Sercure Socket Layer (SSL) hiện nay là giao thức bảo mật rất phổ biến trên Internet trong các hoạt động thương mại điện tử (E-Commerce). Việt Nam đang trên đường hội nhập với nền công nghệ thông tin thế giới, nên nay mai, các hoạt động giao dịch trên mạng ở Việt Nam cũng sẽ diễn ra sôi nổi, khi đó vấn đề bảo mật trở nên quan trọng, việc triển khai SSL là điều thiết yếu.
      Tuy nhiên đến nay vẫn ít trang Web nào ở Việt Nam sử dụng SSL trong các giao dịch của mình
    • 6. Chứng thực (certificate) là những tài liệu có chứa thông tin cần thiết cho quá trình thiết lập định danh (identity) qua mạng, quá trình đó còn gọi là quá trình xác thực (authentication).
      Chứng thực cho phép máy chủ (server) và máy khách (client) xác thực lẫn nhau trước khi thiết lập kết nối. Có hai loại chứng thực là chứng thực máy khách (client certificate) và chứng thực máy chủ (server certificate).
      Ngoài ra còn có một đối tác thứ ba làm dịch vụ cung cấp và kiểm tra chứng thực cho cả hai bên, đó là Certification Authority (CA), tất nhiên CA chỉ làm việc được khi cả hai bên đều tin tưởng vào mình.
      Chứng thực điện tử (Digital Certificate)
    • 7. Nhậndanhngườiđanggiaotiếpvới ( Website, Customer).
      Credit Card Numbers thìđược mãhóavàkhôngthểđánhcắp.
      Dữliệugửivànhậnkhôngthểsửađổihoặcgiảmạo.
      Lợi ích của SSL đối với những ứng dụng
    • 8. 2 bênthamgia , client và server khôngbiếtvềnhau.
      Muốnđểchứngthựcmỗingườikhác.
      Client chứngthực server.
      E.g : “Am I talking to the real amazon.com server?”
      Server chứngthực client.
      Muốngiữbímậtvàtoànvẹnthông tin khitraođổidữliệu ở cả 2 hướng.
      SSL/TLS giải quyết vấn đề gì?
    • 9. Một số công ty chuyên làm dịch vụ CA:
      VeriSign (www.verisign.com)
      Thawte Consulting (www.thawte.com)
      Entrust Technologied (www.entrust.com)
      Keywitness (www.keywitness.ca)
    • 10. Vấn đề : Man in the Middle Attacks
      • Mộtmình public-key cryptography khôngđưa rađược cơchếchứngthựctốt.
      • 11. Kẻtấncôngcóthểgiảlập server
      Client
      Attacker
      Server
    • 12. Vấn đề : Man in the Middle Attacks
      Client
      • Kẻtấncông co thểkhôngxuấthiệngiống Server.
      • 13. Kẻtấncônghoặtđôngnhư “man in the middle”
      Attacker
      Server
    • 14. Giao thức SSL nằm giữa tầng ứng dụng (application layer) thường là HTTP và tầng chuyển vận (transport layer) thường là TCP/IP. SSL dùng kỹ thuật mã hóa công khai để mã hóa tất cả liên lạc giữa server/client.
      SSL được giới thiệu bởi Netscape và mau chóng thành chuẩn cho các giao dịch trực tuyến, dẫn đến sự hình thành chuẩn giao thức Transport Layer Security (TLS) đang được phát triển bởi Internet Engineering Task Force.
      Phương pháp hoạt động của SSL
    • 15. 1. Kết nối từ client đến server được thực hiện bằng giao thức HTTPS (HTTP+SSL)2. Server kí khóa công khai (public key) bằng khóa bí mật (private key) của mình và gửi cho client3. Client dùng khóa công khai của server để xác nhận đúng server đang liên lạc4. Client kiểm tra xem có CA nào đã kí vào khóa. Nếu không client sẽ hỏi người dùng xem có nên tin tưởng vào server không5. Client sinh ra một khóa bất đối xứng (asymmetric key) cho phiên giao dịch, khóa này được mã hóa bằng khóa công khai của máy chủ và gửi ngược lại. Khoá này cũng sẽ đượcdùng để mã hóa tất cả các thông tin sau này.
      Sự hoạt động của SSL 2.0
    • 16. SSL 3.0 bổ sung thêm cho SSL 2.0 bằng cách hỗ trợ cho chứng thực máy khách (client certificate), giúp server có thể nhận diện ngược lại client. SSL 3.0 hoạt động như SSL 2.0 , nhưng sau khi client đã xác thực server , đến lượt server sẽ kiểm tra ngược lại client.
      SSL3.0
    • 17. SSL 3.0 Handshake Overview
      Server
      Client
      ClientHello: client_version, client_random, client_cipher_list
      ServerHello: server_version, server_random, server_cipher_list
      ServerCertificate: server_certificate_list
      compute session keys
      ClientKeyExchange: {pre_master_secret}KS
      compute session keys
      ChangeCipherSpec: client_cipher
      Finished: MAC<master_secret, all messages>
      ChangeCipherSpec: server_cipher
      Finished: MAC<master_secret, all messages>
      15
    • 18.
    • 19. Triển Khai SSL
    • 20. APACHE 2
    • 21.
      • Kiểmtra Apache2 đãđượccàiđặttrênhệthốngchưa?
      sudodpkg --get-selections | grep apache2
      • Càiđặt Apache2
      sudo apt-get install apache2
      • Sauđóbật mod ssl
      sudo a2enmod ssl
      • Bật site default ssl
      sudo a2ensite default-ssl
    • 22. Tạo server encryption keys
      sudoopensslgenrsa -des3 -out server.key 1024
      • Tạo certificate request
      sudoopensslreq -new -key server.key -out server.csr
      Tạo self-signed certificate
      sudoopenssl x509 -req -days 365 -in server.csr -signkeyserver.key -out server.crt
    • 23. Sauđó copy file server.crt vàothưmục /etc/ssl/certs/, và file server.keyvàothưmục /etc/ssl/private/
      sudo cp server.crt /etc/ssl/certs/
      sudo cp server.key /etc/ssl/private/
      Vào file cấuhình /etc/apache2/sites-available/default-sslsửa 2 dòngsau:
      SSLCertificateFile    /etc/ssl/certs/ssl­cert­snakeoil.pem
      SSLCertificateKeyFile /etc/ssl/private/ssl­cert­snakeoil.key
      • Thành :
      SSLCertificateFile    /etc/ssl/certs/server.crt
      SSLCertificateKeyFile /etc/ssl/private/server.key
    • 24. Sauđó restart lại apache2
      sudo /etc/init.d/apache2 restart
      Mởtrìnhduyệt web browser gõ:
      https://localhost, hoàntấtquátrìnhtriểnkhai.
    • 25. TOMCAT
    • 26. Quátrìnhtriểnkhaissltrên tomcat6
      Kiểmtrađãcàiđặtjdktrênhệthốngchưa?
      sudodpkg --get-selections | grep sun-java
      Nếuchưacàiđặt, tiếnhànhcàiđặt
      sudo apt-get install sun-java6-jdk
      Sauđotiếnhànhcàiđặt tomcat6
      sudo apt-get install tomcat6 tomcat6-admin tomcat6-example
      Đểtruyxuấtvào manager application và host-manager chúngtacầnđịnhnghĩa user với role “manager” , “admin” trong file /etc/tomcat6/tomcat-users.xml nhưsau:
      <role rolename=”admin”/>
      <role rolename=”manager”/>
      <user username=”username” password=”password” roles=”admin”/>
      <user username=”username” password=”password” roles=”manager”/>
    • 27. Tạo certificate
      keytool -genkey -alias tomcat -keyalg RSA -keystoretomcat.key
      file /etc/tomcat6/server.xml Uncomment cácdòngsau:
      <!--
      <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
      maxThreads="150" scheme="https" secure="true"
      clientAuth="false" sslProtocol="TLS" />
      -->
      Sauđóthêmdòngsau:
      keystoreFile=“/path/to/keystore” keystorePass=“passCreateKey”.
      Sauđó restart lại tomcat
      sudo /etc/init.d/tomcat6 restart
      Mởtrìnhduyệtgõ:
      https://localhost:8443
    • 28. IIS
    • 29. Tự tạo Certificate cho mình (self-signed certificate)
      Dùng Certificate của các tổ chức CA như VeriSigns
      Triển khai trên IIS
    • 30. openssl.exe: tải ở http://www.openssl.org
      self-signed certificate
    • 31. Tạo khóa riêng X509 cho CA, mã hóa dạng Base64 – Mục đích là sẽ dùng khóa riêng này kí nhận cho code signing certificate. Khi tạo, cần cung cấp mật khẩu cho khóa riêng này.
      Lệnh: genrsa -des3 -out MyCA.key 1024
      Tạo chứng chỉ X509 cho CA có chứa public key, mã hóa dạng Base64 – Bạn cung cấp các thông tin cho CA, bao gồm tên đại diện cho CA, mã quốc gia, tên thành phố, email và mật khẩu của khóa riêng đã tạo ở trên.
      Lệnh: req -new -config openssl.cfg -x509 -days 365 -key MyCA.key -out MyCA.crt
      Tạo Certificate với Openssl
    • 32. Tạo khóa riêng X509 sử dụng để kí code – Thao tác tương tự như tạo khóa cho CA ở trên.
      Lệnh: genrsa -des3 -out MyServer.key 1024
      Tạo một yêu cầu kí nhận (certificate signing request) cho chứng chỉ
      Lệnh:req -config openssl.cfg -out MyServer.csr -key MyServer.key –new
    • 33. Tạo chứng chỉ public X509 để kí code từ yêu cầu ở trên, kèm thêm các khóa public của CA và sử dụng thông tin của CA để kí nhận – Kết quả sẽ chứa trong tệp myServer.cer. Đây chính là chứng chỉ tự kí, self-signed certificate.
      Lệnh: x509 -CAcreateserial -CAserial MyCA.srl -in MyServer.csr -days 370 -req -extfile openssl.cfg -extensions v3_req -CA MyCA.crt -CAkey MyCA.key -out MyServer.crt
    • 34. Tạo tệp dạng .pfx định dạng PKCS-12 (thông tin trao đổi cá nhân).
      Lệnh:pkcs12 -export -in MyServer.crt -inkey MyServer.key -out MyServe.pfx
    • 35. Như đã đề cập, để hệ thống Windows Vista tin cậy ứng dụng bạn kí bằng chứng chỉ vừa tạo, bạn cần cài đặt chứng chỉ public key của CA vào hệ thống tại vị trí LocalComputerTrusted Root Certification Authorities. Nếu làm tương tự như ví dụ trên, chứng chỉ của CA được chứa trong tệp VistaCA.cer.Dưới đây là cách cài đặt chứng chỉ vào hệ thống sử dụng công cụ Microsoft Management Console (mmc.exe).• Khởi động trình "mmc.exe" từ trình đơn Start/Run:
      Cài đặt chứng chỉ CA tự tạo cho Windows Vista/7
    • 36. mmc
    • 37. Bổ sung snap-in có tên "Certificates" cho "Local Computer"
    • 38.
    • 39.
    • 40. Chọn chức năng "Import" để cài đặt chứng chỉ public key của CA vào "Trusted root certification authorities
    • 41. Chạy IIS Manager
      Add Certificate vào
      Setup cho trang web muốn bảo mật bằng SSL
      Bảo mật trang web IIS bằng SSL
    • 42. 1. Tạo file Request Certificate2. Xin SSL Certificate từ VeriSign.com3. Cấu hình Trusted Root Certification Authority4. Import SSL Certificate cho Web Server5. Kiểm tra kết quả
      Bảo mật website với SSL certificate Trial của VeriSign.com
    • 43. Logon Administrator, mở Internet Information Services (IIS) Manager, bung Web Site, chuột phải Default Web Site, chọn Properties- Hộp thoại Default Web Site Properties, qua tab Directory Security, chọn Server Certificate
      Tạo Request Certificate
    • 44. Hộp thoại Welcome to the Web Server Certificate Wizard, chọn Next
    • 45.
    • 46.
    • 47.
    • 48.
    • 49.
    • 50.
    • 51.
    • 52.
    • 53.
    • 54.
    • 55. Copy nội dung file certeq.txt
      2. Xin SSL Certificate từ VeriSign.com
    • 56. Mở Brower, truy cập địa chỉ http://www.verisign.com,chọn Free SSL Trial
    • 57. - Trong cửa sổ Free SSL Trial Certificate, nhập đằy đủ thông tin (*: thông tin bắt buộc), chọn Continue
    • 58.
    • 59.
    • 60. Trong ô Select Server Platform, chọn Microsoft. Trong ô Select Version, chọn IIS 6.0. Dán nội dung file certreq.txt vào ô Paste Certificate Signing Request (CSR), optained from your server
    • 61.
    • 62.
    • 63.
    • 64.
    • 65. 3. Cấu hình Trusted Root Certification Authority
    • 66.
    • 67.
    • 68.
    • 69.
    • 70.
    • 71.
    • 72.
    • 73.
    • 74.
    • 75.
    • 76.
    • 77.
    • 78.
    • 79. Mở (IIS) Manager, chuột phải Default Web Site chọn Properties- Trong cửa sổ Default Web Site Properties, qua tab Directory Security, chọn Server Certificate