Tải bản đầy đủ (.pdf) (76 trang)

(Luận văn thạc sĩ) nghiên cứu, thiết kế và triển khai hệ thống mạng máy tính dùng riêng sử dụng phần mềm mã nguồn mở

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.09 MB, 76 trang )

Đại học quốc gia hà nội
Khoa Công nghệ

Hoàng Đắc Đạt

Nghiên cứu, thiết kế và triển khai hệ
thống mạng máy tính dùng riêng sử
dụng phần mềm mà nguồn mở

Luận văn Thạc sĩ

Hà Nội Năm 2003


Đại học quốc gia hà nội
Khoa Công nghệ

Hoàng Đắc Đạt

Nghiên cứu, thiết kế và triển khai hệ thống
mạng máy tính dùng riêng sử dụng phần mềm
mà nguồn mở
Chuyên ngành : Công nghệ Thông tin
MÃ số : 1.01.10

Luận văn Thạc sĩ

Ngời hớng dẫn khoa học: PGS. TS. Vũ Duy Lợi

Hà Nội – 2003



Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

Lời cám ơn

Tôi muốn gửi lời cám ơn chân thành tới tất cả những ngời đÃ
hỗ trợ và giúp đỡ tôi trong quá trình hoàn thành quyển luận văn
này.
Tôi muốn gửi lời cám ơn đặc biệt tới PGS. TS. Vũ Duy
Lợi, ngời đà gợi ý cho tôi hớng nghiên cứu của đề tài, ngời
đà đa ra những nhận xét quý giá và trực tiếp hớng dẫn tôi
trong quá trình nghiên cứu.
Tôi xin cám ơn toàn thể đồng nghiệp tại Trung tâm Công nghệ
Thông tin - Học Viện Công nghệ Bu chính Viễn thông, đơn
vị mà tôi đang công tác, đà có những giúp đỡ cho tôi trong quá
trình công tác và học tập
Cuối cùng, tôi xin gửi những lời cám ơn chân thành nhất tới cha
mẹ, anh em và bè bạn của tôi, những ngời đà có nhiều động
viên, khuyến khích với tôi trong cuộc sống cũng nh trong học
tập.
Hà nội 12 -2003
Hoàng Đắc Đạt

Trang 3



Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

Mục lục
Lời cám ơn........................................................................................................................... 3
thuật ngữ và từ viết tắt............................................................................................. 6
Danh sách các hình vẽ................................................................................................. 7
Danh sách các Bảng...................................................................................................... 8
Mở đầu .................................................................................................................................. 9
Chơng1. Tổng quan .................................................................................................... 11
1.
Yêu cầu đối với hệ thống và ứng dụng........................................................................ 11
1.1.
Các yêu cầu chung đối với hệ thống ................................................................... 11
1.2.
Yêu cầu về hệ thống phần cứng .......................................................................... 12
1.3.
Các yêu cầu về dịch vụ và ứng dụng nền tảng .................................................... 13
2.
Tổng quan về phần mềm mà nguồn mở ...................................................................... 21
2.1.
Định nghĩa........................................................................................................... 21
2.2.
Thực trạng của phần mềm mà nguồn mở............................................................ 25
2.3.

Đặc điểm của các phần mềm mà nguồn mở ....................................................... 29
Chơng 2. Kiến trúc và giải pháp .......................................................................... 31
1.
Kiến trúc tổng thể ....................................................................................................... 31
1.1.
Tổ chức kết nối.................................................................................................... 34
1.2.
Cấu trúc phần mềm ............................................................................................. 34
2.
Các thành phần trong hƯ thèng ................................................................................... 35
2.1.
HƯ thèng tªn miỊn - DNS.................................................................................... 35
2.2.
Hệ thống dịch vụ cơ bản ..................................................................................... 41
2.3.
Hệ thống thông tin th− mơc LDAP ..................................................................... 49
2.4.
HƯ thèng x¸c thùc ng−êi dùng từ xa ................................................................... 52
2.5.
Hệ thống bảo an mạng ........................................................................................ 54
2.6.
Hệ thống quản trị ................................................................................................ 57
2.7.
Hệ thống đảm bảo an toàn dữ liệu ...................................................................... 57
Chơng 3. Triển khai thử nghiệm .......................................................................... 59
1.
Yêu cầu tổ chức hệ thống và ứng dụng ....................................................................... 59
2.
ThiÕt kÕ vµ thùc hiƯn................................................................................................... 60
2.1.

KiÕn tróc hƯ thèng............................................................................................... 60
2.2.
Mô hình Mạng và phần cứng .............................................................................. 61

Trang 4


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

2.3.
3.

Mô hình phần mềm ............................................................................................. 68
Đánh giá kết quả ......................................................................................................... 71

Kết luận ............................................................................................................................. 73
Tài liệu tham khảo ...................................................................................................... 76

Trang 5


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ


Hoàng Đắc Đạt

thuật ngữ và từ viết tắt
ISP

Internet Service Provider

ICP

Internet Content Provider

BIND

Barkeley Internet Name Domain

DNS

Domain Name System

FTP

File Transfer Protocol

GNU

GNU’s Not Unix

GPL


GNU General Public License

GUI

Graphic User Interface

HTTP

Hyper Text Transport Protocol

NAS

Network Access Server

INN

InterNet News

IP

