Bối cảnh và vấn đề nghiên cứu

Sự phát triển của Internet và mạng máy tính đã tạo điều kiện thuận lợi cho các hoạt động trao đổi dữ liệu điện tử, thư tín trực tuyến và các dịch vụ thương mại điện tử (E-business). Tuy nhiên, thông tin lưu trữ tại các trung tâm dữ liệu cũng như thông tin truyền trên đường truyền mạng đối mặt với nguy cơ bị xâm nhập, đánh cắp, làm sai lệch hoặc giả mạo. Các giao dịch điện tử không được bảo vệ tiềm ẩn nguy cơ mất an toàn hệ thống, gây tổn hại cho các tổ chức và doanh nghiệp.

Trong bối cảnh đó, mã hóa và xác thực trở thành giải pháp cốt lõi nhằm giải quyết 4 yêu cầu an toàn thông tin:

  1. Tính bảo mật (Confidentiality): Đảm bảo thông tin chỉ được đọc bởi thực thể có thẩm quyền.
  2. Tính toàn vẹn (Integrity): Đảm bảo dữ liệu không bị sửa đổi trái phép trong quá trình truyền và lưu trữ.
  3. Tính xác thực (Authentication): Xác minh danh tính của người dùng hoặc thực thể tham gia giao dịch.
  4. Tính chống chối bỏ (Non-repudiation): Đảm bảo các bên không thể phủ nhận hành vi gửi hoặc nhận thông tin.

Đề tài khóa luận tập trung nghiên cứu và thực hiện:

  • Mục tiêu nghiên cứu: Làm rõ nguyên lý vận hành của hạ tầng khóa công khai (PKI) trong việc hỗ trợ xác thực danh tính, chứng nhận kỹ thuật số, giao tiếp an toàn và phân quyền truy cập; xây dựng và triển khai giải pháp quản trị định danh tập trung và tăng cường xác thực sử dụng FreeIPA và công cụ quản lý chứng chỉ Certmonger.
  • Đối tượng nghiên cứu: Các hệ thống cơ sở hạ tầng mạng, các dịch vụ định danh tập trung và toàn bộ các máy trạm (clients) kết nối vào hệ thống FreeIPA.
  • Phạm vi nghiên cứu: Mô hình thử nghiệm được thiết kế và vận hành trên môi trường ảo hóa VMware Workstation.

Cơ sở lý thuyết và phương pháp

Khóa luận kết hợp phương pháp tổng hợp lý thuyết an toàn thông tin và phương pháp thực nghiệm triển khai hệ thống kỹ thuật.

Khung lý thuyết nền tảng

  • Các yếu tố xác thực: Phân loại theo 3 yếu tố cơ bản: yếu tố bẩm sinh (sinh trắc học như vân tay, võng mạc, giọng nói, ADN), yếu tố sở hữu (thẻ an ninh, token, điện thoại, chứng chỉ phần mềm), và yếu tố hiểu biết (mật khẩu, mật ngữ, mã PIN).
  • Các phương pháp xác thực: Xác thực qua Username/Password, giao thức CHAP (Challenge Handshake Authentication Protocol), Token, nhận dạng sinh trắc học (Biometrics), xác thực lẫn nhau (Mutual Authentication), xác thực đa yếu tố (2FA/MFA) và mật khẩu một lần (OTP).
  • Hạ tầng khóa công khai (PKI - Public Key Infrastructure): Tập hợp quy trình, chính sách, phần cứng, phần mềm phục vụ việc cấp phát, quản lý, lưu trữ và thu hồi chứng thư số X.509.
  • Mô hình kiến trúc FreeIPA: Giải pháp quản trị định danh và truy cập tập trung mã nguồn mở, tích hợp giao thức thư mục LDAP, xác thực Kerberos, quản lý chứng chỉ PKI/CA, máy chủ tên miền DNS và đồng bộ thời gian NTP.

So sánh kỹ thuật giữa Khóa công khai và Khóa riêng tư

Khóa luận trình bày sự khác biệt kỹ thuật giữa hai loại khóa trong hệ thống mật mã bất đối xứng:

