Template Errors: PAGE_CONTAINER

  1. htmlspecialchars() expects parameter 1 to be string, array given in /var/www/nopviet/library/XenForo/Template/Abstract.php(279) : eval()'d code, line 2338:
    2337: {
    2338: $__compilerVar175 .= '<a href="' . htmlspecialchars($xenOptions['privacyPolicyUrl'], ENT_QUOTES, 'UTF-8') . '">' . 'Privacy Policy' . '</a>';
    2339: }
    

HSTS là gì? Preload list là gì? Hướng dẫn cấu hình HSTS cho Website trên Apache

Thảo luận trong 'Thảo luận chung' bắt đầu bởi An Nguyen, 15/8/17.

  1. An Nguyen

    An Nguyen bụi Staff Member

    Bài viết:
    420
    Điểm:
    28
    Nơi ở:
    Biên Hòa
    Trang chủ:
    HSTS (HTTP Strict Transport Security) là một chính sách bảo mật cần thiết để bảo vệ các trang web bảo mật HTTPS chống lại các cuộc tấn công hạ cấp. HSTS đảm bảo rằng tất cả kết nối tới một website phải được mã hóa bằng giao thức HTTPS, và không bao giờ sử dụng giao thức HTTP.

    Xem ảnh minh hoạt cách thức hoạt động của HSTS
    hsts-enable-disable-error-1.png

    HSTS hoạt động như thế nào?

    HSTS là một hệ thống dựa trên thời gian. Nghĩa là trong khoảng thời gian bạn thiết lập trong max-age (tính bằng giây) sẽ đảm bảo rằng trang web của bạn được phục vụ qua giao thức HTTPS. Khuyên chọn max-age ít nhất 6 tháng (15552000 giây)

    Khi trình duyệt tương tác với webserver đã bật HSTS, nó sẽ tìm một header đặc biệt nói rằng trình duyệt chỉ nên sử dụng giao thức HTTPS để kết nối với server.

    Ngoài ra có một giá trị thời gian max-age liên kết với header trên cho phép trình duyệt biết chủ quản trị server muốn chắc chắn rằng trang web đó chỉ nên được truy cập thông qua HTTPS trong một thời gian định sẵn. Giá trị max-age nên là khoảng thời gian dài, ít nhất 6 tháng, hoặc có thể nhiều năm.

    Khi trình duyệt đã truy cập vào trang web một lần và thấy header trên, trình duyệt sẽ nhớ rằng website này chỉ nên được truy cập thông qua HTTPS trong khoảng thời gian max-age.

    Nếu vì một lý do gì đó bạn muốn reset các thiết lập HSTS được lưu trong Chrome cho domain của bạn. Vào chrome://net-internals/#hsts, nhập domain ở mục Query domain để kiểm tra hoặc xóa domain ở mục Delete domain

    upload_2017-8-15_15-31-29.png

    CÁCH THIẾT LẬP HSTS TRÊN APACHE
    1. Enable module Headers trên Apache

    Mã:
    a2enmod headers
    2. Thêm chỉ dẫn Header Strict-Transport-Security trong file virtual host:
    Mã:
    <VirtualHost *:443>
        #Using HTTP Strict Transport Security
        Header always set Strict-Transport-Security "max-age=63072000; includeSubdomains; preload"
    </VirtualHost>
    Trong đó:
    • Strict-Transport-Security: thông báo header phải được bảo mật
    • max-age: thời gian tính bằng giây để trình duyệt nhớ chỉ được qua truy cập qua https
    • includeSubDomains: Yêu cầu bảo mật cho tất cả subdomain
    • preload: yêu cầu lưu trên danh sách preload list (nên cân nhắc, xem bên dưới)
    Sau đó bạn cần chuyển hướng tất cả trang http sang https trong virtual host như sau
    Mã:
    <VirtualHost *:80>
      ServerName example.com
      Redirect permanent / https://example.com/
    Sau khi hoàn tất restart lại Apache
    Mã:
    service apache2 restart
    Kiểm tra lại bằng trang web https://www.ssllabs.com/ssltest/, kết quả như bên dưới là OK
    upload_2017-8-15_11-25-58.png

    upload_2017-8-15_11-26-52.png

    ĐĂNG KÝ WEBSITE VÀO HSTS PRELOAD LIST
    HSTS Preload list là danh sách các website được chứng nhận bảo mật HSTS và được lưu cứng vào danh sách preload list trên các trình duyệt. Preload list sẽ đảm bảo website của bạn buộc người dùng chuyển đến trang bảo mật https ngay lần đầu tiên họ truy cập vào. Vì vậy bạn nên cân nhắc khi đăng ký preload list cho website của bạn, vì nó yêu cầu tất cả subdomain đều bật HSTS trong một thời gian dài, và nếu chẳng may 1 trong số đó lỗi trang https, thì sẽ rất mất nhiều thời gian (hàng tháng trời) để xóa website khỏi preload list.

    Các yêu cầu để có thể đăng ký website vào HSTS Preload list:
    • Có một chứng chỉ bảo mật
    • Chuyển hướng HTTP tới HTTPS
    • Tất cả subdomain hỗ trợ HTTPS, bao gồm cả www.
    • Thời gian hết hạn (max-age) tối thiểu trong header HSTS là 18 tuần (10886400 giây)
    • Phải có chỉ dẫn includeSubdomainspreload

    Cuối cùng, đợi kết quả chấp thuận sau khoảng vài tuần, sau đó, đợi vài tháng đến khi có bản cập nhật mới của Chrome, Firefox, Edge, domain của bạn sẽ nằm trong danh sách preload list của Google.

    Đăng ký website vào HSTS Preload List tại trang https://hstspreload.org/
    Hoặc xóa website khỏi HSTS Preload List tại trang: https://hstspreload.org/removal/

    Xem thêm:
    https://support.google.com/webmasters/answer/6073543?hl=vi
     
    Sửa lần cuối: 15/8/17
  2. levulamweb

    levulamweb NopNew

    Bài viết:
    1
    Điểm:
    1
    Không biết có bạn nào gặp trường hợp set preload rồi mà browser không tự động redirect không nhỉ? :D
     

Chia sẻ trang này

Đang tải...