Internet Protocol

JSP

Java Server Page

LDAP
PHP
POP3
RADIUS

RAS

Lightweight Directory Access Protocol
PHP Hypertext Preprocessor
Post Office Protocol version 3
Remote Authentication Dial-In User Service
Remote Access Server

SMTP

Simple Mail Transfer Protocol

SNMP

Simple Network Management Protocol

SSL
UCE

Sercure Socket Layer
Unsolicited Commercial Email

Trang 6


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ


Hoàng Đắc Đạt

Danh sách các hình vẽ
Hình 1.
Hình 2.
Hình 3.
Hình 4.
H×nh 5.
H×nh 6.
H×nh 7.
H×nh 8.
H×nh 9.
H×nh 10.
H×nh 11.
H×nh 12.
H×nh 13.
H×nh 14.
H×nh 15.
H×nh 16.
H×nh 17.
H×nh 18.
H×nh 19.
H×nh 20.
H×nh 21.
H×nh 22.
H×nh 23.

KiÕn trúc tổng thể của một hệ thống mạng dịch vụ .......................................12
Kiến trúc hệ thống mạng máy tính dùng riêng ..............................................14
Các dịch vụ Internet/Intranet cơ bản ............................................................15

Mô hình hệ thống cung cấp dịch vụ Web.......................................................16
Mô hình hệ thống dịch vụ Email....................................................................17
Kiến tróc SNMP ............................................................................................20
KiÕn tróc tỉng thĨ cđa hƯ thèng.....................................................................31
CÊu tróc phần mềm .......................................................................................34
Sơ đồ biểu diễn DNS Server ..........................................................................35
Sơ đồ hoạt động của DNS Server ..............................................................37
Mô hình hoạt động của DNS......................................................................38
Cơ chế truy vấn NS ....................................................................................40
Sơ đồ kết nối hệ thống Email......................................................................42
Sơ đồ quá trình xử lý th ............................................................................42
Sơ đồ biểu diễn hoạt động của ProFTP .....................................................45
Sơ đồ biểu diễn hoạt động của Apache WebServer....................................48
Lợc đồ cấu trúc dữ liệu của LDAP...........................................................50
Sơ đồ đồng bộ dữ liệu của LDAP Server....................................................51
Sơ đồ mô tả quá trình xác thực của Cistron Radius...................................53
Mô hình Cistron Radius trong ISPBox .......................................................53
Mô hình kết nối hệ thống triển khai tại VNPT...........................................60
Mô hình phân lớp mạng .............................................................................63
Sơ đồ phân chia cổng và VLAN trên Switch ..............................................66

Trang 7


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt


Danh sách các Bảng
Bảng 1.
Bảng 2.
Bảng 3.
Bảng 4.
Bảng 5.
Bảng 6.
Bảng 7.
Bảng 8.
Bảng 9.

Mô tả khả năng đáp ứng đối với cấu hình phần cứng ...................................13
So sánh mức độ "mở"của các loại phần mềm................................................24
Thị phần của các phần mềm mà nguồn mở ...................................................26
Điều tra về các hệ điều hành cho Web Server...............................................27
Thị phần của các phần mềm hệ điều hành ....................................................27
Bảng phân bố địa chỉ IP cho các cơ quan VP Tổng Công ty ........................65
Thông số các cổng kết nối .............................................................................67
Bảng định tuyến .............................................................................................67
Phiên bản phần mềm hiện đang sư dơng .......................................................69

Trang 8


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ


Hoàng Đắc Đạt

Mở đầu
Cùng với sự phát triển mạnh mẽ của Công nghệ Thông tin và Truyền thông, ngày nay
nhu cầu về các hệ thống mạng dùng riêng trong các cơ quan, doanh nghiệp hay các tổ
chức đà tăng lên đáng kể. Giải pháp mạng của các đơn vị này đa ra thờng là sử dụng
các sản phẩm thơng mại với giá thành cao, khả năng làm chủ về mặt công nghệ đối
với các sản phẩm này không đợc tốt và khả năng tuỳ biến hệ thống theo từng hoàn
cảnh cụ thể tại đơn vị là không đợc mềm dẻo.
Đối với một quốc gia đang phát triển nh Việt Nam, phơng pháp phát triển phần mềm
theo hớng mà nguồn mở ngày càng khẳng định u thế của mình so với các phơng
pháp phát triển hệ thống theo cách truyền thống. Đội ngũ cán bộ làm Công nghệ Thông
tin ở Việt Nam rất cần cù, chịu khó, khả năng nắm bắt các công nghệ mới thông qua
việc học hỏi từ nhiều nguồn tri thức khác nhau rất tốt nên việc phát triển phần mềm
theo hớng mà nguồn mở là phù hợp.
Hớng nghiên cứu của đề tài là thiết kế, phát triển một hệ thống mạng máy tính dùng
riêng sử dụng các phần mềm mà nguồn mở, tận dụng những nguồn tri thức sẵn có từ
những sản phẩm phần mềm mà nguồn mở để tuỳ biến và xây dựng một giải pháp mạng
cho riêng mình. Giải pháp mạng dùng riêng mà đề tài đề cập tới liên quan tới việc tổ
chức cấu hình phần cứng, thiết kế hệ thống mạng, phát triển các dịch vụ nền tảng cho
hệ thống,...
Đối tợng mà sản phẩm của đề tài nhắm tới chính là các cơ quan, c¸c doanh nghiƯp,
c¸c tỉ chøc hay thËm chÝ c¸c nhà cung cấp dịch vụ Internet có nhu cầu thiết lập hệ
thống mạng dùng riêng của mình. Tuỳ theo hoàn cảnh đặc thù riêng của từng đơn vị mà
giải pháp mạng dùng riêng này sẽ có những tuỳ biến hợp lý để phù hợp với hoàn cảnh
thực tế.
Quá trình nghiên cứu đề tài hoàn toàn dựa trên việc tiếp cận, nắm bắt các gói phần mềm
mà nguồn mở (sản phẩm tri thức của rất nhiều tổ chức, cá nhân gộp lại); chắt lọc và tuỳ
biến những chức năng cần thiết cho giải pháp và lập trình những đoạn mà nguồn cho
các chức năng mới. Việc phát triển thêm các đoạn mà nguồn vào sản phẩm mà nguồn

