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

Trong bối cảnh mạng Internet phát triển mạnh mẽ, các ứng dụng triển khai trên nền tảng web ngày càng trở nên phổ biến và đa dạng. Đối với nền kinh tế thị trường, việc chuyển đổi và trao đổi dữ liệu, thông tin là nhu cầu thiết yếu phục vụ sự tồn tại và phát triển của các tổ chức, doanh nghiệp. Web Server đóng vai trò công nghệ nền tảng, tạo ra sự thay đổi trong phương thức vận hành của các mô hình dịch vụ B2B (Doanh nghiệp với Doanh nghiệp) và B2C (Doanh nghiệp với Khách hàng).

Đồ án kết thúc môn học "Dịch vụ mạng Internet" với đề tài "Nghiên cứu về Web Server" được thực hiện bởi nhóm sinh viên Khoa Công nghệ Thông tin Kinh doanh thuộc Trường Công nghệ và Thiết kế – Đại học UEH, dưới sự hướng dẫn của ThS. Trần Lê Phúc Thịnh (Mã học phần: 21C1INF50902502; hoàn thành ngày 14 tháng 12 năm 2021).

Nghiên cứu tập trung vào các nhiệm vụ và mục tiêu chính sau:

  1. Hệ thống hóa các khái niệm cơ bản, chức năng cốt lõi và các giao thức mạng ứng dụng trong hoạt động của Web Server (đặc biệt là giao thức HTTP và FTP).
  2. Phân tích các thành phần cấu thành Web Server ở cả hai phương diện: phần cứng chuyên dụng (bo mạch chủ, bộ vi xử lý, bộ nhớ RAM ECC, ổ đĩa SCSI/SAS, bộ điều khiển RAID, bộ cấp nguồn PSU) và phần mềm máy chủ phổ biến (Apache HTTP Server, Nginx, IIS, LiteSpeed).
  3. Hướng dẫn quy trình cài đặt, cấu hình các tham số vận hành, thiết lập bảo mật và khởi tạo website trên hệ thống Internet Information Services (IIS 6.0 trên nền Windows Server).
  4. Phân tích cơ chế hoạt động, luồng xử lý yêu cầu HTTP giữa Web Server và Web Browser, phân loại nội dung tĩnh và động.
  5. Tổng hợp các nguyên tắc và giải pháp đảm bảo an toàn bảo mật cho hệ thống Web Server và ứng dụng web.

Đối tượng nghiên cứu là hệ thống máy chủ dịch vụ web (Web Server), bao gồm kiến trúc phần cứng, phần mềm dịch vụ mạng và các cơ chế truyền thông mạng. Phạm vi thực hành và triển khai cấu hình trong đồ án được thực hiện trên môi trường hệ điều hành Windows Server với dịch vụ IIS 6.0.

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

Khung lý thuyết và công nghệ

  • Mô hình Client – Server: Cơ chế tương tác tiêu chuẩn giữa máy khách gửi yêu cầu (request) và máy chủ tiếp nhận, xử lý và gửi phản hồi (response).
  • Giao thức mạng tầng ứng dụng:
    • Giao thức HTTP (Hypertext Transfer Protocol): Giao thức truyền siêu văn bản phi trạng thái (stateless protocol).
    • Giao thức FTP (File Transfer Protocol): Hoạt động trên cổng kết nối 20 và 21, sử dụng hai tiến trình TCP logic song song là Control Connection (kiểm soát lệnh) và Data Connection (truyền dữ liệu) với ba phương thức truyền: Stream mode, Block mode, và Compressed mode (sử dụng thuật toán run-length encoding).
  • Phần mềm máy chủ Web: Khảo sát các giải pháp công nghệ máy chủ web phổ biến theo báo cáo thị phần của W3Techs gồm Apache HTTP Server, Nginx, Microsoft Internet Information Services (IIS) và LiteSpeed Web Server (LSWS).