Tiêu chí so sánh Khóa riêng tư (Private Key) Khóa công khai (Public Key)
Tốc độ mã hóa - giải mã Nhanh hơn Chậm hơn
Công suất tính toán Cần ít hơn Cần nhiều hơn
Kênh truyền khóa Phải truyền qua kênh bảo mật tuyệt đối Không cần kênh truyền bảo mật
Chiều dài khóa Ngắn hơn Dài hơn
Thực thể nắm giữ khóa Chỉ người sở hữu/người nhận Tất cả các bên tham gia kết nối
Mức độ phức tạp quản lý Phức tạp cao trong mạng lớn Mức độ phức tạp thấp
Ứng dụng tạo chữ ký số Không sử dụng trực tiếp để tạo chữ ký Sử dụng để kiểm tra chữ ký số

Phương pháp nghiên cứu thực nghiệm

  • Xây dựng mô hình hệ thống quản trị mạng gồm các hệ điều hành Linux (CentOS 8, Ubuntu) và Windows Server 2012 R2.
  • Thiết lập kịch bản kiểm thử: cài đặt dịch vụ, thiết lập vùng tên miền phân giải DNS, tích hợp nhân bản (Replica), kết nối ủy thác tin cậy (Cross Forest Trust) với Active Directory, và phát hành/thu hồi/gia hạn chứng thư số bằng Certmonger.

Thiết kế và triển khai hệ thống

Kiến trúc phân bổ máy chủ và máy trạm thử nghiệm

Hệ thống thử nghiệm gồm 5 máy ảo triển khai trên phần mềm ảo hóa VMware Workstation:

Tên máy ảo Hệ điều hành Địa chỉ IP Tên miền (Domain Name) Vai trò chức năng
CentOS 1 CentOS 8 192.168.0.30 sv.lan Máy chủ FreeIPA Server chính tích hợp dịch vụ DNS
CentOS 2 CentOS 8 192.168.0.51 sv2.lan Máy chủ FreeIPA Replica (nhân bản dự phòng)
Ubuntu 1 Ubuntu 192.168.0.128 ad.lan Máy chủ phân giải DNS cho hệ thống FreeIPA
Ubuntu 2 Ubuntu 192.168.0.140 cl1.lan Máy trạm khách (FreeIPA Client)
Windows Server Windows Server 2012 R2 192.168.0.141 ad.lan Máy chủ miền Active Directory

Quy trình kỹ thuật triển khai

  1. Cấu hình FreeIPA Server:

    • Đặt hostname máy chủ là sv.lan và khai báo cấu hình IP tĩnh trong /etc/hosts.
    • Cài đặt mô-đun Identity Management: dnf module -y install idm:DL1/dns.
    • Khởi tạo hệ thống quản trị tích hợp DNS: ipa-server-install --setup-dns.
    • Cấu hình tường lửa cho phép các dịch vụ hoạt động: firewall-cmd --add-service={freeipa-ldap,freeipa-ldaps,dns,ntp} --permanent.
  2. Cấu hình DNS Server phụ trợ:

    • Triển khai script cài đặt DNS: wget -O basic-install.sh https://install.net và thực thi trên máy ảo Ubuntu 1.
    • Truy cập giao diện quản trị web của DNS tại IP 192.168.0.128, khai báo bản ghi IP máy chủ FreeIPA và thiết lập domain myhome.lan.
  3. Cấu hình máy trạm FreeIPA Client:

    • Thiết lập hostname cl1.lan trên Ubuntu 2 và trỏ DNS về máy chủ FreeIPA.
    • Cài đặt phần mềm máy khách: sudo apt install freeipa-client.
    • Gia nhập miền quản trị tập trung: ipa-client-install --mkhomedir.
  4. Cấu hình bản sao nhân rộng (FreeIPA Replica):

    • Trên máy chủ chính, tạo vùng phân giải đảo ngược và thêm các bản ghi con trỏ (PTR record):
      • ipa dnszone-add 0.168.192.in-addr.arpa.
      • ipa dnsrecord-add 0.168.192.in-addr.arpa. 30 --ptr-rec sv.lan
      • ipa dnsrecord-add 0.168.192.in-addr.arpa. 51 --ptr-rec sv2.lan
    • Mở dịch vụ nhân rộng trên tường lửa: firewall-cmd --add-service=freeipa-replication --permanent.
    • Trên CentOS 2, thực thi cài đặt bản sao: ipa-replica-install --setup-ca --setup-dns --no-forwarders.
  5. Thiết lập quan hệ tin cậy liên rừng (Cross Forest Trust) với Active Directory:

    • Cài đặt gói mở rộng trên FreeIPA: dnf module -y install idm:DL1/adtrust và kích hoạt bằng lệnh ipa-adtrust-install.
    • Tạo vùng chuyển tiếp DNS (Forward Zone): ipa dnsforwardzone-add myhome.lan 192.168.0.141 --forward-policy=only.
    • Khai báo miền FreeIPA vào Active Directory bằng lệnh dnscmd.
    • Kiểm tra phân giải bản ghi dịch vụ bằng lệnh dig SRV _ldap._tcp.ad.lan.
    • Xác lập quan hệ tin cậy hai chiều: ipa trust-add --two-way=true --type=ad ad.lan --admin Administrator --Password.
  6. Xác thực và quản lý chứng chỉ PKI qua Certmonger:

    • Kiểm tra danh sách chứng chỉ đang được theo dõi trong hệ thống: getcert listgetcert list -c IPA.
    • Tạo cơ sở dữ liệu NSS (Network Security Services) lưu trữ chứng chỉ: mkdir -p /etc/httpd/nssdbcertutil -N -d /etc/httpd/nssdb.
    • Tạo khóa và yêu cầu chứng chỉ mới: certutil -R -d . -a -g 2048 -s CN=sv.lan,O=MYHOME.LAN và gửi yêu cầu bằng ipa cert-request.
    • Xuất và cài đặt chứng chỉ cho dịch vụ HTTP: ipa cert-show $SERIAL_NUMBER --out=web.crt.
    • Thực hiện gia hạn chứng chỉ tự động: ipa-getcert resubmit -i REQUEST_ID.
    • Xác minh tính hợp lệ của chứng chỉ: certutil -L -d . -n Server-Cert.