mở đảm bảo tuân theo chuẩn GNU đà đề ra. Từ các gói phần mềm cụ thể đó, đề tài sẽ

Trang 9


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

đề xuất mô hình kết nối giữa các gói phần mềm để tạo ra một giải pháp hoàn chỉnh
cung cấp các dịch vụ cho hệ thống.
Dựa trên kết quả đạt đợc của đề tài, sản phẩm mà đề tài nghiên cứu sẽ đợc triển khai
tại một đơn vị cụ thể.
Báo cáo của đề tài đợc tập trung vào các vấn đề chính sau:
Chơng một, đề tài sẽ trình bày về nhu cầu sử dụng dịch vụ trong các hệ
thống mạng dùng riêng và trình bày tổng quan về phần mềm mà nguồn mở.
Chơng hai, đề tài sẽ nghiên cøu chi tiÕt vỊ kiÕn tróc tỉng thĨ cđa hƯ thống,
các thành phần có mặt trong hệ thống và cơ chế giao tiếp giữa các thành phần
đó với nhau.
Trong chơng ba, đề tài sẽ báo cáo các kết quả triển khai thử nghiệm đợc
thực hiện đại một đơn vị cụ thÓ.

Trang 10


Luận văn Thạc Sĩ


Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

Chơng1. Tổng quan
1.

Yêu cầu đối với hệ thống và ứng dụng

Đối với một hệ thống mạng nói chung và hệ thống mạng dùng riêng nói riêng, yêu cầu
đối với hệ thống và ứng dụng đợc tập trung vào các phần chính nh sau:
Các yêu cầu chung về kiến trúc của hệ thống
Yêu cầu về hệ thống phần cứng và mạng
Yêu cầu về các dịch vụ và ứng dụng nền tảng
1.1.

Các yêu cầu chung đối với hệ thống

Cơ sở hạ tầng của một hệ thống mạng dùng riêng về cơ bản sẽ bao gồm nhiều lớp:
1.

Cơ sở hạ tầng phần cứng hỗ trợ thực hiện kết nối vật lý cũng nh trao đổi
thông tin.

2.

Hệ điều hành và các công cụ hệ thống cho phép và đảm bảo triển khai các
dịch vụ, yêu cầu đối với lớp này là phải có tính ổn định cao, với các hệ thống
lớn, phải đảm bảo các yêu cầu về tính d thừa dữ liệu (redundancy) và khả

năng bó cụm (clustering).

3.

Lớp các dịch vụ mạng cơ bản hỗ trợ truy nhập, hosting và bảo an hệ thống

4.

Lớp hỗ trợ các công cụ hỗ trợ cho nhà cung cấp dịch vụ quản lý dịch vụ, hỗ
trợ khách hàng, tính cớc...

5.

Lớp các ứng dụng cho khách hàng

Trong đó công nghệ mà nguồn mở có thể đợc áp dụng hiệu quả tại các lớp 3, 4, 5.
Trong phạm vi đề tài, tôi xin tập trung nghiên cứu chủ yếu vào ứng dụng công nghệ mÃ
nguồn mở tại lớp 3 nhằm đảm bảo cung cấp các dịch vụ mạng ổn định và tin cậy cho
các lớp quản lý và ứng dụng bên trên.

Trang 11


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt


Lớp ứng dụng cho khách hàng
Quản lý dịch vụ và khách hàng
Quản lý Truy nhập, Hosting và An ninh Hệ thống
Quản lý Truy nhập, Hosting và An ninh Hệ thống
Hạ tầng cơ sở, thiết bị phần cứng
Hình 1. Kiến trúc tổng thể của một hệ thống mạng dịch vụ
1.2.

Yêu cầu về hệ thống phần cứng

Thiết bị phần cứng cho mạng cung cấp dịch vụ cần đáp ứng yêu cầu về độ tin cậy và ổn
định trong hoạt động. Các máy chủ chế tạo theo chuẩn công nghiệp với cấu hình đủ
mạnh (Pentium III, 256MB-2GB RAM, hỗ trợ RAID) là hoàn toàn đáp ứng đợc các
yêu cầu về phần cøng khi tỉ chøc mét m¹ng víi sè ng−êi sư dụng nhỏ hơn 10.000
ngời trong điều kiện ở Việt Nam.
Để đáp ứng yêu cầu cung cấp dịch vụ mạng có chất lợng cao, chúng ta có thể tham
khảo một số cấu hình sau:
Số ngời truy cập đồng thời