Phương pháp nghiên cứu

  • Phương pháp phân tích và tổng hợp lý thuyết: Khảo cứu tài liệu học thuật và tài liệu kỹ thuật chuyên ngành mạng máy tính để làm rõ kiến trúc phần cứng chuyên dụng cho máy chủ và kiến trúc phần mềm (kiến trúc đa luồng, hướng sự kiện, mô-đun hóa).
  • Phương pháp so sánh, đối chiếu: Xây dựng các tiêu chí so sánh giữa Web Server và Web Browser; phân tích ưu điểm, nhược điểm và hiệu năng của các hệ phần mềm máy chủ (Apache, Nginx, LiteSpeed, IIS).
  • Phương pháp thực nghiệm kỹ thuật và triển khai hệ thống: Tiến hành thực hành cài đặt trực tiếp gói dịch vụ IIS 6.0 từ bộ cài Windows Server 2003, cấu hình các thuộc tính của Default Web Site, phân quyền bảo mật thư mục, cấu hình ánh xạ phần mở rộng và khởi tạo website mới trên môi trường mạng cục bộ và định tuyến NAT.

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

Nội dung triển khai thực nghiệm tập trung vào quy trình cài đặt và cấu hình dịch vụ Internet Information Services (IIS 6.0) trên môi trường Windows Server:

Các bước cài đặt thành phần dịch vụ IIS 6.0

  1. Truy cập Control Panel $\rightarrow$ Add or Remove Programs $\rightarrow$ Add/Remove Windows Components.
  2. Chọn thành phần Application Server $\rightarrow$ mở chi tiết mục Internet Information Services (IIS) $\rightarrow$ truy cập World Wide Web Service.
  3. Kích hoạt các gói dịch vụ phụ trợ tùy chọn theo nhu cầu triển khai:
    • Active Server Pages (ASP): Hỗ trợ thông dịch và thực thi các trang web động viết bằng ASP.
    • Internet Data Connector: Hỗ trợ giao tiếp cơ sở dữ liệu cho các ứng dụng web.
    • Remote Administration (HTML) & Remote Desktop Web Connection: Hỗ trợ quản trị cấu hình dịch vụ máy chủ từ xa qua giao diện web.
    • Server Side Includes (SSI): Hỗ trợ nhúng nội dung động từ máy chủ.
    • WebDAV Publishing: Cho phép quản lý tập tin từ xa an toàn qua mạng thông qua cơ chế mã hóa kết hợp SSL hoặc xác thực Windows Authentication thay thế cho FTP thuần.
    • ASP.NET và FrontPage 2002 Server Extensions: Cung cấp nền tảng triển khai ứng dụng web động ASP.NET và quản trị web theo nhóm.
  4. Nạp nguồn cài đặt từ đĩa Windows Server (thư mục I386) với các tập tin hệ thống: ADROT.DL_, ASPPERF.DL, IIS6.CAB.

Cấu hình tham số Default Web Site và khởi tạo Website mới

  • Quản lý Application Pools: Cung cấp môi trường thực thi các Worker Process riêng biệt, phục vụ điều phối và cách ly việc xử lý các luồng HTTP Request.
  • Thiết lập thuộc tính mạng và hiệu năng: Cấu hình địa chỉ IP gán cho website (chế độ gán cụ thể hoặc All Unassigned), xác định cổng TCP dịch vụ HTTP (cổng 80 mặc định), cổng HTTPS qua SSL (cổng 443 mặc định), bật HTTP Keep-Alives, giới hạn băng thông mạng (giới hạn KB/s) và giới hạn số lượng kết nối đồng thời.
  • Cấu hình nhật ký hệ thống (Logging): Thiết lập chu kỳ tạo log định kỳ (Hourly, Daily, Weekly, Monthly) hoặc theo kích thước tập tin tối đa (When file size reaches), chỉ định đường dẫn lưu trữ thư mục log.
  • Cấu hình thư mục gốc (Home Directory) và quyền truy cập: Trỏ đường dẫn cục bộ (Local Path mặc định tại F:\Inetpub\wwwRoot), phân bổ quyền Read (đọc), Write (ghi/cập nhật), Directory Browsing (duyệt thư mục) và Execute Permissions (chọn mức Scripts and Executables).
  • Cấu hình tài liệu mặc định (Documents): Khai báo các trang chủ mặc định (ví dụ: index.htm, default.asp) và điều chỉnh thứ tự ưu tiên hiển thị.
  • Cấu hình bảo mật thư mục (Directory Security):
    • Thiết lập chứng thực và kiểm soát truy cập (Authentication and Access Control) phối hợp cùng phân quyền hệ thống tập tin NTFS; cấu hình tài khoản truy cập ẩn danh IUSR_SERVER1.
    • Thiết lập bộ lọc hạn chế địa chỉ IP và tên miền (IP address and domain name restriction).
    • Cấu hình truyền thông bảo mật qua chứng chỉ máy chủ và chứng chỉ máy khách (Client Certificate / SSL).
  • Khởi tạo Website độc lập qua Website Creation Wizard: Nhập mô tả website, gán IP (hoặc sử dụng Host header để chạy nhiều website trên cùng một IP), trỏ thư mục dữ liệu, cấp quyền chạy script và phân quyền người dùng.

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