Nội dung chính theo từng chương

CHƯƠNG 1. TỔNG QUAN VỀ HỆ THỐNG XÁC THỰC

Chương 1 hệ thống hóa các khái niệm nền tảng về xác thực và ủy quyền trong hệ thống thông tin. Tác giả phân tích các yếu tố cấu thành danh tính số, vai trò của việc phân biệt giữa xác thực cục bộ (Local Authentication) và xác thực từ xa (Remote Authentication). Chương này làm rõ hạn chế của mô hình xác thực truyền thống chỉ dựa trên cặp Username/Password (dữ liệu truyền ở dạng văn bản rõ, dễ bị đánh cắp trên đường truyền hoặc đặt mật khẩu yếu). Đồng thời, tác giả giới thiệu các cơ chế tăng cường bảo mật như xác thực bằng thẻ token, chữ ký sinh trắc học, giao thức CHAP, xác thực mật khẩu một lần (OTP), xác thực đa yếu tố (2FA/MFA) và tổng quan về hệ thống phát hiện xâm nhập (IDS).

CHƯƠNG 2. TỔNG QUAN VỀ GIẢI PHÁP XÁC THỰC TRONG HỆ THỐNG FREEIPA

Chương 2 đi sâu vào cấu trúc và cơ chế vận hành của cơ sở hạ tầng khóa công khai (PKI) và nền tảng FreeIPA. Tác giả phân tích 4 thành phần chức năng chính của một hệ thống PKI:

  • Tổ chức chứng nhận (Certificate Authority - CA): Đóng vai trò bên thứ ba tin cậy, chịu trách nhiệm ký phát và thu hồi chứng thư số.
  • Tổ chức đăng ký chứng nhận (Registration Authority - RA): Làm trung gian xác minh thông tin định danh của thực thể cuối trước khi chuyển tiếp yêu cầu đến CA. Khóa luận phân định 3 vai trò trong RA gồm máy chủ RA console, chuyên viên RA Officer và người quản lý RA Manager.
  • Thực thể cuối (End Entity - EE): Các đối tượng sử dụng chứng thư số (người dùng, máy chủ, ứng dụng).
  • Kho lưu trữ chứng nhận (Certificate Repository - CR): Hệ thống lưu trữ chứng thư số và danh sách chứng thư bị thu hồi (Certificate Revocation List - CRL).