1-100

100 - 500

500-1000

512 MB

2 GB

4 GB


9 GB

9 GB

18 GB

Web server
Dung l−ỵng RAM
Dung l−ỵng ®Üa cøng

Email server
Dung l−ỵng RAM

512 MB

2 GB

4 GB

Dung l−ỵng ®Üa cøng

9 GB

27 GB

54 GB

Proxy/firewall server
Dung l−ỵng RAM


128 MB

512 GB

1 GB

Dung lợng đĩa cứng

9 GB

18 GB

27 GB

LDAP server

Trang 12


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

Số ngời truy cập đồng thời

1-100


100 - 500

500-1000

Dung lợng RAM

64 MB

64 MB

128 MB

Dung lợng đĩa cứng

9 GB

9 GB

9 GB

Bảng 1.

Mô tả khả năng đáp ứng đối với cấu hình phần cứng

Để lựa chọn cấu hình thiết bị phù hợp với quy mô hoạt động của một hệ thống mạng,
chúng ta cần phải khảo sát các nhu cầu của hệ thống, số lợng ngời dùng, các yếu tố
khách quan, cơ sở hạ tầng (về mặt vật lý) của hệ thống. Từ đó chúng ta sẽ đa ra đợc
những cấu hình hợp lý, đảm bảo đáp ứng đợc về mặt kỹ thuật cũng nh tiết kiệm trong
chi phí đầu t.

1.3.

Các yêu cầu về dịch vụ và ứng dụng nền tảng

Để một hệ thống mạng hoạt động hiệu quả, các dịch vụ và ứng dụng nền tảng trên đó
phải đảm bảo cung cấp tới khách hàng đầy đủ các tiện ích tiện lợi, dễ sử dụng. Mô hình
tổng quát về mặt dịch vụ của một hệ thống mạng đợc thể hiện nh− sau:

Trang 13


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

Cơ sở dữ liệu:
Oracle, DB2,
Berkeley,...
ứng dụng Web
(jsp,php,...)
Proxy
(Squid, T.Rex,...)

RADIUS
(Cistron)
IMAP/POP3
(Cyrus)


SMTP
(Postfix)

FTP
(ProFTP)

Firewall

WEB
(Apache)

LDAP
(OpenLDAP)
Router

RAS

ISP2
ISP1

Dial-up
PSTN

Hình 2. Kiến trúc hệ thống mạng máy tính dùng riêng

Các thành phần dịch vụ mà hệ thống cung cấp bao gồm:
Web/ Web Hosting
Th điện tử
News

Truyền file (FTP)
Proxy/Web caching
Tên miền (DNS)
DHCP
Xác thùc ng−êi dïng quay sè tõ xa (RADIUS)
Th«ng tin th− môc (LDAP)

Trang 14

Internet


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

Việc lựa chọn một phần mềm thích hợp trong hệ thống cần phải căn cứ vào các tiêu
chuẩn về:
Các tính năng của phần mềm
Năng lực hoạt động
Khả năng mở rộng
Đơn giản trong tích hợp hệ thống
Dễ dàng khi thực hiện cải tiến và sửa đổi
Các khối chức năng chÝnh cđa hƯ thèng cung cÊp dÞch vơ sÏ bao gồm:
Hệ thống cung cấp các dịch vụ nền tảng bao gåm: web (web hosting vµ web
content upload), email, trun file (FTP),
Dịch vụ thông tin th mục (LDAP) dùng để lu trữ và xác thực thông tin về

ngời dùng
Hệ quản trị cơ sở dữ liệu
Kiểm soát truy nhập hệ thống và bảo an mạng
Các dịch vụ hệ thống khác nh: DHCP, Quản trị mạng bằng giao thức
SNMP, Dịch vụ tên miền - DNS…
DÞch vơ hƯ thèng

HTTP
DÞch vơ WEB

FTP

DNS request

DNS

SMTP
User information request

DÞch vụ Email

LDAP

POP/IMAP

Kiểm soát truy nhập

IP address request

DHCP


RADIUS

Hình 3. Các dịch vụ Internet/Intranet cơ bản

Trang 15


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

1.3.1. Các dịch vụ Nền tảng (WEB, EMAIL, FTP)
Dịch vụ WEB:
Nh đà trình bày trong mô hình các khối chức năng, hệ thống cung cấp dịch vụ Web sẽ
gồm có các máy chủ HTTP, máy chủ FTP và máy chủ LDAP. Chức năng của các máy
chủ này đợc tích hợp nhằm đảm bảo cung cấp:
Hỗ trợ giao thức HTTP cho phép các trình duyệt web (browser) có thể truy
nhập tới các trang web và các ứng dụng web, duy trì dịch vụ web hosting
Cho phép ngời sử dụng hệ thống và quản lý các website có thể quản lý nội
dung các trang web từ xa, thông tin liên quan tới các trang web đợc chuyển
tới máy chủ bằng giao thøc trun file FTP(File Transfer Protocol), viƯc ph©n
chia th− mục lu trữ các website đợc quản lý trong cơ sở dữ liệu của máy
chủ LDAP
Để hỗ trợ quản lý tập trung dịch vụ này, thông tin về các website cũng nh
th mục lu trữ các website này sẽ đợc đa vào cơ sở dữ liệu của máy chủ
LDAP; thông tin về ngời quản lý website và các thông tin xác thực ngời