Chương 1: Tìm hiểu về Web Server

Chương này cung cấp cái nhìn tổng quan về định nghĩa máy chủ web, các giao thức hoạt động cốt lõi, chức năng và so sánh chi tiết giữa máy chủ web với trình duyệt web. Máy chủ web được định nghĩa là máy tính có dung lượng lưu trữ lớn và tốc độ cao, kết nối mạng mở rộng, cài đặt phần mềm chuyên dụng nhằm quản trị, lưu trữ các tệp HTML, CSS, JavaScript, media và phân phối nội dung tới người dùng qua giao thức mạng.

Văn bản làm rõ chức năng của giao thức HTTP (giao thức phi trạng thái ở tầng ứng dụng), giao thức FTP (truyền tập tin qua cổng 20/21 với 2 kênh TCP điều khiển và truyền dữ liệu độc lập, hỗ trợ 3 chế độ truyền: Stream, Block, Compressed).

Tiêu chí so sánh Web Server (Máy chủ Web) Web Browser (Trình duyệt Web)
Mục đích Lưu trữ và cung cấp tài nguyên, tệp tin khi có yêu cầu Duyệt và hiển thị các trang tài nguyên trên Internet
Cơ chế hoạt động Tiếp nhận, phê duyệt yêu cầu và gửi tài liệu phản hồi Gửi yêu cầu tài liệu/dịch vụ tới máy chủ
Giao thức HTTP Nhận HTTP Request và gửi HTTP Response Gửi HTTP Request và nhận HTTP Response
Mô hình xử lý Dựa trên quy trình (process), luồng (thread) hoặc kết hợp Không có mô hình xử lý đa luồng/quy trình dịch vụ
Lưu trữ dữ liệu Cung cấp vùng lưu trữ tập trung dữ liệu toàn bộ website Lưu trữ dữ liệu người dùng cục bộ qua Cookie
Môi trường cài đặt Triển khai trên máy tính mạng hoặc máy chủ cục bộ Cài đặt trực tiếp trên thiết bị đầu cuối của người dùng
Ví dụ điển hình Apache HTTP Server, Nginx, IIS, LiteSpeed Google Chrome, Mozilla Firefox, Safari

Chương 2: Phần quan trọng cấu thành Web Server

