Việc ứng dụng công nghệ thông tin vào sản xuất và kinh doanhhiện nay của các doanh nghiệp diễn ra rất sôi nổi, đặc biệt là việc doanh nghiệp đã xâudựng các trang thông tin điện tử để quả
Trang 1LỜI MỞ ĐẦUThời đại công nghệ thông tin phát triển đến chóng mặt với rất nhiều các phần mềmứng dụng khác nhau đã mang lại những tiện ích và hiệu quả cao trong mọi lĩnh vực.Cùng với đó là sự phát triển lớn mạnh không ngừng và tăng về số lượng các công ty,doanh nghiệp trong nước nói chung và thế giới nói riêng Nếu doanh nghiệp biết ứngdụng công nghệ thông tin vào quản lý sản xuất sẽ đem lại nhiều lợi thế không nhỏ trongphát triển và cạnh tranh Việc ứng dụng công nghệ thông tin vào sản xuất và kinh doanhhiện nay của các doanh nghiệp diễn ra rất sôi nổi, đặc biệt là việc doanh nghiệp đã xâudựng các trang thông tin điện tử để quảng bá hình ảnh công ty và sản phẩm, sử dụng thưđiện tử để trao đổi và giao dịch các dịch vụ, truy cập internet để tìm kiếm thông tin, thuhút đầu tư trong nước và ngoài nước …
Để cho website của mình được hàng triệu người trên khắp thế giới có thể truy cậpvào để xem thông tin, giao dịch mua bán, trao đổi trên đó thì cần phải có một nơi để lưutrữ nó trên mạng internet đó là Hosting
Vậy Hosting là gì? Hosting là một thuật ngữ dùng để mô tả những hành vi cung cấpkhông gian đĩa, băng thông và các dịch vụ bảo trì cho các website, email và các hình thứchoạt động internet khác Và Hosting thường được hiểu là web hosting - là nơi không giantrên máy chủ có cài dịch vụ internet như: ftp, www… Web hosting là một loại hình lưutrữ trên internet cho phép các cá nhân, tổ chức truy cập được website của họ thông quaworld wide web Web hosting được cung cấp bởi các công ty gọi là Hosting Provider Họcung cấp các không gian khác nhau trên cùng một máy chủ cho các cá nhân, tổ chức cónhu cầu lưu trữ
Do lượng đăng kí hosting lớn mạnh không ngừng mà hiện nay dịch vụ cho thuêhosting đang là một ngành “HOt” trong chuỗi ngành công nghệ thông tin Để quản líđược mục lưu trữ các website của doanh nghiệp trong hệ thống Web hosting giữ được ổnđịnh truy nhập cho các website, tốc độ truy cập … cũng là các vấn đề rất được quan tâmbởi các nhà quản trị của Hosting provider Hiện nay trên thị trường cũng đã cho ra rất
Trang 2nhiều bộ công cụ quản lí hosting: Hosting Cpanel, Hosting Controler, Plesk … các công
cụ quản lí cần phải đảm bảo được các tiêu chí:
- Giao diện thân thiệ, dễ dàng thao tác với cả người lần đầu tiên sử dụng
- Hỗ trợ đầy đủ các công cụ quản trị: FTP manager, File manager …
- Bảo mật được đặt lên hàng đầu
- Tốc độ xử lí nhanh chóng …
Để hiểu rõ được các công cụ quản trị trong lĩnh vực cho thuê Hosting hiện nay, nhóm
đã quyết định chọn đề tài nghiên cứu về các công cụ quản lí hosting và cài đặt sử dụngmột công cụ quản lí cụ thể vào ứng dụng thực tiễn cho doanh nghiệp Đề tài có tên là
“tìm hiểu và triển khai Web Hosting bằng Cpanel cho công ty cổ phần chuyển giao côngnghệ Viettech”
Trang 3CHƯƠNG 1 TỔNG QUAN VỀ WEB HOSTING 1.1 MỘT SỐ KHÁI NIỆM CƠ BẢN
1.1.1 Địa chỉ IP
Một gói tin muốn truyền qua mạng phải có thông tin về địa chỉ trạm nguồn và địa chỉtrạm đích của nơi gói tin được chuyển đi và nơi gói tin được nhận lại, mỗi địa chỉ này làmột trường với độ dài 32bit Người ta gọi đó là địa chỉ IP Địa chỉ IP sẽ phân biệt mộtcách duy nhất các thiết bị khi kết nối vào một mạng, để từ đó giúp cho việc quản lí vàphân phối các thông tin trên mạng được đúng cách Hiện nay người ta sử dụng 2 thế hệđịa chỉ IP đó là IPV4 và IPV6
.Mỗi thiết bị trong một mạng IP được chỉ định bằng một địa chỉ vĩnh viễn (IP tĩnh)bởi nhà quản trị mạng hoặc một địa chỉ tạm thời, có thể thay đổi (IP động) thông quacông cụ DHCP (giao thức cấu hình host động sẽ tự động xác định địa chỉ IP tạm thời)ngay trên Windows Server
Cấu trúc của địa chỉ IP (IPV4), một địa chỉ IP được biểu diễn dưới dạng các số thậpphân và được chia thành 4 octer mỗi octer phân cách nhau bởi một dấu chấm Mỗi octertương ứng với 8bit do vậy con số thập phân lớn nhất mà một octer nhận được là 255.Khuân dạng của địa chỉ IP : X Y32bit Z T
Trong đó X,Y,Z nằm trong miền từ 0…255
Trong 32bit dùng để đánh địa chỉ IP người ta sử dụng 32bit để chia một địa chỉ IPthành 2 phần một là địa chỉ mạng và phần còn lại là địa chỉ thiết bị được nối vào mạng
Để dễ dàng trong việc quản lý nguồn tài nguyên địa chỉ IP thì người ta đã tiến hànhphân chia địa chỉ IP thành các lớp khác nhau Trên thực tế địa chỉ IP được chia thành 5lớp khác nhau đó là A, B, C, D, E nhưng chỉ có 3 lớp đầu tiên được đưa vào sử dụng mộtcách rộng rãi Tổ chức American Registry for Internet Number (ARIN) đã tiến hàngh sắpxếp và phân bổ 3 lớp đầu tiên: các địa chỉ lớp A dành cho các tổ chức chính phủ khácnhau trên thế giới, địa chỉ lớp B dành cho các công ty trung bình và địa chỉ lớp C dànhcho các đối tượng khác 3 lớp có cấu trúc như sau :
Trang 4Lớp A
Lớp B
Lớp C
1.1.2 Domain
Tên miền là một cái tên được viết bằng ngôn ngữ tự nhiên, sử dụng tập ký tự[a z,0 9,.,-] để chỉ đến một địa chỉ IP xác định
Để xác định một cái địa chỉ IP nào đó dựa trên tên miền, người ta phải sử dụng một
hệ thống máy chủ để ánh xạ từ tên miền thành IP
Tên miền được chia thành nhiều cấp, phân biệt bởi dấu chấm (.) Chúng ta xác định
số cấp lần lượt từ phải sang trái bắt đầu từ 1, trong đó cấp lớn hơn là con của cấp nhỏ hơn
Hệ thống tên miền trên Internet:
- Hệ thống tên miền trên internet được quản lý thống nhất bởi một tổ chức quốc tế
và được điều khiển thông qua hệ thống máy chủ quản lý tên miền cấp cao nhất(TLD hay Top Level Domain)
- Khi NSD gõ một địa chỉ URL vào ô address trên trình duyệt, nếu như phần đầucủa địa chỉ này xác định một địa chỉ IP, trình duyệt sẽ kết nối tới máy chủ có địachỉ IP đó Trong trường hợp phần đầu của URL xác định một tên miền, tên miềnnày sẽ được gửi đến hệ thống máy chủ TLD, từ đó qua các dịch vụ cung cấpdomain uỷ quyền để tra địa chỉ IP tương ứng với tên miền Sau khi đã tìm thấy địa
Trang 5chỉ IP, hệ thống máy chủ TLD sẽ trả IP về cho trình duyệt và trình duyệt tiếp tụckết nối tới máy chủ có IP đã nhận được để "đòi" thông tin.
- Các tên miền được cung cấp tới tay người dùng thông qua các đại lý cho thuê tênmiền, và thường theo dạng thuê bao tên miền hàng năm
Các dạng đuôi thông dụng:
- com: Commercial: Dành cho các tổ chức thương mại, doanh nghiệp
- net (Network): Dành cho các nhóm làm việc trên mạng hoặc các trang web chungchung (VD: noigiaitri.net )
- org (Organization): Dành cho các tổ chức nói chung (phi thương mại) vd:phpvn.org
- gov (Government): Dành cho các cơ quan hành chính
- edu (Education): Dành cho các tổ chức giáo dục
- Các hệ thống tên miền cấp quốc gia khác (VD: vn, cn, sg…)
1.1.3 Host
Thuật ngữ host ám chỉ một không gian lưu trữ trên hệ thống máy chủ và các dịch vụkèm theo
Chất lượng của host được đánh gía thông qua:
- Lượng băng thông được sử dụng hàng tháng (Tính theo GB/month hayMB/month)
- Chất lượng của máy chủ/hệ thống máy chủ (CPU, RAM…)
- Băng thông của máy chủ
- Dung lượng ổ cứng chia sẻ
- Số lượng các host đặt trên cùng một hệ thống máy chủ
- Các dịch vụ kèm theo (email, web, ftp, hỗ trợ php, mysql…)
- Khả năng hỗ trợ số lượng user cùng truy cập đồng thời
Các dạng host:
- Cụm máy chủ: Bao gồm nhiều máy chủ (từ vài máy chủ tới hàng ngàn máy chủ)cùng làm việc song song Đây là hệ thống với giá thành cực đắt, có thể lên tới
Trang 6hàng triệu dollar như các "nông trại" máy chủ của Google Hệ thống này có thểphục vụ cho hàng triệu lượt truy cập cùng lúc.
- Máy chủ riêng (Dedicated Server) hay còn gọi là dạng thuê bao máy chủ riêngbiệt, có giá thành tương đối cao (hàng trăm dollar/tháng) Các máy chủ này có thểphục vụ hàng trăm lượt truy cập đồng thời tuỳ thuộc vào cấu hình máy chủ
- Máy chủ riêng ảo (VPS hay Virtual Private Server): Bao gồm một hoặc một sốmáy chủ thực sự được chia thành nhiều máy chủ ảo Loại này rẻ hơn máy chủriêng (khoảng vài chục dollar/tháng), tuy nhiên hiệu năng kém hơn do phải chia
sẻ cho nhiều người dùng
- Web Hosting: Một khoảng không gian lưu trữ đặt trên một máy chủ nào đó Theokhái niệm này, một máy chủ có thể chia thành hàng ngàn Web Hosting Đây làloại dịch vụ rẻ nhất, hiệu suất kém nhất do phải chia sẻ năng lực máy chủ cho quánhiều người sử dụng (vài dollar/tháng) Có một số loại Hosting miễn phí, chủ yếu
là để thử nghiệm dịch vụ hoặc để quảng cáo, song rất dễ bị chết Nếu bạn địnhlàm một trang Web nghiêm chỉnh, hãy từ bỏ ý định sử dụng host miễn phí
1.2 KHÁI NIỆM HOSTING
Web hosting hoặc có thể gọi ngắn gọn là hosting là khái niệm chỉ một không gian lưutrữ trên máy chủ đơn vị tính bằng Megabyte (MB) Không gian lưu trữ đó thực chất chính
là dung lượng đĩa cứng trên máy chủ Tuỳ vào gói hosting (package) mà dung lượng sẽkhác nhau
Ngoài dung lượng đĩa cứng, một số yếu tố khác cũng không kém phần quan trọng:
- Hệ điều hành (OS) của máy chủ: hiện tại có hai loại OS thông dụng là Linux vàWindows Giá cả của một gói hosting bị chi phối khá nhiều vào OS (có thể lênđến 40-50%) Hosting sử dụng Linux sẽ rẻ hơn vài lần so với hosting Windows.Hosting Linux thường sử dụng để chạy các web sử dụng mã nguồn PHP và CSDLMySql Hosting Windows chạy các mã nguồn viết bằng ASP 3.0, ASP.NET vàCSDL MS Access hoặc MS SQL Server
- Băng thông (Bandwidth, BW): là lưu lượng dữ liệu trao đổi qua lại giữa máy chủ
và môi trường Internet Ví dụ bạn chia sẻ một tập tin có kích thước 10 Mb và có 5
Trang 7người download nó Thì điều này có nghĩa bạn tốn 10 Mb dung lượng đĩa cứng đểlưu trữ tập tin trên và BW của bạn đã sử dụng 5 x 10 = 50 Mb cho 5 ngườidownload nó.
- Domains add-on: số lượng domain bạn có thể trỏ (point) tới hosting
- Email accounts: số lượng email đi kèm với hosting
- FTP accounts: số lượng FTP account bạn có thể tạo và dùng nó upload dữ liệu lênhosting
1.3 PHÂN LOẠI HOSTING
Web hosting được phân chia thành rất nhiều loại tuỳ thuộc vào nhu cầu của người sửdụng (khách hàng) Phân chia theo loại máy chủ và vị trí đặt máy chủ có thể phân chiaHosting thành các loại như sau:
1.3.1 Shared Hosting
Là gói hosting phổ thông và có giá rẻ hơn so với các loại khác Hãy hình dung nhàcung cấp hosting có một máy chủ đặt tại data center, họ sẽ “chia nhỏ” tài nguyên của máychủ này thành 5, 10 thậm chí đến 50 hoặc 100 phần nhỏ và cho khách hàng thuê phầnnhỏ đó Shared hosting phù hợp cho website nhỏ có lượng truy cập thấp, tài nguyên sửdụng không nhiều và vì thế giá thuê rất rẻ, trung bình khoảng 2-20 $/tháng tuỳ theo cấuhình
Ưu điểm của loại hosting này:
Nhược điểm:
Trang 8- Cấu hình thấp và tài nguyên hạn chế rất nhiều Ví dụ chỉ cho add vào 1 hoặc 2domain, subdomain hạn chế ở 2 – 4, 1- 2 CSDL… Tài khoản bị tạm dừng nếu mấtquá nhiều CPU/RAM
- Dễ bị tấn công cục bộ từ những người dùng khác trên cùng server nếu người quảntrị máy chủ đó là người không thong thạo trong việc cấu hình bảo mật
1.3.2 Collocated Hosting
Đây là dạng hosting mà khách hàng sẽ tự trang bị máy chủ của mình Sau khi cài đặt
và cấu hình hoàn thiện họ sẽ liên hệ với nhà cung cấp dịch vụ để thuê chỗ đặt máy chủ đótại data center Lúc này nhà cung cấp chỉ lo việc đảm bảo nguồn điện, hệ thống làm lạnh,đường truyền dữ liệu … Khách hàng sẽ có toàn quyền quản lý máy chủ Họ có thể càiđặt các phần mềm phục vụ cho công việc một cách tự chủ Trong một số trường hợp hoặctuỳ vào hợp đồng ký kết giữa hai bên, khách hàng có thể vào data center để thao tác trựctiếp trên máy chủ như cài đặt lại OS, nâng cấp phần cứng … Nhà cung cấp sẽ đóng vaitrò hỗ trợ rất nhỏ Thích hợp cho website của các các công ty lớn
Trong trường hợp hạn chế về mặt kĩ thuật, khách hang có thể ký hợp đồng nhờ nhàcung cấp hỗ trợ trong việc vận hành, bảo trì … máy chủ Hoặc nếu không có khả năngđầu tư máy chủ riền, khách hang có thể sử dụng hai dịch vụ hosting là Dedicated Serverhoặc Virtual Private Server
Trang 91.3.3 Dedicated server ( máy chủ riêng ảo)
Dạng hosting này gần giống với Collocated hosting nhưng ở đây khách hàng sẽ thuêmáy chủ của nhà cung cấp dịch vụ Sau khi cài đặt hoàn tất theo yêu cầu trong hợp đồng,nhà cung cấp sẽ gửi cho khách hàng thông tin đăng nhập cho khách hàng để khách hàng
có thể dùng chức năng quản trị từ xa kết nối vào máy chủ và làm những gì họ cần Đây làloại hosting có giá thành đắt nhất trong các loại (còn tuỳ thuộc vào cấu hình máy chủ)
Ưu điểm: khách hàng có toàn quyền cài đặt và cấu hình theo nhu cầu Giống như tàikhoản Administrator trên chiếc máy tính để bạn của họ
Khuyết điểm:
- Giá thành cao nhất
- Khách hang phải là người am hiểu về hệ điều hành tương ứng, cùng nhiều kiếnthức về mạng, phần mềm, bảo mật Họ sẽ phải cài đặt từ A tới Z, ví dụ như: càiWeb server, FTP server, dịch vụ DNS, cấu hình nhiều thông số khác nhau Mộtngười quản trị có tay nghề thấp có thể sẽ dẫn đến nhiều hậu quả nghiêm trọng.Tóm lại họ phải làm tất cả mọi thứ và trách nhiệm rất lớn lao
1.3.4 Virtual Private Server (VPS) máy chỉ riêng ảo
Ở đây nhà cung cấp dịch vụ sử dụng công nghệ ảo hóa – thong dụng nhất hiện nay làXen chia một máy chủ vật lý thành nhiều máy chủ ảo Trên mỗi máy chủ ảo, được cài đặt
OS như là một máy chủ thật và cho khách hang thuê Đây là một lựa chọn đứng giữaShare Hosting và Dedicated server VPS là sự lựa chọn cho các website có tầm trung
Trang 10người quản trị có tay nghề thấp có thể sẽ dẫn đến nhiều hậu quả nghiêm trọng.Tóm lại họ phải làm tất cả mọi thứ và trách nhiệm rất lớn lao.
1.3.5 Các loại khác
- Free web hosting:Free web hosting là một dịch vụ lưu trữ miễn phí, thường đượcquảng cáo hỗ trợ Free web hosting service thường sẽ cung cấp một tên miền phụ(yoursite.vietcoding.com) hoặc một thư mục (www.vietcoding.com/ ~Yourname) Ngược lại, dịch vụ thu phí thường sẽ cung cấp một tên miền cấp thứhai cùng với các máy chủ Nhiều máy chủ miễn phí không cho phép sử dụng tênmiền riêng
- Reseller hosting:Reseller hosting là một hình thức lưu trữ của máy chủ web màchủ sở hữu tài khoản có khả năng sử dụng tài khỏan của mình để phân bổ lại ổcứng lưu trữ và băng thông để lưu trữ các trang web thay mặt cho bên thứ ba Cácđại lý mua một phần không gian trên máy chủ sau đó họ bán cho khách hàng thulợi nhuận
- Email hosting: Email hosting là một dịch vụ thư điện tử đặc biệt khác với các dịch
vụ email miễn phí hỗ trợ email hay webmail miễn phí Doanh nghiệp thường chạycác dịch vụ lưu trữ thư điện tử riêng (Email hosting) theo tên miền của họ để tăng
uy tín và chứng thực các thông điệp mà họ gửi đi Email hosting cho phép tùychỉnh cấu hình và số lượng lớn các tài khoản
- Video hosting: Video hosting là dịch vụ lưu trữ cho phép các cá nhân để tải lêncác video clip vào một trang web Video máy chủ sau đó sẽ lưu trữ video trênmáy chủ cho phép những người khác để xem đoạn video này Các trang web, chủyếu được sử dụng như là trang web lưu trữ video, thường được gọi là trang webchia sẻ video
- Image hosting: Image hosting là dịch vụ cho phép các cá nhân tải lên các hình ảnhđến một trang web Các hình ảnh được lưu trữ lên máy chủ, và hiển thị thông tincho phép những người khác xem các hình ảnh đó
- File hosting: File hosting là dịch vụ lưu trữ tập tin trực tuyến,File hosting là dịch
vụ lưu trữ được thiết kế đặc biệt để lưu trữ các nội dung tĩnh, điển hình là các tập
Trang 11tin lớn mà không phải là các trang web.Thông thường họ cho phép truy cập quagiao thức FPT được tối ưu hóa phục vụ cho nhiều người sử dụng.
- Windows hosting: Windows hosting à một dịch vụ lưu trữ rất nhiều các trang webtrên một máy chủ chạy hệ điều hành Windows Sever kết nối Internet Mỗi trangweb có phân vùng riêng của mình thường sử dụng các phần mền chia hosting nhưHosting Controller, Plesk
- Linux hosting: Linux hosting là một dịch vụ lưu trữ rất nhiều các trang web trênmột máy chủ chạy hệ điều hành Linux kết nối Internet Mỗi trang web có phânvùng riêng của mình thường sử dụng các phần mền chia hosting như Cpanel,Direct Admin
1.4 LỰA CHỌN HỆ ĐIỀU HÀNH VÀ LOẠI HÌNH HOSTING TRIỂN KHAI
1.4.1 Lựa chọn hệ điều hành
Hệ điều hành windown là hệ điều hành mang tính phổ biến, than thiện, phù hợp vớimọi đối tượng
Hệ điều hành windown luôn không ngừng lớn mạnh và phát triển hơn nữa
Do vậy chọn hệ điều hành windown làm môi trường cài đặt và quản lí
1.4.2 Lựa chọn loại hosting
Với cách phân loại dựa vào tiêu chí về giá thành máy chủ là chủ yếu nên loại hostingphù hợp với các doanh nghiệp vừa và nhỏ thì Shared hosting là một lựa chọn rất dungđắn
Trang 12CHƯƠNG 2 CÁC DỊCH VỤ CÀI ĐẶT 2.1 DỊCH VỤ DNS
IP Vì thế, người ta nghĩ ra cách làm sao ánh xạ địa chỉ IP thành tên máy tính
Ban đầu do quy mô mạng ARPA NET (tiền thân của mạng Internet) còn nhỏ chỉ vàitrăm máy, nên chỉ có một tập tin đơn HOSTS.TXT lưu thông tin về ánh xạ tên máy thànhđịa chỉ IP Trong đó tên máy chỉ là 1 chuỗi văn bản không phân cấp (flat name) Tập tinnày được duy trì tại 1 máy chủ và các máy chủ khác lưu giữ bản sao của nó Tuy nhiênkhi quy mô mạng lớn hơn, việc sử dụng tập tin HOSTS.TXT có các nhược điểm như sau:
- Lưu lượng mạng và máy chủ duy trì tập tin HOSTS.TXT bị quá tải do hiệu ứng “cổchai”
- Xung đột tên: Không thể có 2 máy tính có cùng tên trong tập tin HOSTS.TXT Tuy nhiên do tên máy không phân cấp và không có gì đảm bảo để ngăn chặn việc tạo 2tên trùng nhau vì không có cơ chế uỷ quyền quản lý tập tin nên có nguy cơ bị xung độttên
- Không đảm bảo sự toàn vẹn: việc duy trì 1 tập tin trên mạng lớn rất khó khăn Ví dụnhư khi tập tin HOSTS.TXT vừa cập nhật chưa kịp chuyển đến máy chủ ở xa thì đã có sựthay đổi địa chỉ trên mạng rồi
Tóm lại việc dùng tập tin HOSTS.TXT không phù hợp cho mạng lớn vì thiếu cơ chếphân tán và mở rộng Do đó, dịch vụ DNS ra đời nhằm khắc phục các nhược điểm này.Dịch vụ DNS hay là Domain name system ( dịch vụ phân giải tên miền) hoạt động theo
mô hình Client-Server: phần Server gọi là máy chủ phục vụ tên hay còn gọi là NameServer, còn phần Client là trình phân giải tên - Resolver Name Server chứa các thông tinCSDL của DNS, còn Resolver đơn giản chỉ là các hàm thư viện dùng để tạo các truy vấn
Trang 13(query) và gửi chúng qua đến Name Server DNS được thi hành như một giao thức tầngApplication trong mạng TCP/IP.
DNS là 1 CSDL phân tán Điều này cho phép người quản trị cục bộ quản lý phần dữliệu nội bộ thuộc phạm vi của họ, đồng thời dữ liệu này cũng dễ dàng truy cập được trêntoàn bộ hệ thống mạng theo mô hình Client-Server Hiệu suất sử dụng dịch vụ được tăngcường thông qua cơ chế nhân bản (replication) và lưu tạm (caching) Một hostname trongdomain là sự kết hợp giữa những từ phân cách nhau bởi dấu chấm(.)
2.1.2 Cách phân bổ dữ liệu quản lí Domain Name
Những root nam server (.) quản lý những top-level domain trên Internet Tên máy vàđịa chỉ IP của những name server này được công bố cho mọi người biết
Thông thường một tổ chức được đăng kí một hay nhiều domain name Sau đó mỗi tổchức sẽ cài đặt một hay nhiều name server và duy trì cơ sở dữ liệu cho tất cả những máytính trong domain Những name server của tổ chức được đăng kí trên Internet Một trongnhững Name Server này được biết như là Primary Name Server Nhiều Secondary NameServer được dùng để backup cho Primary Name Server Trong trường hợp Primary bị lỗi,Secondary được sử dụng để phân giải tên Primary Name Server có thể tạo ra nhữngsubdomain và ủy quyền những subdomain này cho những Name Server khác
2.1.3 Cơ chế phân giải tên
CHƯƠNG 3 Phân giải tên thành IP
Root name server : Là máy chủ quản lý các name server ở mức top-level domain Khi
có truy vấn về một tên miền nào đó thì Root Name Server phải cung cấp tên và địa chỉ IPcủa name server quản lý top-level domain (Thực tế là hầu hết các root server cũng chính
là máy chủ quản lý top-level domain) và đến lượt các name server của top-level domaincung cấp danh sách các name server có quyền trên các second-level domain mà tên miềnnày thuộc vào Cứ như thế đến khi nào tìm được máy quản lý tên miền cần truy vấn.Qua trên cho thấy vai trò rất quan trọng của root name server trong quá trình phângiải tên miền Nếu mọi root name server trên mạng Internet không liên lạc được thì mọiyêu cầu phân giải đều không thực hiện được
Hình vẽ dưới mô tả quá trình phân giải grigiri.gbrmpa.gov.au trên mạng Internet
Trang 14Hình 9.3: Phân giải hostname thành địa IP.
Client sẽ gửi yêu cầu cần phân giải địa chỉ IP của máy tính có têngirigiri.gbrmpa.gov.au đến name server cục bộ Khi nhận yêu cầu từ Resolver, NameServer cục bộ sẽ phân tích tên này và xét xem tên miền này có do mình quản lý haykhông Nếu như tên miền do Server cục bộ quản lý, nó sẽ trả lời địa chỉ IP của tên máy
đó ngay cho Resolver Ngược lại, server cục bộ sẽ truy vấn đến một Root Name Servergần nhất mà nó biết được Root Name Server sẽ trả lời địa chỉ IP của Name Server quản
lý miền au Máy chủ name server cục bộ lại hỏi tiếp name server quản lý miền au và đượctham chiếu đến máy chủ quản lý miền gov.au Máy chủ quản lý gov.au chỉ dẫn máy nameserver cục bộ tham chiếu đến máy chủ quản lý miền gbrmpa.gov.au Cuối cùng máyname server cục bộ truy vấn máy chủ quản lý miền gbrmpa.gov.au và nhận được câu trảlời
Các loại truy vấn : Truy vấn có thể ở 2 dạng :
Trang 15- Truy vấn đệ quy (recursive query) : khi name server nhận được truy vấn dạngnày, nó bắt buộc phải trả về kết quả tìm được hoặc thông báo lỗi nếu như truy vấnnày không phân giải được Name server không thể tham chiếu truy vấn đến mộtname server khác Name server có thể gửi truy vấn dạng đệ quy hoặc tương tácđến name server khác nhưng phải thực hiện cho đến khi nào có kết quả mới thôi.
- Truy vấn tương tác (Iteractive query): khi name server nhận được truy vấn dạngnày, nó trả lời cho Resolver với thông tin tốt nhất mà nó có được vào thời điểmlúc đó Bản thân name server không thực hiện bất cứ một truy vấn nào thêm.Thông tin tốt nhất trả về có thể lấy từ dữ liệu cục bộ (kể cả cache) Trong trườnghợp name server không tìm thấy trong dữ liệu cục bộ nó sẽ trả về tên miền và địachỉ IP của name server gần nhất mà nó biết
Trang 16Hình 9.5: IteractivqueryCHƯƠNG 4 Phân giải IP thành tên máy
Ánh xạ địa chỉ IP thành tên máy tính được dùng để diễn dịch các tập tin log cho dễđọc hơn Nó còn dùng trong một số trường hợp chứng thực trên hệ thống UNIX (kiểm tracác tập tin rhost hay host.equiv) Trong không gian tên miền đã nói ở trên dữ liệu -baogồm cả địa chỉ IP- được lập chỉ mục theo tên miền Do đó với một tên miền đã cho việctìm ra địa chỉ IP khá dễ dàng
Để có thể phân giải tên máy tính của một địa chỉ IP, trong không gian tên miền người
ta bổ sung thêm một nhánh tên miền mà được lập chỉ mục theo địa chỉ IP Phầnkhônggian này có tên miền là in- addr.arpa
Mỗi nút trong miền in-addr.arpa có một tên nhãn là chỉ số thập phân của địa chỉ IP
Ví dụ miền in- addr.arpa có thể có 256 subdomain, tương ứng với 256 giá trị từ 0 đến 255của byte đầu tiên trong địa chỉ IP Trong mỗi subdomain lại có 256 subdomain con nữaứng với byte thứ hai Cứ như thế và đến byte thứ tư có các bản ghi cho biết tên miền đầy
đủ của các máy tính hoặc các mạng có địa chỉ IP tương ứng
Trang 17Hình 9.6: Reverse Lookup Zone.
Lưu ý khi đọc tên miền địa chỉ IP sẽ xuất hiện theo thứ tự ngược Ví dụ nếu địa chỉ
IP của máy winnie.corp.hp.com là 15.16.192.152, khi ánh xạ vào miền in-addr.arpa sẽ là152.192.16.15.in- addr.arpa
4.1.1 Phân loại DNS
Có nhiều loại Domain Name Server được tổ chức trên Internet Sự phân loại này tùythuộc vào nhiệm vụ mà chúng sẽ đảm nhận Tiếp theo sau đây mô tả những loại DomainName Server
CHƯƠNG 5 Primary domain name
Mỗi miền phải có một Primary Name Server Server này được đăng kí trên Internet
để quản lý miền Mọi người trên Internet đều biết tên máy tình và địa chỉ IP của Servernày Người quản trị DNS sẽ tổ chức những tập tin CSDL trên Primary Name Server.Server này có nhiệm vụ phân giải tất cả các máy trong miền hay zone
CHƯƠNG 6 Secondary domain name
Mỗi miền có một Primary Name Server để quản lý CSDL của miền Nếu như Servernày tạm ngưng hoạt động vì một lý do nào đó thì việc phân giải tên máy tính thành địa
Trang 18chỉ IP và ngược lại xem như bị gián đoạn Việc gián đoạn này làm ảnh hưởng rất lớn đếnnhững tổ chức có nhu cầu trao đổi thông tin ra ngoài Internet cao Nhằm khắc phụcnhược điểm này, những nhà thiết kế đã đưa ra một Server dự phòng gọi là Secondary(haySlave) Name Server Server này có nhiệm vụ sao lưu tất cả những dữ liệu trên PrimaryName Server và khi Primary Name Server bị gián đoạn thì nó sẽ đảm nhận việc phân giảitên máy tính thành địa chỉ IP và ngược lại Trong một miền có thể có một hay nhiềuSecondary Name Server Theo một chu kỳ, Secondary sẽ sao chép và cập nhật CSDL từPrimary Name Server Tên và địa chỉ IP của Secondary Name Server cũng được mọingười trên Internet biết đến.
Hình 9.13: Zone tranfserCHƯƠNG 7 Caching name server
Caching Name Server không có bất kỳ tập tin CSDL nào Nó có chức năng phân giảitên máy trên những mạng ở xa thông qua những Name Server khác Nó lưu giữ lại nhữngtên máy đã được phân giải trước đó và được sử dụng lại những thông tin này nhằm mụcđích:
- Làm tăng tốc độ phân giải bằng cách sử dụng cache
Trang 19- Giảm bớt gánh nặng phân giải tên máy cho các Name Server.
- Giảm việc lưu thông trên những mạng lớn
Hình 9.14: Bảng cacheCHƯƠNG 8 Resource record
RR là mẫu thông tin dùng để mô tả các thông tin về cơ sở dữ liệu DNS, các mẫu tinnày được lưu trong các file cơ sở dữ liệu DNS (\systemroot\system32\dns)
Trang 20Hình 9.15: cơ sở dữ liệu8.1.1 Mối quan hệ giữa web hosting và DNS
Việc liên kết giữa domain và hosting để tạo ra một nền móng cho website đòi hỏiphải có một yếu tố trung gian trên Internet đó chính là DNS
Khi đã đăng kí dịch vụ web hosting thì nhà cung cấp sẽ cho người đăng kí các địa chỉ
và các day IP để trỏ tới Domain mà bên mua đã đăng kí
Khi đã có các địa chỉ và dãy IP thì chỉ cần khai náo trong hệ thống Domain name,Domain name sẽ tự động kết nối tới web hosting 24/24h
8.2 DỊCH VỤ WEB
8.2.1 Khái niệm
Theo định nghĩa của W3C (World Wide Web Consortium), dịch vụ Web là một hệthống phần mềm được thiết kế để hỗ trợ khả năng tương tác giữa các ứng dụng trên cácmáy tính khác nhau thông qua mạng Internet, giao diện chung và sự gắn kết của nó được
mô tả bằng XML Dịch vụ Web là tài nguyên phần mềm có thể xác định bằng địa chỉURL, thực hiện các chức năng và đưa ra các thông tin người dùng yêu cầu Một dịch vụWeb được tạo nên bằng cách lấy các chức năng và đóng gói chúng sao cho các ứng dụng
Trang 21khác dễ dàng nhìn thấy và có thể truy cập đến những dịch vụ mà nó thực hiện, đồng thời
có thể yêu cầu thông tin từ dịch vụ Web khác Nó bao gồm các mô đun độc lập cho hoạtđộng của khách hàng và doanh nghiệp và bản thân nó được thực thi trên server
Trước hết, có thể nói rằng ứng dụng cơ bản của Dịch vụ Web là tích hợp các hệthống và là một trong những hoạt động chính khi phát triển hệ thống Trong hệ thốngnày, các ứng dụng cần được tích hợp với cơ sở dữ liệu (CSDL) và các ứng dụng khác,người sử dụng sẽ giao tiếp với CSDL để tiến hành phân tích và lấy dữ liệu Trong thờigian gần đây, việc phát triển mạnh mẽ của thương mại điện tử và B2B cũng đòi hỏi các
hệ thống phải có khả năng tích hợp với CSDL của các đối tác kinh doanh (nghĩa là tươngtác với hệ thống bên ngoài – bên cạnh tương tác với các thành phần bên trong của hệthống trong doanh nghiệp)
8.2.2 Giao thức Http
HTTP là một giao thức cho phép Web Browser và Web Server có thể giao tiếp vớinhau HTTP bắt đầu là 1 giao thức đơn giản giống như với các giao thức chuẩn khác trênInternet, thông tin điều khiển được truyền dưới dạng văn bản thô thông qua kết nối TCP
Do đó, kết nối HTTP có thể thay thế bằng cách dùng lệnh telnet chuẩn
Trang 22Giao thức đơn giản yêu-cầu/đáp-ứng (request/response) này đã phát triển nhanhchóng và được định nghĩa lại thành một giao thức phức tạp (phiên bản hiện tại HTTP/1.1) Một trong các thay đổi lớn nhất trong HTTP/1.1 là nó hỗ trợ kết nối lâu dài (persistentconnection).
Trong HTTP/1.0, một kết nối phải được thiết lập đến Server cho mỗi đối tượng màBrowser muốn download Nhiều trang Web có rất nhiều hình ảnh, ngoài việc tải trangHTML cơ bản, Browser phải lấy về một số lượng hình ảnh Nhiều cái trong chúngthường là nhỏ hoặc chỉ đơn thuần là để trang trí cho phần còn lại của trang HTML
8.2.3 Thành phần của web services
CHƯƠNG 9 Web server
Web Server (máy phục vụ Web): máy tính mà trên đó cài đặt phần mềm phục vụWeb, đôi khi người ta cũng gọi chính phần mềm đó là Web Server
Nguyên tắc hoạt động của web server:
Ban đầu Web Server chỉ phục vụ các tài liệu HTML và hình ảnh đơn giản Tuynhiên, đến thời điểm hiện tại nó có thể làm nhiều hơn thế
Đầu tiên xét Web Server ở mức độ cơ bản, nó chỉ phục vụ các nội dung tĩnh Nghĩa làkhi Web Server nhận 1 yêu cầu từ Web Browser, nó sẽ ánh xạ đường dẫn này URL (vídụ: http://www.utehy.edu.vn/index.html) thành một tập tin cục bộ trên máy Web Server.Máy chủ sau đó sẽ nạp tập tin này từ đĩa và gởi tập tin đó qua mạng đến WebBrowser của người dùng Web Browser và Web Server sử dụng giao thức HTTP trongquá trình trao đổi dữ liệu
Trang 23Hình 10.1: Sơ đồ hoạt động của Web Server.
Trên cơ sở phục vụ những trang Web tĩnh đơn giản này, ngày nay chúng đã phát triểnvới nhiều thông tin phức tạp hơn được chuyển giữa Web Server và Web Browser, trong
đó quan trọng nhất có lẽ là nội dung động (dynamic content)
Cơ chê nhận kết nối:
Với phiên bản đầu tiên, Web Server hoạt động theo mô hình sau:
- Tiếp nhận các yêu cầu từ Web Browser
- Trích nội dung từ đĩa
- Chạy các chương trình CGI
- Truyền dữ liệu ngược lại cho Client
Tuy nhiên, cách hoạt động của mô hình trên không hoàn toàn tương thích lẫn nhau.Ví
dụ, một Web Server đơn giản phải theo các luật logic sau:
- Chấp nhận kết nối
- Sinh ra các nội dung tĩnh hoặc động cho Browser
- Đóng kết nối
- Chấp nhận kết nối
- Lập lại quá trình trên
Điều này sẽ chạy tốt đối với các Web Sites đơn giản, nhưng Server sẽ bắt đầu gặpphải vấn đề khi có nhiều người truy cập hoặc có quá nhiều trang Web động phải tốn thời
Trang 24gian để tính toán cho ra kết quả Ví dụ: Nếu một chương trình CGI tốn 30 giây để sinh ranội dung, trong thời gian này Web Server có thể sẽ không phục vụ các trang khác nữa
Do vậy, mặc dù mô hình này hoạt động được, nhưng nó vẫn cần phải thiết kế lại đểphục vụ được nhiều người trong cùng 1 lúc Web Server có xu hướng tận dụng ưu điểmcủa 2 phương pháp khác nhau để giải quyết vấn đề này là: đa tiểu trình (multi-threading)hoặc đa tiến trình (multi-processing) hoặc các hệ lai giữa multi-processing và multi-threading
CHƯƠNG 10 Web client
Là những chương trình duyệt Web ở phía người dùng, như Internet Explorer,Netscape Communicator , để hiển thị những thông tin trang Web cho người dùng WebClient sẽ gửi yêu cầu đến Web Server Sau đó, đợi Web Server xử lý trả kết quả về choWeb Client hiển thị cho người dùng Tất cả mọi yêu cầu đều được xử lý bởi Web Server.CHƯƠNG 11 Web động
Một trong các nội dung động (thường gọi tắt là Web động) cơ bản là các trang Webđược tạo ra để đáp ứng các dữ liệu nhập vào của người dùng trực tiếp hay gián tiếp.Cách cổ điển nhất và được dùng phổ biến nhất cho việc tạo nội dung động là sử dụngCommon Gateway Interface (CGI) Cụ thể là CGI định nghĩa cách thức Web Server chạymột chương trình cục bộ, sau đó nhận kết quả và trả về cho Web Browser của người dùng
đã gửi yêu cầu Web Browser thực sự không biết nội dung của thông tin là động, bởi vìCGI về cơ bản là một giao thức mở rộng của Web Server Hình vẽ sau minh hoạ khi WebBrowser yêu cầu một trang Web động phát sinh từ một chương trình CGI
Trang 25Hình 10.2: Mô hình Xử lý.
Một giao thức mở rộng nữa của HTTP là HTTPS cung cấp cơ chế bảo mật thông tin
“nhạy cảm” khi chuyển chúng xuyên qua mạng
11.1.1 Apache
CHƯƠNG 12 Khái niệm
Apache là một phần mềm có nhiều tính năng mạnh và linh hoạt dùng đê làm webserver
Apache có các đặc điểm:
- Hỗ trợ đầy đủ những giao thức HTTP trước đây như HTTP/1.1
- Có thể cấu hình và mở rộng với những module của công ty thứ 3
- Cung cấp souce code đầy đủ với license không hạn chế
- Chạy trên hệ điều hành như Windows NT/9x, Netware 5.x, OS/2 và trên hầu hếtcác hệ điều hành Unix
CHƯƠNG 13 Sự chứng thực, cấp phép và điều khiển truy cập
Khi nhận một yêu cầu truy cập tài nguyên, web server sẽ đưa ra các tình huống xử lý
Basic authentication
Đối với những thông tin cần bảo mật, khi có yêu cầu truy xuất thông tin này, webserver phải chứng thực những yêu cầu này có hợp lệ hay không Thông thường, thông tinchứng thực bao gồm username và password
o Nếu một tài nguyên được bảo vệ với sự chứng thực, Apache sẽ gửi mộtyêu cầu “401 Authentication” thông báo cho người dùng nhập username vàpassqord của mình Nhận được yêu cầu này, client sẽ trả lời 401 đến servertrong đó có chứa username và password Server sẽ kiểm tra những thông
số này khi nhận được Nếu hợp lệ server sẽ trả về những thông tin yêu cầu,ngược lại nó sẽ trả về một thông báo lỗi
o Bởi giao thức HTTP là một tiêu chuẩn không của riêng ai và cũng khôngthuộc một quốc gia nào, cho nên mỗi yêu cầu đều được xem như nhau