cập nhật website cũng đợc lu trữ trong cơ sở của LDAP.
ánh xạ th mục/ Xác thực ngời dùng
Đồng bộ hóa

Máy chủ HTTP
WEB

Máy chủ
LDAP

FTP

Hình 4. Mô hình hệ thèng cung cÊp dÞch vơ Web

DÞch vơ Email:
HƯ thèng dÞch vụ email thực hiện các chức năng chính bao gồm:

Trang 16


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

Chuyển email: Phần lớn email đợc chuyển trên mạng sử dụng giao thức
SMTP (Simple Mail Transfer Protocol), bên cạnh giao thức này còn có nhiều
giao thức truyền email khác...

Lu trữ và quản lý email: Ngời sử dụng dịch vụ email và các mail client
thờng dùng các giao thức POP/IMAP để truy nhập tới hòm th của mình.
Quản lý ngời sử dụng hệ thống email: Thông tin liên quan đến kiểm soát
truy nhập vào các hòm th cá nhân đợc lu trữ tập trung trong cơ sở dữ liệu
của LDAP server, mỗi khi nhận đợc các yêu cầu gửi/nhận email, các dịch
vụ tơng ứng sẽ hỏi máy chủ LDAP các thông tin xác thực cần thiết trớc khi
thực hiện các yêu cầu gửi/nhận email.

INTERNET

SMTP

Máy chủ
SMTP

Yêu cầu xác thực ngời dùng

Máy chủ
LDAP

POP
IMAP

Máy chủ
POP/IMAP

Yêu cầu xác thực ngời dùng

Máy trạm


Hình 5. Mô hình hệ thống dịch vụ Email

Dịch vụ FTP:
Dịch vụ truyền file FTP để cung cấp khả năng truyền/nhận file cho ngời sử dụng với
các tính năng:
Cho phép truyền file từ máy trạm lên máy chủ và ngợc lại theo giao thøc
FTP.
H¹n chÕ truy nhËp th− mơc hƯ thèng trong phạm vi dành riêng

Trang 17


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

Cho phép che th mục và file của hệ thống theo các thuộc tính khác nhau.
Có thể hạn chế dung lợng đối với ngời sử dụng (quota).
Xác thực ngời sử dụng
Ghi lại thông tin truy nhập của ngời sử dụng (logging).
1.3.2. dịch vụ Thông tin th mục
Lightweight Directory Access Protocol (LDAP) là một giao thức để thực hiện dịch vụ
truy cập trực tuyến đến các th mục. Nó chạy trực tiếp thông qua TCP, và có thể đợc
sử dụng để truy cập đến các dịch vụ chuẩn của LDAP hoặc truy cập đến các dịch vụ th
mục mà nó đợc hỗ trợ bởi giao thức X.500.
1.3.3. hệ quản trị Cơ sở dữ liệu
Đối với bất kỳ một hệ thống thông tin nào, yếu tố quan trọng hàng đầu là dữ liệu của hệ

thống. Hệ thống mạng dùng riêng bao gồm rất nhiều các dịch vụ hoạt động trên đó.
Chức năng của một hệ quản trị cơ sở dữ liệu là lu giữ, thao tác, quản lý các dữ liệu của
hệ thống.
Hiện nay có rất nhiều các hệ quản trị cơ sở dữ liệu tốt mà chúng ta có thĨ sư dơng, vÝ dơ
nh−: ORACLE, MySQL, PostgreSQL, DB2, …
ViƯc lựa chọn một hệ quản trị cơ sở dữ liệu thích hợp sẽ mang lại tính hiệu quả cho hệ
thống cả kể về mặt kỹ thuật lẫn kinh tế.
1.3.4. Kiểm soát truy nhập hệ thống và bảo an mạng
Kiểm soát truy nhập:
Mỗi khi một modem đợc lắp thêm vào máy tính hay máy chủ truyền thông trong một
tổ hợp mạng, thì mạng sẽ trở nên dễ bị tấn công hơn. Những ngời quản lý mạng cho
phép một số ít công cụ có thể bảo vệ chống lại những cuộc tấn công. Trạng thái của
những hệ thống bảo an thờng đòi hỏi những thiết bị phần cứng đặc biệt hoặc là chỉ là
thích hợp với một số lợng nhỏ những sản phẩm. Vấn đề này tăng lên nhiều lần trong
những hệ thống mạng lớn với nhiều điểm truy cập.
RADIUS (Remote Authentication Dial-In User Service) dịch vụ xác thực ngời dùng
quay số từ xa là một giải pháp bảo an đáp ứng đợc các yêu cầu về truy nhập cũng nh
Trang 18


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

bảo mật cho hệ thống. Giải pháp này không đòi hỏi các thiết bị phần cứng đặc biệt mà
vẫn có khả năng cho phép các máy client truy cập đến hệ thống với các mức bảo an
khác nhau.