Chương 2 phân tích chuyên sâu hai thành phần cốt lõi cấu thành nên hệ thống máy chủ:

  1. Phần cứng máy chủ (Server Hardware):

    • Bo mạch chủ: Sử dụng chipset chuyên dụng (như Intel E7520, Intel 3000, Intel 5000X thay vì chipset PC thông thường như Intel 845, 865, 945, 975) nhằm hỗ trợ RAM ECC, giao tiếp SAS/SCSI, công nghệ ảo hóa phần cứng và hỗ trợ nhiều socket CPU.
    • Bộ vi xử lý (CPU): Sử dụng dòng vi xử lý chuyên dụng Intel Xeon (chạy trên socket 771, 603, 604 với bộ nhớ đệm L2 lớn, tập lệnh chuyên dụng, kiến trúc nhiều nhân/luồng).
    • Bộ nhớ RAM ECC (Error Checking and Correction): Khả năng tự động kiểm tra và sửa lỗi đơn bit, yêu cầu gửi lại gói tin khi xung đột, hạn chế tình trạng dump màn hình xanh và hỗ trợ thay thế nóng (hot-swap).
    • Ổ lưu trữ HDD: Sử dụng giao tiếp SCSI hoặc SAS (Serial Attached SCSI) với băng thông 600MB/s, tốc độ quay đạt từ 10.000 đến 15.000 vòng/phút (RPM).
    • Bộ điều khiển RAID (RAID Controller): Hỗ trợ quản lý mảng đĩa cứng dự phòng chống lỗi vật lý và tăng tốc độ đọc/ghi, phổ biến ở cấp độ RAID 1 và RAID 5.
    • Bộ nguồn (PSU): Bộ nguồn công suất thực cao, hỗ trợ module dự phòng (redundant power) cho phép thay thế khi gặp sự cố.
  2. Phần mềm máy chủ (Server Software):

    • Apache HTTP Server: Nền tảng mã nguồn mở đa nền tảng (Unix, Windows); cấu trúc dạng module tùy biến cao (mod_ssl, mod_proxy, mod_rewrite, mod_gzip, mod_security); hỗ trợ xử lý đa chế độ (MPM: Event-driven/Async, Threaded, Prefork); cung cấp tính năng Virtual Hosting, tệp cấu hình .htaccess.
    • Nginx: Thiết kế theo kiến trúc đơn luồng, hướng sự kiện không đồng bộ (asynchronous event-driven). Sử dụng mô hình Master Process quản lý các Worker Process, mỗi Worker Connection có khả năng xử lý lên tới 1024 kết nối đồng thời. Hỗ trợ cân bằng tải (load balancing), HTTP caching, Reverse Proxy và giao tiếp ứng dụng qua FastCGI, SCGI, WSGI.
    • Internet Information Services (IIS): Bộ dịch vụ tích hợp sẵn trên nền tảng Microsoft Windows; hỗ trợ sâu cho ứng dụng ASP, ASP.NET, PHP, Perl; kiến trúc module hóa cho phép quản trị linh hoạt và bảo mật.
    • LiteSpeed Web Server (LSWS): Giải pháp thương mại chạy trên Linux, hoàn toàn tương thích với Apache (đọc trực tiếp .htaccess và mod_security), tối ưu tốc độ xử lý PHP cho các hệ quản trị nội dung (WordPress, Joomla, Drupal). Khả năng chịu tải tăng từ 2 đến 5 lần và giảm 98% mức tải hệ thống so với máy chủ truyền thống, tích hợp cơ chế chống DDoS qua kiểm soát kết nối trên từng IP và điều tiết băng thông.

Chương 3: Cài đặt và cấu hình Web Server

Chương 3 trình bày chi tiết hướng dẫn thực hành từng bước (step-by-step) về việc thiết lập môi trường máy chủ IIS 6.0 trên Windows Server:

  • Hướng dẫn cài đặt các gói tính năng từ đĩa cài đặt hệ điều hành (thư mục I386).
  • Khảo sát các tham số của Default Web Site làm mẫu cấu hình.
  • Thiết lập chi tiết các tab: Web Site (IP, Port, Keep-Alive, Log), Performance (Bandwidth, Connections), Home Directory (Local Path, Permissions, Application Pools), Documents (Default Content Page) và Directory Security (Authentication, IP Restrictions, SSL).
  • Tạo trang web mẫu index.htm tại F:\Inetpub\wwwRoot và kiểm tra hoạt động thông qua trình duyệt Internet Explorer cũng như cấu hình NAT trên Router ADSL để truy cập từ ngoài Internet.
  • Hướng dẫn tạo mới một website hoàn chỉnh thông qua trình thuật toán Website Creation Wizard.

Chương 4: Web Server hoạt động như thế nào?

Chương 4 mô tả quy trình tiếp nhận và xử lý yêu cầu mạng:

  • Phân tích cơ chế trao đổi thông điệp HTTP Request và HTTP Response giữa Client và Server.
  • Phân biệt luồng xử lý nội dung tĩnh (static content - Web Server trực tiếp đọc và trả về tệp tĩnh như HTML, CSS, ảnh) và nội dung động (dynamic content - Web Server chuyển tiếp yêu cầu đến Application Server/Script Engine để thực thi mã nguồn, truy vấn cơ sở dữ liệu trước khi tạo trang HTML gửi về Client).
  • Xử lý các mã trạng thái phản hồi chuẩn, bao gồm trường hợp lỗi tài nguyên không tồn tại ("404 Not Found").

