Triển khai giải pháp FortiGate SSL Inspection (HTTPS Inspection)

Thảo luận trong 'Firewall Fortigate' bắt đầu bởi chien.bp, 6/9/23.

  1. chien.bp

    chien.bp New Member

    ĐẶT VẤN ĐỀ:
    - Hiện tại bạn có giám sát luồng dữ liệu cho mạng của bạn không? Bạn có thiết bị Tường lửa (Firewall/NGFW) không? Hay có thể là một thiết bị IDS (Phát hiện và cảnh báo xâm nhập)? Thời điểm này gần như các doanh nghiệp đã có cho mình ít nhất 1 giải pháp, vậy bạn có kiểm tra luồng HTTPS? Trong nhiều trường hợp câu trả lời sẽ là 'không'. Vì bạn không có khả năng làm việc đó, hoặc khi bật tính năng SSL Inspection sẽ làm giảm hiệu suất của Firewall đến mức rủi ro.

    - Theo một thống kê vào năm 2021, khoảng 85% lưu lượng truy cập qua web đã được mã hóa. Có thể hiểu rằng traffic đi qua các firewall và thiết bị bảo vệ của bạn thậm chí không đọc được nội dung gói tin.

    - Vậy việc triển khai SSL Inspection có dễ dàng không? Thực tế là nó rất là đơn giản, chỉ cần lưu ý rằng FortiGate có hai loại 'SSL Inspection'.

    SSL Certificate Inspection: FortiGate kiểm tra các các certificate (cert) được trình bày để đảm bảo common name là đúng, (có thể phân giải) và kiểm tra nó dựa trên database của các URL và Certificate có vấn đề.

    SSL Full Inspection (Deep Packet Inspection): FortiGate 'ngắt SSL traffic' và đứng chính giữa, thiết bị giải mã và mã hóa lại traffic trước khi gửi nó tới end-user, hoặc máy chủ đầu xa. Để làm được việc này FW cần được tạo và ký cert cho bất kỳ doman nào, và bạn cần phải 'Trusted' nó để làm như vậy.
    [​IMG]
    - Sau đây chúng ta sẽ đi tìm hiểu thêm về quá trình kiểm tra sâu vào trong gói tin.

    FortiGate SSL Inspection (Đơn giản)
    ! Lưu ý quan trọng: Nếu bạn chỉ bật tính năng này lên mà không có sự chuẩn bị và lên kế hoạch thì kết quả có thể gián đoạn mạng. Luôn nhớ rằng các client của bạn phải 'Trusted' Firewall và ở thời điểm hiện tại có lẽ là vẫn chưa làm bước này.

    - FortiGate đã được tích hợp sẵn 'Certification Authority (CA)', ban đầu bạn sẽ sử dụng nó. Từ giao diện GUI của firewall vào System > Certificates > Locate bạn sẽ thấy cert có tên 'Fortigate_CA_SSL' > hãy tải nó về máy.

    [​IMG]

    - Lưu certificate này vào một trong các client PC của bạn sau đó thực hiện import/trust nó. Ở phần này, ví dụ được thực hiện trên Linux OS, còn trên Windows chỉ cần double-click vào cert, và lưu nó vào phần ‘Trusted Root Authorities

    [​IMG]

    - Lúc này 'Policy' mà đang được áp dụng cho web traffic, bạn cần thay đổi SSL Inspection. Vào Policy & Options > Firewall Policy > chọn policy có web traffic thông thường > click Edit.

    [​IMG]

    - Thay đổi SSL Inspection sang 'deep-inspection' > click OK.

    Lưu ý: Ở ví dụ bên dưới, AntiVirus inspection cũng được bật lên, nhằm mục đích để kiểm tra SSL inspection có đang hoạt động hay không .

    [​IMG]

    - Đến đây, bây giờ các client vào bất kỳ website https:// nào, cert mà client thấy được, nó thường được ký bởi firewall chứ không còn là một vendor certificate public nào bên ngoài.

    [​IMG]

    - Để kiểm tra bạn có thể vào trang web 'Eicar' (website này dùng để kiểm tra các giải pháp AntiVirus và AntiMalware) và thử tải một file về và xem kết quả nhận được.

    [​IMG]

    Những phương án triển khai thực chế Certificate cho client:
    - Trong thực tế hiện nay, vấn đề của bạn gặp phải để 'trusted' các CA đang được ký bởi firewall. Trong bài viết này, mình sẽ đưa ra 3 lựa chọn cho bạn:

    Option 1: Cài đặt thủ công cert trên các client của bạn, nếu mô hình nhỏ thì đây là một lựa chọn hợp lý, cert có thời hạn trong vòng 10 năm.
    • Option 2: Phân phối FortiGates CA signing certificate bằng Group Policy. Dành cho mô hình triển khai trung bình, nếu bạn là một trong những người thường hay sợ gặp lỗi về cert, thì đây sẽ là tùy chọn phù hợp cho bạn.
    • Option 3: Bạn hiện đã triển khai Certificate Services PKI rồi, bạn có thể SubCA cert cho firewall để thực hiện ký kết và các client domain của bạn sẽ tự động trust certificate đó.

    - Tùy vào mô hình của bạn, hãy lựa chọn một phương án triển khai mà bạn thấy khả thi và nhanh chóng nhất.

    1. Triển Khai FortiGate CA Signing Certificate Bằng Group Policy:
    - Trên Fortigate bạn cần phải tải một bản CA certificate để sử dụng, thông thường nó được gọi là Fortigate_CA_SSL. Từ giao diện quản lý GUI > System > Certificates > chọn Fortigate_CA_SSL > Download > Save File về máy.

    [​IMG]

    - Trên Domain controller > mở Administrative tools >Group Policy Management > Create a new policy (hoặc bạn cũng có thể thay đổi trên GPO hiện có). Bên dưới mình đang liên kết tới domain của root, có thể bạn muốn liên kết domain với các OUs chứa các đối tượng là máy tính.

    [​IMG]

    - Thay đổi trên Policy mới và đi vào theo các mục: Computer Configuration > Policies > Windows Settings > Security Settings >Public Key Policies > Trusted Root Certification Authorities > chuột phải chọn Import.

    [​IMG]

    - Theo trình hướng dẫn, làm theo các bước và chọn certificate từ FortiGate > đảm bảo rằng nó sẽ được lưu vào mục Trusted Root Certification Authority!

    [​IMG]

    - Đóng của sổ cài đặt policy, sau đó chờ 1 khoảng thời gian hoặc thực hiện Force a Domain Policy Refresh.

    2. Thay FortiGate SSL Inspection CA Cert với Microsoft Certificate Services SubCA Cert:
    - Thường đây sẽ là lựa chọn ưu tiên của các doanh nghiệp, nếu bạn triển khai PKI phù hợp trong domain của mình thì client của bạn hiện sẽ trust nó, vì vậy tất cả những gì bạn phải làm là sử dụng một SubCA cert cho firewall.

    Chuẩn bị Microsoft PKI và triển khai Certificate Services:
    - Ngay cả với việc triển khai Microsoft Certificate Services, bạn chỉ cần kiểm tra nhanh xem bạn đã có template cho ‘Subordinate Certification Authority‘ hay chưa.

    [​IMG]

    - Ở đây mình sẽ áp dụng cho certificate của mình bằng cách sử dụng ‘Certificate Authority Web Enrollment Role’ (đây là lựa chọn thêm cho role bạn có thể thêm vào Certificate Services để cho bạn một trang portal để lấy cert). Mở trình duyệt web vào đường dẫn 'https://{FQDN-of-Certificate-Server}/Certsrv' > Request a Certificate > Advanced Certificate Request > Create and Submit a Request to this CA.

    [​IMG]

    • Template: Subordinate Certification Authority
    • Name: tên miền FQDN của firewall (phải được phân giải bằng DNS)
    • Email to Country/Region: điền vào thông tin của bạn nếu có thể
    • Key Size: 2048
    • Mark keys as exportable: tick chọn.

    - Click Submit để sang bước kế tiếp.

    [​IMG]

    - Click vào dòng Install this certificate.

    [​IMG]

    3. Sử dụng MMC để Kiểm tra User Certificates:
    - Việc này sẽ rót cert vào trong mục chứa certificates của bạn, lúc này chúng ta cần chọn đường dẫn và export nó. Windows Key +R > mmc.exe > File > Add/Remove Snap-in > Certificates > Add > chọn User Account.

    [​IMG]

    - Mở rộng mục Certificates – Current User > Personal > Certificates > Locate the certificate > All Tasks > Export.

    [​IMG]

    - Click Next > chọn Yes: Export the private key > Next > Personal Information Exchange (PFX) > Next > Password (Nhập 2 lần password) > thay đổi mã hóa thành AES256–SHA256 > Next > chọn nơi chứa certificate lưu về > Next > Finish.

    [​IMG]

    - Quay lại trang GUI của NGFW FortiGate vào mục: System >Certificates > Import Local Certificate.

    [​IMG]

    - Chọn Type: "PKCS # 12" > click Upload > chọn đường dẫn thư mục và certificate mà bạn đã export ở trên > nhập Password > OK.

    [​IMG]

    FortiGate: Tạo mới SSL Inspection Profile:
    - Vào đường dẫn Security Profiles > SSL/SSH Inspection > Create New.

    [​IMG]

    - Đặt tên mới cho Profile > thay đổi CA Certificate thành cert đã upload lên > click OK.

    [​IMG]

    - Để sử dụng SSL Profile trên vào cho chính sách duyệt web, vào mục Policy & Objects > Firewall Policy > chọn Policy dùng để xác định web traffic và thay đổi nó.

    [​IMG]

    - Thay đổi SSL Inspection để sử dụng cho profile mới > click OK.

    [​IMG]

    - Bây giờ bạn có thể kiểm tra phần triển khai bằng cách vào trang web được bảo vệ https và mở xem phần certificate, nó được thực hiện bằng SubCA/Firewall của bạn.

    [​IMG]
     
  2. lucdn

    lucdn Member

    CÀI ĐẶT PRIVATE CA DÙNG CHO DEEP INSPECTION TRÊN FORTIGATE
    -------------------------------------------------------------

    - Thông thường, cần phải thực hiện kiểm tra sâu nội dung của gói tin được mã hóa. Trong cấu hình "Deep Inspection Profile" luôn có yêu cầu chọn một certificate.

    - Hầu hết, chứng chỉ được sử dụng ở đây chỉ đơn giản là Local Certificate chứa Private keyPublic key thường được cài đặt cho SSL VPN.

    - Tuy nhiên, chứng chỉ này sẽ không thể được sử dụng cho việc các kiểm tra gói tin. Thậm chí sẽ không thể thấy tùy chọn để chọn các certificate đó.

    - Lý do là đây không phải là loại certificate phù hợp cần cho việc kiểm tra sâu.

    - Để sử dụng certificate cho Deep Inspection, loại chứng chỉ cần phải là private CA. Một private CA là loại certificate có thể cấp certificate cho thiết bị khác. "X509v3 Basic Constraints CA: True".

    [​IMG]

    - Để không sử dụng Fortinet_CA_SSL certificate, có thể cài đặt Private_CA cert của bạn cho mạng nội bộ:

    1. Trên Domain Controller (DC), cài đặt Windows Certificate Authority.

    2. Sau khi cài đặt xong, sử dụng nó để tạo một Certificate Authority cho domain này.
    [​IMG]
    3. Khi đã tạo xong, nó có thể nhập certificate này từ DC từ Manage Computer Certificate -> Personal Certificate và chọn certificate này.
    [​IMG]
    4. Export certificate này với Private key. Nó sẽ yêu cầu mật khẩu. Nhập mật khẩu vào và export ra.
    [​IMG]
    5. Sau đó, login vào FortiGate, vào trang System -> Certificate, và sau đó chọn loại "PKCS#12". Nhập certificate vào và sử dụng mật khẩu được dùng để export ra.
    [​IMG]
    6. Sau khi Import vào FortiGate, certificate sẽ được hiển thị bên dưới phần Local CA Certificate.
    [​IMG]
    7. Bây giờ, certificate này đã có thể sử dụng vào Deep Inspection Profile.

    8. Nếu PC là một phần của Domain, cảnh báo certificate sẽ không được hiển thị. Như ví dụ dưới đây.
    [​IMG]
    9. Nếu Fortinet_CA_SSL certificate được sử dụng cho Deep Inspection, cảnh báo certificate sẽ hiển thị vì certificate này được xử lý bởi FortiGate.
    [​IMG]
    10. Tuy nhiên, khi Internal Certificate được sử dụng, mọi cảnh báo đã được nhận vì certificate này đã được ký bởi Private CA.
    [​IMG]
     
  3. ptminh

    ptminh Member

    Cập nhật quan trọng về những tính năng liên quan đến Proxy trên thiết bị FortiGate từ phiên bản FortiOS 7.4.4
    --------------------------------

    Là một phần trong việc cải tiến nhằm nâng cao hiệu suất và tối ưu hóa việc sử dụng bộ nhớ trên các model FortiGate có RAM 2 GB trở xuống, kể từ phiên bản 7.4.4, FortiOS không còn hỗ trợ các tính năng liên quan đến proxy. Thay đổi này ảnh hưởng đến các thiết bị FortiGate/FortiWiFi 40F, 60E, 60F, 80E và 90E cùng các biến thể của chúng, và FortiGate-Rugged 60F (chỉ có phiên bản 2 GB).

    Sau khi nâng cấp lên FortiOS 7.4.4 trở lên, các tính năng proxy sau đây không còn được hỗ trợ trên các thiết bị bị ảnh hưởng:

    • Zero Trust Network Access (ZTNA)
      Điều này bao gồm tất cả các đối tượng và chức năng của ZTNA, bao gồm cả việc áp dụng ZTNA tag trong kiểm soát truy cập dựa trên địa chỉ IP/MAC. Ví dụ, ztna-status không còn có thể được bật và ztna-ems-tag và ztna-geo-tag không còn có thể được sử dụng.
    • UTM profile với inspection mode dựa trên proxy.
    • Firewall policy với tính năng inspection mode có bật proxy-based.
    • Explicit và Transparent proxy
    • Những loại máy chủ ảo Layer 7 (HTTP/HTTPS/IMAPS/POP3S/SMTPS/SSL)
    • Những profile UTM chỉ chạy với Proxy:
      • Video Filter
      • Inline CASB
      • ICAP
      • Web application firewall (WAF)
      • SSH Filter
      • DNS filter profile dùng để quét DoT và DoH
    • Tối ưu hóa WAN
    Để xác định những thiết bị FortiGate có RAM 2GB trở xuống, nhập câu lệnh "diagnose hardware sysinfo conserve" trong giao diện cửa sổ CLI. Nếu tổng số giá trị RAM là dưới 2000 MB (1000 MB = 1GB), thì khi đó thiết bị của bạn có 2GB RAM trở xuống.

    Nâng cấp từ các phiên bản Firmware trước đó:
    Trước khi bắt đầu nâng cấp firmware từ một phiên bản hỗ trợ các tính năng có liên quan tới proxy lên FortiOS 7.4.4 trở về sau mà không còn hỗ trợ tính năng proxy trên các model FortiGate 2GB RAM, điều quan trọng là bạn phải xem xét cẩn thận các tình huống nâng cấp sau. Những tình huống mang đến thông tin quan trọng về quá trình nâng cấp và tác động tiềm tàng của nó. Hãy chỉ tiến hành nâng cấp sau khi bạn hiểu đầy đủ và thoải mái với các điều kiện và kết quả tiềm tàng được nêu trong các kịch bản nâng cấp này.

    [​IMG]

    Trước khi bắt đầu quá trình nâng cấp firmware, điều quan trọng là phải tạo một bản backup của cấu hình đang hoạt động hiện tại. Bước này để đảm bảo rằng bạn có thêm lựa chọn dự phòng trong trường hợp có bất kỳ sự cố nào không lường trước trong quá trình nâng cấp.

    Sau khi đã bảo mật bản sao lưu, bạn có thể tiến hành quá trình nâng cấp. Sau khi quá trình nâng cấp hoàn tất thành công, bạn nên xem xét kỹ lưỡng tất cả các Firewall Policy của mình.
     

trang này