Bảo an mạng:
Các giải pháp bảo an thờng đợc sử dụng trong một hệ thống thông tin thờng là các
tờng lửa (firewall), proxy server hoặc hệ thống phát hiện xâm nhập trái phép - IDS
(Intrusion Detection System). Chức năng của các thành phần này thờng là chặn, lọc,
cảnh báo những nguy cơ tấn công từ bên ngoài hệ thống hoặc thậm chí sửa chữa, khôi
phục những phá hoại do các tấn công đó gây ra.
Trong khi firewall đóng vai trò nh nhân viên bảo vệ cơ quan, kiểm tra mọi ngời đến
và đi thì hệ thống kiểm tra xâm nhập giống nh có một mạng lới cảm biến để thông
báo cho bạn biết khi có ai đó xâm nhập, họ đang ở đâu và làm gì. Firewall án ngữ ở
ngõ vào của mạng và chỉ làm việc với những gói tin khi chúng đi vào và đi ra khỏi
mạng. Một khi kẻ xâm nhập đà vợt qua đợc firewall, kẻ đó có thể hoạt động tùy ý
mạngtrên mạng.
1.3.5. Các dịch vụ hệ thống
ứng dụng quản trị mạng bằng giao thức SNMP:
SNMP (Simple Network Management Protocol) giao thức quản trị mạng đơn giản.
SNMP đợc thiết kế dựa trên mô hình Manage/Agent. Vì các Agent đòi hỏi phần mềm
tối thiểu nên đợc gọi là đơn giản. Mọi chức năng xử lý và lu trữ dữ liệu đều nằm
trên hệ quản trị, trong khi chỉ có một tập con của các chức năng đó đợc cài đặt trên hệ
bị quản trị. SNMP bao gồm một tập hạn chế các lệnh quản trị (commands/response).
Hệ quản trị gửi các lệnh Get, GetNext và Set để tìm kiếm các biến đơn, các đối tợng
hoặc để thiết lập giá trị của một biến đơn. Hệ bị quản trị gửi trả lời để hoàn tất các lệnh
trên. Hệ bị quản trị gửi tới hệ quản trị một thông báo sự kiện gọi là bẫy (trap) khi xảy
ra các điều kiện nhất định
SNMP giả định mạng kiểu không liên kết. Dữ liệu đợc truyền mà không cần thiết
lập kết nèi. Thay v× sư dơng TCP/IP, SNMP sư dơng UDP/IP ở các tầng dới.

Trang 19


Luận văn Thạc Sĩ


Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

Hệ quản trị SNMP

Hệ bị quản trị SNMP
Các tài nguyên quản trị

SNMP Manager

GetResponse

Event

Set

Get
Thông điệp SNMP

GetNext

Đối tợng quản trị

ứng dụng quản trị đối tợng

GetResponse


Event

Set

GetNext

Get

ứng dụng quản trị

SNMP Agent

UDP

UDP

IP

IP

Liên kết dữ liệu

Liên kết dữ liệu

Truyền thông
trên mạng

Hình 6. Kiến trúc SNMP

Dịch vụ tên miền DNS:

DNS là một cơ sở dữ liệu phân tán, có trật tự. Nó lu giữ các thông tin ánh xạ tên miền
trên Internet tới địa chỉ IP và ngợc lại, các thông tin về đờng đi của mail, và dữ liệu
của các chơng trình ứng dụng Internet khác.
Các Client tìm kiếm thông tin trong DNS bằng cách gọi tới th viện resolver, th viện
này gửi các truy vấn tới một hay nhiều name server và biên dịch các trả lời từ name
server.
Dữ liệu lu trữ trong DNS đợc định danh bởi các domain name, các domain name này
tổ chức dới dạng hình cây. Mỗi nút của cây đợc gán một nhÃn. Domain name của

Trang 20


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

các nút móc nối với nhau và móc nèi víi nót gèc (root) theo mét ®−êng dÉn. Cã thể thể
hiện đờng dẫn này dới dạng viết nh sau: các domain cấp cao viết bên phải, domain
cấp thấp hơn viết bên trái và phân cách giữa hai cấp của domain b»ng dÊu chÊm. VÝ dơ:
mail.example.com

2.
2.1.

Tỉng quan vỊ phÇn mỊm mà nguồn mở
Định nghĩa


Phần mềm mà nguồn mở là những phần mềm đợc cung cấp dới cả dạng mà và
nguồn, không chỉ là miễn phí về giá mua mà chủ yếu là miễn phí về bản quyền: ngời
dùng có quyền sửa đổi, cải tiến, phát triển, nâng cấp theo một số nguyên tắc chung qui
định trong giấy phép phần mềm nguồn mở (ví dụ General Public Licence - GPL) mà
không cần xin phép ai, điều mà họ không đợc phép làm đối với các phần mềm nguồn
đóng (tức là phần mềm thơng mại). Nhà cung cấp phần mềm nguồn mở có quyền yêu
cầu ngời dùng trả một số chi phí về các dịch vụ bảo hành, huấn luyện, nâng cấp, t
vấn, tức là những dịch vụ thực sự đà thể hiện để phục vụ ngời dùng, nhng không
đợc bán các sản phẩm nguồn mở vì nó là tài sản của trí tuệ chung, không phải là tài
sản riêng của một nhà cung cấp nào.
Trên thị trờng phần mềm, có nhiều loại giấy phép. Có thể chia các giấy phép này đại
khái nh sau [1] :
Phần mềm thơng mại (Commercial Software)
Là phần mềm thuộc bản quyền của tác giả hoặc nhà sản xuất, chỉ đợc cung cấp ở
dạng mà nhị phân, ngời dùng phải mua và không có quyền phân phối lại.
Phần mềm thử nghiệm giới hạn (Limited Trial Software)
Là những phiên bản giới hạn của các phần mềm thơng mại đợc cung cấp miễn
phí nhằm mục đích thử nghiệm, giới thiệu sản phẩm và kích thích ngời dùng
quyết định mua. Loại sản phẩm này không những có giới hạn về mặt tính năng mà
còn có giới hạn về mặt thời gian dùng thử (thờng là 60 ngày).
Phần mềm chia sỴ” (Shareware)