Chương 5: An toàn bảo mật Web Server

Chương 5 tổng hợp các biện pháp bảo mật nhằm duy trì tính toàn vẹn và an toàn cho hệ thống máy chủ:

  • Thiết lập mật khẩu phức tạp: Yêu cầu độ dài, kết hợp ký tự đặc biệt nhằm phòng chống tấn công dò quét mật khẩu (brute-force).
  • Bảo mật ứng dụng web: Sử dụng các công cụ kiểm soát xâm nhập như ModSecurity, kiểm soát dữ liệu đầu vào và quản lý phiên làm việc.
  • Bảo mật máy chủ và hệ thống tệp: Kết hợp phân quyền truy cập người dùng NTFS với 6 phương thức xác thực của IIS; áp dụng danh sách kiểm soát truy cập theo dải IP; mã hóa đường truyền bằng giao thức SSL/TLS và chứng chỉ số (Certificate); cấu hình WebDAV an toàn thay cho phương thức truyền FTP thông thường.

Chương 6: Kết luận

Tổng kết lại toàn bộ các nội dung nghiên cứu về máy chủ web, khẳng định vai trò trọng yếu của Web Server trong hạ tầng công nghệ thông tin phục vụ thương mại điện tử, dịch vụ trao đổi thông tin và vận hành doanh nghiệp.

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

Kết quả chính

  • Tổng hợp đầy đủ hệ thống thông số kỹ thuật phần cứng máy chủ chuyên dụng: chuẩn bus RAM ECC, vi xử lý Xeon (socket 771, 603, 604), giao tiếp ổ cứng SAS/SCSI băng thông 600MB/s với tốc độ quay 10.000 - 15.000 RPM, cơ chế dự phòng RAID 1 và RAID 5.
  • Cung cấp các thông số hiệu năng phần mềm máy chủ: cơ chế xử lý 1024 kết nối/worker connection của Nginx; khả năng cải thiện tốc độ từ 2 đến 5 lần và giảm 98% tải máy chủ của LiteSpeed so với Apache.
  • Xây dựng tài liệu hướng dẫn quy trình thực hành triển khai, cấu hình chi tiết dịch vụ IIS 6.0 trên Windows Server với các tham số mạng, thư mục, quyền thực thi, tài liệu mặc định và các lớp bảo mật xác thực người dùng.

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

  • Làm rõ tính ứng dụng của Web Server trong việc chuẩn hóa phương thức truy cập dữ liệu giữa hệ thống đóng gói và hệ thống kế thừa, giải quyết bài toán luân chuyển dữ liệu trong quy trình thương mại điện tử (B2B và B2C).
  • Cung cấp cơ sở kỹ thuật để lựa chọn giải pháp phần mềm máy chủ phù hợp dựa trên yêu cầu kiến trúc (Apache cho tính linh hoạt module, Nginx cho tải tĩnh/cân bằng tải lớn, LiteSpeed cho tối ưu CMS PHP, IIS cho hệ sinh thái công nghệ Microsoft ASP/ASP.NET).

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

  • Hạn chế: Đồ án tập trung thực hành cấu hình trên phiên bản IIS 6.0 chạy trên nền tảng Windows Server 2003 cũ; chưa tiến hành đánh giá thực nghiệm định lượng (benchmark) trực tiếp về thời gian đáp ứng, độ trễ và thông lượng giữa các máy chủ trong cùng một kịch bản kiểm thử tải.
  • Hướng phát triển: Mở rộng nghiên cứu và thực hành triển khai các phiên bản Web Server thế hệ mới trên các hệ điều hành máy chủ hiện đại; nghiên cứu chuyên sâu về thiết lập cụm máy chủ cân bằng tải (load balancing cluster), cấu hình bảo mật nâng cao chống tấn công từ chối dịch vụ phân tán (DDoS) và tích hợp hệ thống tự động hóa triển khai.