Chương 2 cũng trình bày chi tiết các tiêu chuẩn định dạng yêu cầu chứng thư số (PKCS #10 và CRMF), cấu trúc chứng thư X.509, quy trình cấp mới, tạo lại, thu hồi chứng chỉ và các ứng dụng thực tế của PKI trong giao thức SSL/TLS, IPsec/IKE, bảo mật thư điện tử S/MIME, XML Security và chữ ký số trên thiết bị di động.

CHƯƠNG 3. TRIỂN KHAI GIẢI PHÁP TĂNG CƯỜNG XÁC THỰC TRONG HỆ THỐNG QUẢN TRỊ TẬP TRUNG DÙNG FREEIPA

Chương 3 là phần thực nghiệm kỹ thuật, trình bày toàn bộ quy trình thiết lập hệ thống từ mức chuẩn bị môi trường mạng ảo hóa, cài đặt máy chủ FreeIPA, triển khai máy chủ DNS, cấu hình máy trạm Ubuntu Client, đến việc quản lý tài khoản người dùng thông qua cả giao diện dòng lệnh (CLI) lẫn giao diện web (Web GUI). Tác giả thực hiện cấu hình bản sao phân tán FreeIPA Replica nhằm đảm bảo tính sẵn sàng cao, thiết lập quan hệ tin cậy Cross Forest Trust giữa FreeIPA (Linux) và Active Directory (Windows Server 2012 R2), và cấu hình chi tiết chu trình quản lý chứng chỉ số PKI cho dịch vụ web thông qua công cụ NSS và Certmonger.

Kết quả và đóng góp

Kết quả kỹ thuật đạt được

  • Khởi tạo hệ thống quản trị định danh tập trung: Triển khai thành công máy chủ FreeIPA trên hệ điều hành CentOS 8, tích hợp đầy đủ dịch vụ xác thực Kerberos, thư mục LDAP và hệ thống quản lý tên miền DNS.
  • Triển khai cơ chế nhân bản dữ liệu: Cài đặt và vận hành máy chủ FreeIPA Replica thứ hai (CentOS 2), đảm bảo dữ liệu người dùng, chính sách và cơ sở dữ liệu DNS được đồng bộ liên tục.
  • Tích hợp môi trường không đồng nhất (Cross-Platform): Thiết lập thành công mối quan hệ tin cậy hai chiều (Two-way Cross Forest Trust) giữa miền FreeIPA (myhome.lan) và miền Windows Server 2012 R2 Active Directory (ad.lan).
  • Tự động hóa quản lý chứng chỉ số PKI: Thực hiện toàn bộ chu trình quản lý chứng thư X.509 thông qua giao diện dòng lệnh của FreeIPA và công cụ Certmonger, bao gồm: tạo khóa riêng tư 2048-bit, khởi tạo yêu cầu chứng chỉ, ký duyệt chứng chỉ qua IPA CA, xuất chứng chỉ vào NSS DB, gia hạn chứng chỉ tự động theo ID (20220421093633), và xác thực tính hợp lệ của chứng chỉ dịch vụ web (certutil: certificate is valid).
  • Chuẩn hóa quản trị người dùng: Thực thi các tác vụ quản trị danh tính tập trung (thêm người dùng ipa user-add, đổi mật khẩu ipa passwd, khóa tài khoản ipa user-disable, mở khóa tài khoản ipa user-enable, truy vấn ipa user-find, xóa tài khoản ipa user-del) đồng bộ trên toàn bộ máy trạm.

Đóng góp thực tiễn

  • Đưa ra quy trình cụ thể về việc kết hợp các phần mềm mã nguồn mở để xây dựng hạ tầng xác thực an toàn, giảm thiểu chi phí bản quyền phần mềm cho doanh nghiệp.
  • Cung cấp tài liệu thực nghiệm chi tiết về các bước lệnh và cấu hình tích hợp giữa hệ sinh thái quản trị Linux (FreeIPA) và Windows (Active Directory).

Hạn chế và hướng nghiên cứu tiếp

Khóa luận chỉ ra các hạn chế kỹ thuật và phạm vi phát triển:

  • Hạn chế kỹ thuật:
    • Quá trình xác thực Windows Server 2012 R2 vào hệ thống gặp khó khăn do giao diện người dùng của Tổ chức phát hành chứng chỉ Windows Server 2012 R2 từ chối ký chứng chỉ.
    • Hệ thống yêu cầu phải khởi tạo thêm một máy chủ DNS phụ trợ riêng biệt trên Ubuntu để hỗ trợ phân giải tên miền cho hệ thống FreeIPA.
    • Hạn chế về tài nguyên phần cứng máy chủ ảo hóa khiến mô hình chưa thể cấu hình một hệ thống quy mô lớn hoàn chỉnh để áp dụng ngay vào môi trường thực tế tại cơ quan.
  • Hướng phát triển:
    • Tiếp tục hoàn thiện mô hình, xử lý triệt để việc tương thích chứng chỉ giữa CA của Windows và CA của FreeIPA.
    • Mở rộng phạm vi ứng dụng của hệ thống FreeIPA vào các cơ quan, tổ chức và các doanh nghiệp quy mô vừa và nhỏ.

Giá trị tham khảo

Báo cáo khóa luận cung cấp các giá trị tham khảo hữu ích:

  • Đối tượng tham khảo: Sinh viên chuyên ngành Kỹ thuật mạng, An toàn thông tin, Quản trị hệ thống máy tính và các kỹ sư hạ tầng phụ trách quản trị hệ sinh thái Linux/Windows.
  • Nội dung giá trị: Các tài liệu hướng dẫn từng bước (step-by-step CLI commands) về việc cấu hình FreeIPA Server, thiết lập Active Directory Trust, cấu hình vùng phân giải thuận/nghịch DNS và quy trình quản trị chứng thư số X.509 bằng bộ công cụ NSS/Certmonger.

Câu hỏi thường gặp

1. Khách hàng (Client) trong FreeIPA giao tiếp với dịch vụ PKI theo cơ chế nào?
Khách hàng của FreeIPA và các dịch vụ của họ không được phép giao tiếp trực tiếp với hạ tầng PKI. Thay vào đó, máy khách gửi yêu cầu thông qua API của máy chủ FreeIPA bằng cơ chế xác thực Kerberos tiêu chuẩn. Sau đó, dịch vụ web của FreeIPA sẽ xác thực yêu cầu này và chuyển tiếp tới dịch vụ PKI bằng cách sử dụng chứng chỉ tác nhân riêng (ipaCert lưu trữ tại thư mục /etc/httpd/alias/).

2. Quá trình gia hạn chứng thư số PKI trong mô hình thực nghiệm được thực hiện bằng lệnh gì?
Việc gia hạn chứng thư số được thực hiện thông qua công cụ quản lý Certmonger với câu lệnh:

ipa-getcert resubmit -i REQUEST_ID

Trong kịch bản thực nghiệm của khóa luận, mã định danh yêu cầu được sử dụng để gia hạn chứng chỉ là 20220421093633.

3. Hệ thống thử nghiệm sử dụng các hệ điều hành nào và phân bổ ra sao?
Mô hình sử dụng tổng cộng 5 máy ảo trên VMware Workstation:

  • 2 máy CentOS 8 (1 máy đóng vai trò FreeIPA Server chính kiêm DNS, 1 máy làm FreeIPA Replica).
  • 2 máy Ubuntu (1 máy làm DNS Server phân giải phụ trợ, 1 máy làm FreeIPA Client).
  • 1 máy Windows Server 2012 R2 (đóng vai trò Active Directory Server).

4. Khóa luận sử dụng các định dạng chuẩn nào cho các yêu cầu chứng thư số gửi lên CA?
Hệ thống sử dụng hai định dạng thông điệp chuẩn gồm:

  • PKCS #10: Định dạng thông điệp chuẩn gửi đến CA để yêu cầu cấp phát chứng nhận khóa công khai.
  • CRMF: Định dạng thông điệp gửi đến CA nhằm yêu cầu thiết lập bất kỳ trường nào của chứng nhận định dạng X.509.

5. Khó khăn chính gặp phải khi tích hợp FreeIPA với Active Directory trên Windows Server 2012 R2 là gì?
Khó khăn lớn nhất ghi nhận trong quá trình thực nghiệm là việc xác thực Windows Server 2012 R2 vào hệ thống bị cản trở do giao diện người dùng của Tổ chức phát hành chứng chỉ (Certificate Authority) trên Windows Server 2012 R2 từ chối ký chứng chỉ từ hệ thống bên ngoài.

Kết luận

Khóa luận của tác giả Phan Hữu Minh Nhân đã tổng hợp cơ sở lý thuyết về an toàn xác thực và hạ tầng khóa công khai PKI, đồng thời triển khai thành công mô hình thực nghiệm hệ thống quản trị định danh tập trung dùng FreeIPA trên nền tảng ảo hóa. Đề tài đã thiết lập thành công các tính năng quan trọng gồm quản trị tài khoản người dùng tập trung, nhân bản máy chủ dự phòng (Replica), ủy thác tin cậy liên rừng với Windows Active Directory và tự động hóa chu trình cấp phát, gia hạn chứng chỉ số PKI. Mặc dù còn hạn chế về khả năng ký chứng chỉ chéo với Windows Server 2012 R2 và điều kiện phần cứng thử nghiệm, kết quả của đề tài đóng vai trò là tài liệu tham khảo kỹ thuật cho việc triển khai các giải pháp bảo mật nguồn mở trong quản trị mạng doanh nghiệp.