Trang 21


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ


Hoàng Đắc Đạt

Loại phần mềm này có đủ các tính năng và đợc phân phối tự do, nhng có một
giấy phép khuyến cáo các cá nhân hoặc tổ chức mua sản phẩm.
Phần mềm sử dụng phi thơng mại (Non-commercial Use)
Loại phần mềm này đợc sử dụng tự do và có thể phân phối lại bởi các tổ chức phi
lợi nhuận. Nh−ng c¸c tỉ chøc kinh tÕ, thÝ dơ c¸c doanh nghiệp, muốn dùng phải
mua. Netscape Navigator là một thí dụ của loại hình phần mềm này.
Phần mềm miễn phí hoa lợi (Royalties Free Binaries Software)
Phần mềm đợc cung cấp dới dạng nhị phân và đợc dùng tự do. Ví dụ: bản nhị
phân của các phần mềm Internet Explorer và NetMeeting.
Th viện phần mềm không phải trả phần trăm (Royalties Free Software
Libraries)
Là những phần mềm mà mà nhị phân cũng nh mà nguồn đợc dùng và phân phối
tự do, nhng ngời dùng không đợc phép sửa đổi. Ví dụ: các chơng trình th
viện lớp học, các tệp header,
Phần mềm m· nguån më kiÓu BSD (OpenSource BSD - style)
Mét nhãm nhỏ khép kín (closed team) đà phát triển các phần mỊm m· ngn më
theo giÊy phÐp ph©n phèi Berkeley (BSD Berkeley Software Distribution) cho
phép sử dụng và phân phối lại các phần mềm này dới dạng mà nhị phân và mÃ
nguồn. Tuy ngời dùng có quyền sửa đổi mÃ, nhng về nguyên tắc nhóm phát
triển không cho phép ngời dùng tự do đa mà đà sửa vào lại kho mà của nhóm
phát triển mà không đợc họ kiểm tra trớc (gọi là các check-in)
Phần mềm mà nguồn mở kiểu Apache (OpenSource Apache - style)
ChÊp nhËn nguån më kiÓu BSD nhng cho phép những ngời ngoài nhóm phát
triển xâm nhập vào lõi của mà nền (core codebase), tức là đợc phép thực hiện các
check in
Phần mềm mà nguồn mở kiểu CopyLeft hay kiÓu Linux (OpenSource
CopyLeft, Linux - style)


Trang 22


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

Phần mềm mà nguồn mở kiểu CopyLeft (cách chơi chữ của Free Software
Foundation FSF và GNU GNUs Not Unix, để đối nghịch hoàn toàn với
CopyRight) hay còn gọi là giấy phép GPL (General Public Licence) là mét b−íc
tiÕn quan träng theo h−íng tù do ho¸ cđa các giấy phép phần mềm. Giấy phép
GPL yêu cầu không những mà nguồn gốc phải đợc phân phối theo các qui định
của GPL mà mọi sản phẩm dẫn xuất cũng phải tuân thủ GPL.
GPL cho ngời dùng tối đa quyền hạn và tự do (đồng thời với những giới hạn về
bản quyền, thơng phẩm) đối với các phần mềm mà ngn më theo GPL, cơ thĨ
ng−êi dïng cã qun kh«ng những sao chép, sửa đổi, mua bán các phần mềm mÃ
nguồn mở dới dạng CopyLeft mà còn đợc quyền tự do nh vậy đối với các phần
mềm dẫn xuất. Tóm lại, nếu phần mềm mà nguồn mở gốc đà theo CopyLeft thì
mọi phần mềm mà nguồn mở dẫn xuất của nó cũng đơng nhiên theo CopyLeft.
Bảng dới đây so sánh mức độ mở của các loại phần mềm mà nguồn mở nói trên:
Khả năng cho
phép

Phần mềm thơng
mại

Đợc phân

phối tự do

Đợc
phân
phối lại

Dùng
hạn chế

Đợc
biết mÃ
nguồn

Đợc
sửa mÃ
nguồn

Với những
chức năng
hạn chế

3

3
Sử dụng phi thơng
mại

Các dẫn
xuất đều
đợc tự

do

Hoàn toàn đóng, không đợc quyền nào. Muốn dùng thì phải mua và chỉ dùng
đợc trong khuôn khổ các chức năng định trớc của sản phẩm.

3
Phần mềm trình
diễn

Đợc
check
in

Phụ thuộc
vào cách sử
dụng

3

3

Phần mềm chia sẻ

Không phải
trả lệ phí %

3

Nhị phân không %
(Freeware)


3

3

3

Th viện không %

3

3

3

3

Nguồn mở BSD

3

3

3

3

