Trang chủ » Lưu trữ » Hướng dẫn cho người mới bắt đầu trang web SSL Certs

    Hướng dẫn cho người mới bắt đầu trang web SSL Certs

    Khi xây dựng một ứng dụng web liên quan đến dữ liệu cá nhân, bảo mật là ưu tiên hàng đầu. Điều này không chỉ đúng với các cửa hàng trực tuyến và giỏ hàng, mà còn đúng với các mạng xã hội phổ biến như Twitter và Foursquare. SSL là một giao thức bảo mật giống như HTTP ở chỗ nó có thể nhận và truyền dữ liệu qua Internet.

    Toàn bộ khái niệm được thừa nhận là một chút phức tạp nhưng không quá khó hiểu. Nếu bạn là quản trị viên web hoặc ai đó chỉ muốn tìm hiểu về chứng chỉ SSL, hướng dẫn này sẽ phù hợp với bạn. Tôi đã tập hợp các thuật ngữ khó hiểu nhất này để trình bày cho người mới bắt đầu. Dành thời gian duyệt ở đây cũng như đọc các bài viết bên ngoài khác về chủ đề này. Bảo mật là yếu tố quyết định thành công của bất kỳ trang web nào và SSL chỉ là bước đệm trong bức tranh lớn hơn.

    SSL là gì?

    Giao thức SSL là viết tắt của Lớp ổ cắm an toàn và ban đầu được phát triển bởi Netscape. Đó là một quá trình trong đó dữ liệu được truyền giữa người dùng và máy chủ được mã hóa / giải mã để không bên thứ ba bên ngoài nào có thể chiếm quyền kết nối.

    SSL hoạt động giống như một hộ chiếu kỹ thuật số xác minh thông tin đăng nhập của cả bạn và máy chủ web cuối. Khi cả hai danh tính được xác minh, SSL cấp một kết nối an toàn thông qua HTTPS. Quá trình này được thực hiện bằng cách sử dụng chứng chỉ. Tôi đã chia nhỏ các khía cạnh chính của chứng chỉ SSL, bao gồm:

    • Tên chủ sở hữu
    • Số sê-ri của chứng chỉ được sử dụng để nhận dạng
    • Ngày hết hạn của Giấy chứng nhận
    • Khóa công khai của Chứng chỉ được sử dụng để mã hóa thông tin
    • Khóa riêng của Chứng chỉ được sử dụng để giải mã thông tin (thường đến từ máy chủ web)

    Bạn không cần phải hiểu đầy đủ việc sử dụng cho tất cả các thông tin này. Trong một số trường hợp, bạn sẽ nhận được một chứng chỉ với nhiều thông tin hơn. Tuy nhiên, không ai trong số đó sẽ ảnh hưởng trực tiếp đến người dùng; nó chỉ ảnh hưởng đến kết nối giữa máy chủ và máy tính từ xa.

    Thiết lập một chứng chỉ

    Bạn rất có thể tìm ra ý chính về cách SSL hoạt động. Đây là một hình thức truyền dữ liệu phức tạp hơn - như chuyển một tin nhắn bên trong két an toàn bị khóa. Không cần thiết phải ghi nhớ các yếu tố chính của chứng chỉ SSL hoặc tìm hiểu cách kết nối với máy chủ web, nhưng tốt nhất là bạn nên hiểu những điều cơ bản của quy trình trước khi thiết lập quy trình của riêng bạn.

    Chứng chỉ SSL thực sự được mua từ một số nhà cung cấp đáng tin cậy trên Web. Mỗi chứng chỉ có một ngày hết hạn, có nghĩa là bạn sẽ phải gia hạn để giữ cho trang web của bạn được bảo mật (thường là hàng năm). Có vẻ như là một nỗi đau thực sự để giải quyết, nhưng may mắn là nhiều máy chủ web phổ biến như FatCow sẽ hỗ trợ bạn trong quá trình thiết lập.

    Trước tiên, bạn cần tạo CSR hoặc Yêu cầu ký chứng chỉ trên máy chủ web của riêng bạn. CSR là cần thiết trước khi bạn có thể có được chứng chỉ SSL. Có thể tự tạo cái này nếu bạn có đầy đủ quyền quản trị trên máy chủ web. Tuy nhiên, chúng tôi khuyên bạn nên liên hệ với máy chủ web trước vì họ có thể sẽ không cho phép bạn tự làm việc này. Thực tế không có hại gì, nó thực sự làm cho công việc của bạn dễ dàng hơn nhiều!

    Sau khi bạn có CSR được mã hóa này, bạn có thể liên hệ với nhà cung cấp chứng chỉ. Chỉ có một số ít các nhà cung cấp đáng tin cậy như Verisign hoặc Thawte. Khi bạn đã mua chứng chỉ, chỉ cần liên hệ với bộ phận hỗ trợ máy chủ web của bạn và họ sẽ vui vẻ cài đặt nó cho bạn.

    Các loại SSL khác nhau

    Cách phổ biến nhất để thiết lập chứng chỉ SSL là trên địa chỉ IP chính của bạn. Điều này được gọi là một Chứng chỉ SSL chuyên dụng. Nó sẽ chỉ áp dụng cho tên miền và máy chủ web của bạn. Không phải ai cũng có đủ tiền để mua một gói lưu trữ dành riêng, nhưng may mắn cho tất cả chúng ta, có những giải pháp khác có sẵn.

    Nói chung, có ba loại chứng chỉ SSL khác nhau mà bạn có thể sử dụng. Một số nhà cung cấp dịch vụ có thể cung cấp chứng chỉ miễn phí dưới dạng ưu đãi dùng thử trong thời gian giới hạn, nhưng các certs này không có nghĩa là an toàn hơn kết nối HTTP tiêu chuẩn và chúng hết hạn nhanh chóng.

    • SSL chuyên dụng - Đây là giải pháp an toàn nhất và rõ ràng nhất. Kết nối HTTPS chỉ được xác minh cho tên miền gốc của bạn được nhắm mục tiêu thông qua địa chỉ IP được chỉ định.
    • SSL được chia sẻ - Các máy chủ web cung cấp dịch vụ lưu trữ được chia sẻ đôi khi sẽ có nhiều tên miền trỏ đến cùng một địa chỉ IP. Trong trường hợp này, máy chủ dễ dàng quản lý một SSL duy nhất trên mỗi máy chủ trải rộng trên một loạt các trang web khác nhau.
    • SSL ký tự đại diện - Chúng có thể tương tự như chứng chỉ SSL chuyên dụng hoặc dùng chung dựa trên cấu hình máy chủ. Các ký tự SSL Wildcard sẽ nhắm mục tiêu nhiều tên miền phụ cho trang web của bạn. Đây là một giải pháp khả thi nếu bạn tách các chức năng khác nhau của trang web của mình, ví dụ: shop.domain.com, checkout.domain.com, v.v..

    Nếu bạn mới bắt đầu, tôi khuyên bạn nên sử dụng thiết lập SSL được chia sẻ. Bạn không thể có khả năng mua một máy chủ web / địa chỉ IP chuyên dụng ngay lập tức. Và ngay cả khi bạn có thể, chi phí của chứng chỉ SSL chuyên dụng là rất lớn. Nhưng đó hoàn toàn là thứ bạn nên xem xét nếu có thể.

    Tuy nhiên, vì hướng dẫn này được nhắm mục tiêu cho người mới bắt đầu, tôi nghĩ rằng một chứng chỉ được chia sẻ là quá đủ để bắt đầu.

    Từng bước từng bước

    Cách tốt nhất để cảm thấy thoải mái với chứng chỉ SSL là thông qua ví dụ làm việc. Hãy tập hợp một chứng chỉ Comodo nhỏ từ Namecheap. Họ có giá cả rất hợp lý, hoàn hảo để bắt đầu. Và vì chúng ta chỉ cần trải qua quá trình và phác thảo nên đây sẽ là tài liệu hoàn hảo cho hướng dẫn này.

    Tạo CSR

    Bây giờ để bắt đầu, chúng tôi cần tạo yêu cầu ký vào phần phụ trợ của máy chủ. Tôi đang sử dụng tài khoản lưu trữ doanh nghiệp thông qua HostGator để kiểm tra một trong các tên miền của mình. Mỗi máy chủ web là một chút khác nhau, vì vậy bạn sẽ phải kiểm tra với nhân viên hỗ trợ nếu bạn gặp sự cố. URL này được sử dụng để tạo CSR trên tài khoản HostGator.

    Lưu ý rằng phần lớn thông tin này phải được khớp với dữ liệu web Whois của tên miền tôi. Tôi sử dụng ứng dụng Whois Domain Tools cung cấp tất cả thông tin mà biểu mẫu này yêu cầu. Nếu bạn đã cài đặt quyền riêng tư tên miền, bạn cần sử dụng dữ liệu này thay vì dữ liệu của riêng bạn để CSR phù hợp.

    Quá trình này có thể mất tới 24 giờ để hoàn tất đăng ký. Tôi nhận được phản hồi của mình trong vòng 15 phút. Hãy tiếp tục và mua chứng chỉ của chúng tôi ngay bây giờ để chúng tôi sẵn sàng cài đặt với yêu cầu ký.

    Hãy mua hàng!

    Các kế hoạch Comodo dao động từ $ 9 / năm đến gần $ 100. Tôi đang xem gói EssentialSSL chỉ tốn 25 đô la hàng năm. Đây không phải là một thỏa thuận xấu khi xem xét một số lựa chọn thay thế.

    Chương trình này đi kèm với chính sách hoàn trả trong 15 ngày nếu chúng tôi không hài lòng với chứng chỉ. Ngoài ra, tên miền của chúng tôi sẽ được bảo mật cho tên miền phụ www và không www. Sau khi thêm gói này vào giỏ hàng của tôi, chúng tôi có thể kiểm tra. Namecheap sẽ yêu cầu tôi đăng nhập vào tài khoản hiện có hoặc đăng ký tài khoản mới.

    Sau khi nhập tất cả dữ liệu tài khoản của tôi, màn hình thanh toán cuối cùng sẽ xuất hiện. Chúng tôi có tùy chọn thanh toán bằng tiền được lưu trong tài khoản, thẻ tín dụng hoặc PayPal của tôi. Nếu mọi thứ diễn ra đúng cách, chúng tôi sẽ được chuyển hướng đến một biểu mẫu xác nhận đơn hàng (bạn cũng sẽ nhận được một e-mail có thông tin này). Mọi thứ có vẻ tốt!

    Cài đặt cuối cùng

    CSR sẽ xuất hiện trong e-mail từ máy chủ web của bạn. Phím này giống như một khối các ký tự và phím lộn xộn. Đây là những gì chúng tôi cần cung cấp để xác minh SSL. Quay trở lại Namecheap, hãy tìm trang của chứng chỉ SSL và nhấp “Kích hoạt”.

    Trên trang mới này, chúng ta cần chọn loại máy chủ và nhập khóa CSR. Tôi đã chọn Apache + OpenSSL làm lựa chọn mặc định. Đây là một thiết lập phổ biến cho Apache, nhưng nếu bạn không chắc chắn, chỉ cần kiểm tra với máy chủ của bạn trước. Lưu ý rằng máy chủ web của bạn phải trả lại lâu hơn Khóa RSA được sử dụng để xác thực riêng tư ở cuối máy chủ. Tất cả những gì chúng ta cần làm là sao chép-dán khóa CSR ngắn hơn vào hộp và gửi.

    Sau đó chúng tôi tạo một e-mail được gửi đến “người phê duyệt” của tên miền. Điều này sẽ chứa một số thông tin về chứng chỉ SSL của bạn và cách kích hoạt nó trên máy chủ. Mẫu đệ trình cuối cùng này sẽ yêu cầu khóa bí mật RSA của chúng tôi cũng như một số thông tin gói SSL bổ sung. Đây là tất cả được cung cấp từ Namecheap sau khi chúng tôi vượt qua CSR.

    Điều đáng chú ý là trên một số máy chủ web, bạn không thể sử dụng SSL trong môi trường dùng chung. HostGator cho phép các doanh nghiệp nâng cấp tài khoản của họ thành địa chỉ IP chính để không có bất kỳ lỗi xung đột nào với chứng chỉ. Biểu mẫu cài đặt SSL từ HostGator rất đơn giản và cũng xác nhận rất nhanh.

    Sau khi máy chủ của bạn xác nhận mọi thứ đều ổn thì chúng ta sẽ sẵn sàng để đi. Hiểu rằng điều này có thể mất từ ​​vài giờ đến một ngày hoặc hơn. Hãy kiên nhẫn và tiếp tục kiểm tra e-mail của bạn. Sau khi xác minh, hãy thử truy cập trang web của bạn qua HTTPS và tất cả các chi tiết chứng chỉ sẽ có trong thanh địa chỉ. Luôn luôn là một cuộc đấu tranh khi bạn mới bắt đầu nhưng đừng ngại yêu cầu trợ giúp từ nhà cung cấp SSL hoặc máy chủ web của bạn nếu cần.

    Quản lý kết nối an toàn

    Tôi đã tìm thấy bài viết hỗ trợ Hostgator này rất hữu ích trong việc tìm hiểu quá trình thiết lập. Ngay cả khi bạn không phải là khách hàng của HostGator, rất có thể bạn sẽ sử dụng cPanel để quản lý bất kỳ máy chủ web từ xa nào. Điều này đúng với Hosting 1 & 1, Bluehost, v.v..

    Nhưng phần tốt nhất về việc sử dụng thiết lập SSL trên máy chủ web của bên thứ 3 là bạn không cần thực hiện thay đổi (hoặc nhiều nhất là thay đổi phút) cho mã của mình! Sau khi bạn mua chứng chỉ, hầu hết các máy chủ web sẽ đủ lịch sự để cài đặt chúng cho bạn. Sau khi mọi thứ hoạt động trơn tru, tất cả các kết nối thông qua HTTP và HTTPS sẽ hoạt động giống hệt nhau.

    Bạn có thể kiểm tra xem chứng chỉ có được xác thực hay không bằng cách kiểm tra thanh địa chỉ URL trong trình duyệt web của bạn. Bạn sẽ nhận thấy một biểu tượng ổ khóa nhỏ biểu thị kết nối SSL đã được xác minh giữa máy tính của bạn và máy chủ web từ xa. Một số trình duyệt thậm chí sẽ hiển thị thêm thông tin chứng chỉ nếu bạn nhấp vào biểu tượng khóa.

    Chuyển hướng Apache .htaccess

    Nếu bạn gặp khó khăn trong việc giữ khách truy cập trên giao thức HTTPS, bạn có thể muốn xem xét sử dụng tập lệnh Redirect. Điều này thường được thiết lập trên các máy chủ Apache bằng một tệp .htaccess, mà nhiều máy chủ web cho phép bạn định cấu hình ngay trong cPanel.

    Tôi đã thêm một số mã mẫu bên dưới mà bạn có thể sử dụng để thiết lập tệp .htaccess của riêng bạn. Điều này sẽ chuyển hướng tất cả lưu lượng truy cập đến https: // với tên miền phụ www. Bạn có thể xóa www để thay vào đó tất cả lưu lượng truy cập sẽ được chuyển đến https://yourdomain.com/ và các quy tắc viết lại vẫn sẽ chạy hoàn hảo.

    RewriteEngine On RewriteCond% HTTPS = tắt RewriteRule ^ (. *) $ Https://www.yourdomain.com/$1 [R = 301, L] RewriteCond% http_host ^ yourdomain.com [NC] RewriteRule ^ (. *) $ https://www.yourdomain.com/$1 [R = 301, L] 

    Tài liệu tham khảo

    Vấn đề khó chịu nhất mà bạn gặp phải là tham chiếu các URL tuyệt đối thay vì đường dẫn tệp tương đối. Điều này sẽ không phải hiển thị một kết nối hoàn toàn bảo mật, thay vào đó tham chiếu đến cảnh báo rằng có “các mặt hàng không bảo đảm” đang được hiển thị trên trang. Nếu bạn gọi bất kỳ loại phương tiện bên ngoài nào: video, hình ảnh, biểu định kiểu, nó phải được thực hiện cục bộ. Tôi đã trình bày một ví dụ dưới đây:

        

    Với bit mã đầu tiên bạn đang tải một tài liệu không an toàn có khả năng lên một trang bảo mật. Đây là phương pháp mà tin tặc thông minh có thể vượt qua mã hóa của bạn. Phần lớn các trường hợp tôi gặp phải phân tích cú pháp thông qua JavaScript hoặc VBScript. Nhưng để an toàn, chỉ cần đảm bảo rằng không có tài sản nào của bạn được lấy trực tiếp qua HTTP.

    Nếu vì bất kỳ lý do gì, bạn phải kéo một tệp qua URL tuyệt đối thì thay vào đó hãy sử dụng HTTPS. Nếu bạn có tệp được lưu trữ trên một trang web hoặc máy chủ bên ngoài, điều này có thể gây ra sự cố do bạn không thể xác minh kết nối HTTPS khác. Làm việc để giữ cho tất cả các phương tiện truyền thông trang web được hợp nhất dưới một IP để bạn không gặp phải những vấn đề này!

    Liên kết liên quan

    • Giải thích như tôi 5: Chứng chỉ bảo mật trực tuyến, SSL, HTTPS là gì và chúng hoạt động như thế nào?
    • Sự phát triển của tính xác thực SSL [Infographic]
    • Tạo và cài đặt chứng chỉ SSL từng bước

    Phần kết luận

    Tôi hy vọng hướng dẫn giới thiệu này đã cung cấp cho bạn một cái nhìn sâu sắc về thế giới SSL. Bảo mật web là một ngành công nghiệp đang bùng nổ, bảo mật nhiều dữ liệu người dùng cá nhân. Tất cả các cửa hàng trực tuyến nổi tiếng bao gồm Amazon và eBay đã sử dụng SSL trong nhiều năm.

    Tôi sẽ thừa nhận rằng SSL / HTTPS không phải là một chủ đề mà bạn chỉ có thể nghiên cứu để hiểu. Tương tự như lập trình, bạn thực sự cần phải lao vào và nhúng tay vào việc thiết lập chứng chỉ của riêng bạn. Đó là một nhiệm vụ khó khăn để đặt ra sau đó, nhưng nó mang lại một cảm giác tuyệt vời về thành tựu trong thời gian dài. Nếu bạn biết bất kỳ hướng dẫn hữu ích hoặc tài liệu liên quan nào khác, vui lòng chia sẻ trong khu vực thảo luận bài.