Giá trị tham khảo

Đồ án là tài liệu tham khảo phù hợp cho:

  • Sinh viên chuyên ngành Công nghệ thông tin, Hệ thống thông tin kinh doanh, Mạng máy tính đang học phần Dịch vụ mạng Internet hoặc các môn học liên quan đến quản trị mạng và kiến trúc web.
  • Người bắt đầu tìm hiểu về quản trị hệ thống mạng máy tính, cần tài liệu hướng dẫn cơ bản về phần cứng máy chủ và các bước thiết lập máy chủ dịch vụ IIS, cấu hình website tĩnh và động.

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

1. Giao thức FTP trên Web Server hoạt động như thế nào và có những phương thức truyền dữ liệu nào?
Giao thức FTP hoạt động trên cổng 20 và 21 thông qua 2 tiến trình TCP logic song song: Control Connection (duy trì suốt phiên để kiểm soát lệnh) và Data Connection (tạo ra riêng để truyền dữ liệu và tự ngắt khi xong). FTP có 3 phương thức truyền: Stream mode (truyền dòng byte không tiêu đề), Block mode (đóng gói thành các FTP block có tiêu đề), và Compressed mode (nén dữ liệu lặp bằng thuật toán run-length encoding).

2. Điểm khác biệt cơ bản giữa RAM ECC của máy chủ và RAM máy tính thông thường là gì?
RAM ECC (Error Correction Code) có khả năng tự động kiểm tra và sửa lỗi dòng dữ liệu truy xuất đơn bit, yêu cầu gửi lại đúng gói tin bị xung đột, giúp hệ thống không bị treo hoặc xuất hiện màn hình xanh khi xảy ra lỗi bit, đồng thời hỗ trợ tháo lắp nóng (hot-swap) để thay thế khi hư hỏng mà không cần tắt máy chủ.

3. Kiến trúc xử lý yêu cầu của Nginx khác biệt như thế nào so với các máy chủ truyền thống?
Thay vì tạo một luồng riêng cho mỗi yêu cầu như máy chủ truyền thống, Nginx sử dụng kiến trúc hướng sự kiện không đồng bộ (asynchronous event-driven). Trong đó, Master Process điều phối các Worker Process, và mỗi Worker Process chứa các Worker Connection có khả năng xử lý lên đến 1024 yêu cầu đồng thời, giúp tối ưu tài nguyên dưới tải trọng cao.

4. Vì sao WebDAV Publishing lại được đánh giá an toàn hơn phương thức truyền FTP thông thường trong IIS?
WebDAV cung cấp cơ chế bảo vệ mật khẩu và hỗ trợ mã hóa dữ liệu khi máy chủ web chạy dịch vụ SSL (truy cập qua giao thức HTTPS) hoặc sử dụng cơ chế Windows Authentication. Ngược lại, FTP thuần không hỗ trợ mã hóa mật khẩu khi đăng nhập và không mã hóa luồng dữ liệu truyền tải giữa client và server.

5. Trong IIS, thông số "Host header for this Website" được sử dụng nhằm mục đích gì?
Thông số Host header dùng để nhận diện và định tuyến tên website khi người quản trị muốn thiết lập nhiều website khác nhau cùng chia sẻ và hoạt động trên một địa chỉ IP duy nhất của máy chủ.

Kết luận

Đồ án "Nghiên cứu về Web Server" của nhóm sinh viên Trường Công nghệ và Thiết kế – Đại học UEH đã hệ thống hóa toàn diện các kiến thức nền tảng về máy chủ web, từ hạ tầng phần cứng chuyên dụng, các phần mềm máy chủ phổ biến đến nguyên lý truyền thông mạng HTTP/FTP. Thông qua nội dung thực nghiệm cài đặt và cấu hình dịch vụ IIS 6.0 trên Windows Server, đề tài đã minh họa rõ nét các bước thiết lập, quản trị thuộc tính website và triển khai các giải pháp an toàn bảo mật. Công trình là nguồn tài liệu học tập và tham khảo cơ bản, hữu ích cho sinh viên khối ngành công nghệ thông tin trong việc tiếp cận các dịch vụ mạng Internet.