Trang 23

3



Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Khả năng cho
phép

Hoàng Đắc Đạt

Đợc phân
phối tự do

Đợc
phân
phối lại

Dùng
hạn chế

Đợc
biết mÃ
nguồn

Đợc
sửa mÃ
nguồn


Đợc
check
in

Nguồn mở kiểu
Apache

3

3

3

3

3

3

Nguồn mở kiểu
GNU

3

3

3

3


3

3

Các dẫn
xuất đều
đợc tự
do

3

Bảng 2. So sánh mức độ "mở"của các loại phần mềm

Để hiểu kỹ hơn về các phần mềm mà nguồn mở, chúng ta cần bắt đầu từ cách phát triển
phần mềm. Chơng trình phần mềm đợc viết bằng các ngôn ngữ bậc cao - chơng
trình nguồn (để ngời viết chơng trình có thể diễn đạt ý tởng gần giống nh ngôn
ngữ của con ngời). Các chơng trình này sau đó đợc dịch (biên dịch hoặc thông dịch)
để khi chạy, chơng trình sẽ có dạng ngôn ngữ máy (mà nhị phân). Khi thay đổi chức
năng của phần mềm, chơng trình nguồn sẽ đợc thay đổi và dịch lại. Triết lý gắn với
chơng trình phần mềm mà nguồn mở rất đơn giản: "Các lập trình viên có thể đọc, sửa
đổi, phân phát lại một đoạn hoặc toàn bộ mà nguồn của phần mềm. Tất cả mọi ngời
đều có thể sử dụng, cải tiến và sửa chữa các lỗi nằm trong phần mềm". Sự phổ biến của
các chơng trình phần mềm mà nguồn mở nằm ở chỗ, nó cho phép ngời tích hợp hệ
thống có thể bổ sung và cải tiến những ứng dụng này thành những sản phẩm tốt hơn,
phù hợp hơn cho khách hàng.
Những ngời phát triển phần mềm mà nguồn mở đà chứng minh đợc khả năng phát
triển của các sản phẩm theo hớng này trong nhiều trờng hợp tốt hơn so với các sản
phẩm theo mô hình đóng truyền thống (trong đó có rất ít các lập trình viên có thể
xem những mà nguồn và tất cả những ngời khác đều phải mò mẫm trong một khối các
mà nhị phân khó hiểu).

MÃ nguồn mở khuyến khích phát triển những phần mềm đáng tin cậy với chất lợng
cao bằng cách hỗ trợ những ứng dụng độc lập và nhanh chóng phát triển các mà nguồn.
Để phần mềm có thể nhận đợc chứng nhËn cđa hiƯp héi m· ngn më OSI (Open
Source Initiative), nó phải đợc phân phối với một chứng chỉ đảm bảo rằng ngời dùng
có thể sử dụng, đọc, thay đổi và phân phối lại những phần mềm này một cách tù do,
hoµn toµn miƠn phÝ.

Trang 24


Luận văn Thạc Sĩ

Đại học Quốc gia Hà Nội
khoa Công nghệ

Hoàng Đắc Đạt

Với các phần mềm mà nguồn mở, mà nguồn trên thực tế không phải dới dạng nhị
phân mà thực sự mở cho mọi ngời và đặc biệt quan trọng là có thể theo dõi đợc vết
thay đổi của hệ thống. Nếu phần mềm này ảnh hởng tới các phần mềm khác trong hệ
thống thì tất cả những thông tin để khắc phục và giải quyết phải luôn đợc sẵn sàng
cung cấp.
2.2.

Thực trạng của phần mềm mà nguồn mở

2.1.1. Trên thế giới
Phần mềm mà nguồn mở là một phong trào tin cậy đang phát triển rất nhanh. Số lợng
các phần mềm mà nguồn mở ngày càng nhiều và tăng theo hàm mũ và có thể liệt kê
một số sản phẩm chính nh sau [2]:

Các hệ điều hành Linux, NetBSD và FreeBSD. Đó là những hệ điều hành
Unix (Hiện có khuynh hớng lạm dụng khi ghép vào trong "Hệ điều hành
Unix" một loạt chơng trình ứng dụng, không thuộc "lõi" của Unix, nh
sendmail và qmail cho th tín điện tử, X11, GNOME, KDE cho môi trờng
đồ hoạ, BIND cho máy chủ quản lý tên miền,... Những phần mềm này cũng
là mở và cần thiết cho các mạng TCP/IP.). Chỉ Linux là dành đợc sự tham
gia phát triển của cộng đồng quốc tế, còn NetBSD và FreeBSD do Đại học
Berkeley, Hoa Kỳ phát triển.
Tập hợp các sản phẩm GNU của FSF do Richard Stallman chủ trì, phát triển
đặc biệt là trình biên dịch GNU C/C++.
Một loạt ngôn ngữ lập trình (nh Perl, Python,...) chất lợng cao.
Các máy chủ Web (nh Apache, TomCat, ...).
C¸c m¸y chđ proxy (nh− Squid, T.Rex, ...)
C¸c hƯ quản trị cơ sở dữ liệu quan hệ.
Các hệ phát triển các trang web nh HTML, XML,...
Phần mềm SAMBA, cho phép truy cập và thay đổi các tệp do Windows NT
và Windows 2000 quản lý.
...

Trang 25


×