Tải bản đầy đủ (.docx) (87 trang)

Đồ Án về Linux

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.82 MB, 87 trang )

LỜI CẢM ƠN

Để đề tài chuyên ngành mạng được kết quả tốt đẹp, trước hết cho em xin gửi lời cảm ơn tới tất cả thầy cô
khoa Công Nghệ Thông Tin lời chúc sức khỏe, lời chào trân trọng và cảm ơn sâu sắc nhất. Với sự quan tâm, dạy dỗ
chỉ bảo tận tình chu đáo của thầy cô, sự giúp đỡ nhiệt tình của các bạn đến này em đã có thể hoàn thành đề tài tốt
nghiệp: “ Quản lý tập trung với dịch vụ Linux LDAP (Lightweight Directory Access Protocol) .
Để có được kết quả này em xin đặc biệt gửi lời cảm ơn chân thành tới thầy Ths.Nguyễn Đức Quang đã quan
tâm giúp đỡ, vạch kế hoạch hướng dẫn em hoàn thành một cách tốt nhất đề tài chuyên ngành mạng trong thời gian
qua.
Với điều kiện thời gian có hạn cũng như kinh nghiệm còn hạn chế của em nên đề tài sẽ không tránh khỏi
những thiếu sót. Em rất mong được sự chỉ bảo, đóng góp ý kiến của các thầy cô để em có điều kiện bổ sung , nâng
cao ý thức của mình, phục vụ tốt hơn cho công việc thực tế sau này.
Em xin chân thành cảm ơn !
Sinh viên thực hiện: Lê Sơn
Lớp : 10LDTH11
MỤC TIÊU ĐỀ TÀI

Với sự phát triển của phần mềm Open Source ngày càng mạnh mẽ, với ưu điểm là miễn phí, bảo mật, linh
hoạt …Việc kiểm tra của các ngành chức năng trong việc sử dụng phầm mềm bản quyền ở Việt Nam trong thời gian
tới ngày càng chặt trẽ hơn. Có thể ứng dụng triển khai hệ thống mạng hoàn chỉnh, bao gồm những services cần
thiết như Mail, Web, FTP, DNS, DHCP, Proxy …nhưng vẫn đảm bảo được việc không vi phạm bản quyền lại tiết
kiệm thì việc sử dụng Open Source là hợp lý nhất. Nhưng khi sử dụng những dịch vụ trên thì hệ thống mạng cần
phải có một dịch vụ chứng thực tập trung cho cả hệ thống, đó là OpenLDAP.
Đề tài này được đưa ra nhằm xây dựng giải pháp giải pháp chứng thực với những mục tiêu sau:
 Phân tích, thiết kế hệ thống mạng
 Xây dựng hệ thống services trên Open Source
 Triển khai xây dựng dịch vụ OpenLDAP
 Triển khai xây dựng các dịch vụ Mail, Web, FTP, Squid, File server
 Chứng thực tập chung cho các services trên bằng OpenLDAP
 Quản trị hệ thống mạng linux
Quản lý tập trung dịch vụ LDAP GVHD : Ths.Nguyễn Đức Quang


THUẬT NGỮ VIẾT TẮT
-
-
-
-
-
-
-
-
-
-
-
-
LDAP:
LAN:
WAN:
DNS:
TLS:
SSL:
LDIF:
NIS:
HĐH:
Httpd:
BIND:
VSFTPD:
Lightweight Directory Access Protocol
Local Area Network.
Wide Area Network
Domain Name Systems.
Transport Layer Security.

Secure Socket Layer.
LDAP Data Interchange Format
Network Information Services
Hệ điều hành
Hypertext Transfer Protocol Daemon
Berkeley Internet Name Domain
Very Secure FTP Daemon
SVTH : Lê Sơn Trang 3
CHƯƠNG I. GIỚI THIỆU
TỔNG QUAN

1.1. Giới thiệu tổng quan về Linux
1.1.1. Giới thiệu về Linux
Hình 2.1: Linux
Vào những năm đầu của thập kỷ
90, Linus Tovarlds - một sinh viên đại
học tổng hợp Helsinki (Phần Lan) - qua
quá trình mày mò nghiên cứu cách làm
việc của máy tính PC có trang bị bộ xử
lý 386 trên hệ điều hành Minix (là hệ
điều hành Unix cỡ nhỏ). Do có sự hạn
chế của hệ điều hành này, Linus đã viết
lại một số phần mềm để thêm các chức
năng cho nó. Hệ điều hành mới ra đời
với tên gọi là Linux - (chữ viết tắt của
Linus và Unix). Ông ta đã công bố kết
quả của mình miễn phí trên Internet và
ông ta cũng không thể ngờ rằng chính
điều này đã khiến cho Linux có một sự
phát triển chóng mặt và đã trở thành

một hệ điều hành tiên tiến nhất, ổn định
nhất và phổ biến nhất hiện nay trên
phạm vi toàn thế giới.
1.1.1.1. Khái niệm Linux
Linux đươc tạo thành bởi các
module hoạt động độc lập với nhau,
người dùng có thể tự xây dựng kernel
(nhân) cho hệ điều hành của mình bằng
cách thêm
những module
cần thiết vào. Vì
vậy hệ thống
Linux có tính
linh hoạt cao
hơn Windows.
Thường Linux
được sử dụng
làm máy chủ
nhiều hơn là làm
máy trạm vì việc
cấu hình cho
Linux phức tạp
hơn nhiều vì
thường phải
dùng command
line để cấu hình
chứ không có
giao diện đồ hoạ
như Windows.
Hệ thống chạy

trên Linux
thường nhanh
hơn và ổn định
hơn là chạy trên
Windows. Sở dĩ
Linux chạy được
dùng nhiều cho
máy tính cá
nhân vì nó hỗ
trợ giao diện đồ
hoạt chưa tốt.
Tuy nhiên, hiện
nay một số
phiên bản mới
của hệ điều hành
dạng Linux có
giao diện đồ hoạ
tương đối tốt
(như Centos,
Solais, Fedora,
v.v ).
1.1.1.2. Các phiên bản hệ
điều hành Linux
Tên bản phân phối
Phiên bản
mới nhất
Ubuntu 12.04
Debian GNU/Linux 6.0 www.debian.org
Ultimate Edition 3.2
Red Hat Enterprise

Linux
6.0 www.redhat.com/rhel
Fedora 16.0 www.fedoraproject.org
SUSE Linux
Enterprise Linux
11 sp2 www.novell.com/limux OpenSUSE
Mint 13.0 www.linuxmint.com
Knoppix 6.7.1 www.knoppix.com
PCLinuxOS www.pclinuxos.com
1.1.1.3. Những ưu, nhược điểm của
HĐH Linux.
 Những ưu điểm.
• Vấn đề bản quyền.
Trong bối cảnh nền kinh tế thế
giới đang có xu hướng toàn cầu hóa
như hiện nay thì đây là một vấn đề nổi
cộm. Trước tình hình đó, việc tự xây
dựng cho mình
những phần
mềm thương
hiệu Việt Nam
đang trở nên
một vấn đề cấp
bách.
Phần
mềm mã nguồn
mở được xem
là một giải pháp
hữu hiệu nhất
cho bài toán

bản quyền ở
nƣớc ta hiện
nay. Phần mềm
mã nguồn mở
một mặt có chi
phí rẻ hơn so
với các phần
mềm truyền
thống, mặt khác
rất dễ nâng cấp,
cải tiến (do
cung cấp mã
nguồn kèm
theo). Chính vì
thế, phát triển
phần mềm mã
nguồn mở
chúng ta có thể
tận dụng được
những công
nghệ tiên tiến
có sẵn trên thế
giới, cải tiến
cho phù hợp
với người Việt
Nam, tiết kiệm
được rất nhiều
công sức so với
việc phát triển
từ đầu. Linux là

một HĐH mã
nguồn mở như
vậy!!!
 Kỹ
thuậ
t nổi
bật
của
Lin
ux.
- Kinh
tế, đó là một
đặc điểm không thể bỏ qua của Linux
(ít nhất là đối với nƣớc ta hiện nay).
Tuy nhiên đối với Linux đó vẫn chƣa là
tất cả. HĐH này còn rất nhiều ƣu điểm
khác mà không một hệ điều hành nào
có. Chính những đặc điểm này mới là
nguyên nhân khiến cho Linux ngày
càng trở nên phổ biến không chỉ ở Việt
Nam mà cả ở trên thế giới
- Linh hoạt, uyển chuyển Có thể
chỉnh sửa Linux và các ứng dụng trên
đó sao cho phù hợp với mình nhất. Việc
Việt hóa Windows được xem là không
thể nếu như bạn không có sự đồng ý và
hỗ trợ của Microsoft. Tuy nhiên với
Linux thì bạn có thể làm được điều này
một cách đơn giản hơn.( tham khảo
thêm Sản phẩmViệt key Linux đã đoạt

giải nhất TTVN 2002) Mặt khác do
Linux được một cộng đồng rất lớn
những người làm phần mềm cùng phát
triển trên các môi trường, hoàn cảnh
khác nhau nên tìm một phiên bản phù
hợp với yêu cầu của bạn sẽ không phải
là một vấn đề quá khó khăn.
- Tính linh hoạt của Linux còn
được thể hiện ở chỗ nó tương thích
được với rất nhiều môi trường. Hiện tại,
ngoài Linux dành cho server,máy tính
để bàn nhân Linux (Linux kernel) còn
được nhúng vào các thiết bị điều khiển
như máy tính palm, robot Phạm vi
ứng dụng của Linux được xem là rất
rộng rãi.
- Ngoài ra chính tính chất "mở"
cũng tạo nên sự an toàn của Linux. Nếu
như một lỗ hổng nào đó trên Linux
được phát hiện thì nó sẽ được cả cộng
đồng mã nguồn mở cùng sửa và thường
thì chỉ sau 24h sẽ có thể cho ra bản sửa
lỗi.
- Mặt khác, đối với những HĐH
mã nguồn đóng như Windows, bạn
không thể biết được người ta viết gì, và
viết ra sao mà chỉ biết được chúng chạy
như thế nào. Vì vậy nếu như Windows
có chứa những đoạn mã cho phép tạo
những "back door" để xâm nhập vào hệ

thống của bạn thì bạn cũng không thể
biết được. Đối với người dùng bình
thường như chúng ta vấn đề này có vẻ
như không quan trọng nhưng đối với
một hệ thống tầm cỡ như hệ thống quốc
phòng thì vấn đề như thế này lại mang
tính sống còn.
Các nhân viên
an ninh không
được phép để lộ
một kẽ hở nào,
dù là nhỏ nhất
vì nó liên quan
đến an ninh của
cả một quốc
gia.Và một lần
nữa các phần
mềm mã nguồn
mở nói chung
và Linux nói
riêng lại là sự
lựa chọn số 1.
Trong Linux
mọi thứ đều
công khai,
người quản trị
có thể tìm hiểu
tới mọi ngõ
ngách của hệ
điều hành. Điều

đó cũng có
nghĩa là độ an
toàn được nâng
cao
- Thích
hợp cho quản
trị mạng được
thiết kế ngay từ
đầu cho chế độ
đa người dùng
Linux được
xem là một hệ
điều hành mạng
rất giá trị. Nếu
như Windows
tỏ ra là một
HĐH thích hợp
với máy tính
Desktop thì
Linux lại là hệ
điều hành thống
trị đối với các
Server. Đó là do
Linux có rất
nhiều ưu điểm
thỏa mãn đòi
hỏi của một hệ
điều hành
mạng: tính bảo
mật cao, chạy

ổn định, các cơ
chế chia sẻ tài nguyên tốt Giao thức
TCP/IP mà chúng ta vẫn thấy ngày nay
chính là một giao thức truyền tin của
Linux (sau này mới được đưa vào
Windows
- Dù cho có rất nhiều phiên bản
Linux được các nhà phân phối khác
nhau ban hành nhưng nhìn chung đều
chạy khá ổn định trên mọi thiết bị phần
cứng, từ Intel 486 đến những máy
Pentium mới nhất, từ những máy có
dung lượng RAM chỉ 4MB đến những
máy có cấu hình cực mạnh (tất nhiên là
tốc độ sẽ khác nhau nhưng về nguyên
tắc vẫn có thể chạy được). Nguyên
nhân là Linux được rất nhiều lập trình
viên ở nhiều môi trường khác nhau
cùng phát triển (không như Windows
chỉ do Microsoft phát triển) và bạn sẽ
bắt gặp nhiều người có "cùng cảnh ngộ"
như mình và dễ dàng tìm được các
driver tương ứng với thiết bị của mình .
Tính chất này hoàn toàn trái ngược với
Windows. Mỗi khi có một phiên bản
Windows mới ra đời thì bao giờ kèm
theo đó cũng là một cơn khát về phần
cứng vì HĐH mới thường không hỗ trợ
các thiết bị quá cũ.
 Một vài nhược điểm cố hữu của

Linux.
 Đòi hỏi người dùng phải thành
thạo.
- Trước kia việc sử dụng và cấu
hình Linux được xem là một công việc
chỉ dành cho những chuyên gia. Hầu
như mọi công việc đều thực hiện trên
các dòng lệnh và phải cấu hình nhờ
sửa trực tiếp các file. Mặc dù trong
những phiên bản gần đây, các HĐH
Linux đã có những cải tiến đáng kể,
nhưng so với Windows tính thân thiện
của Linux vẫn còn là một vấn đề lớn.
Đây là một trong những nguyên nhân
chủ yếu khiến. Linux mặc dù có rất
nhiều đặc tính kỹ thuật tốt nhưng vẫn
chưa đến được với người dùng cuối.
 Tính tiêu chuẩn hóa.
- Linux được phát hành miễn phí
nên bất cứ ai cũng có thể tự mình đóng
gói, phân phối theo những cách riêng.
Hiện tại có khá nhiều bản Linux phát
triển từ một nhân ban đầu cùng tồn tại
như: RedHat, SuSE, Knoppix
Người dùng
phải tự so sánh
xem bản nào là
phù hợp với
mình. Điều
này có thể gây

khó khăn cho
người dùng,
nhất là những
người còn có
kiến thức về
tin học hạn chế
- Số
lượng các ứng
dụng chất
lượng cao trên
Linux còn hạn
chế. Mặc dù
Windows có
sản phẩm nào
thì Linux cũng
gần như có
phần mềm
tương tự.(Vd:
OpenOffice
trên Linux.
Tuy nhiên chất
lượng những
sản phẩm này
là chưa thể so
sánh được với
các sản phẩm
viết cho
Window
-
Một số nhà

sản xuất
phần cứng
không có
driver hỗ
trợ Linux.
Do hiện
nay Linux
chưa phổ
biến bằng
Windows
nên nhiều
nhà sản
xuất không
hỗ trợ các
driver chạy
trên Linux.
Tuy nhiên
bạn vẫn có
thể tìm
thấy
các
driv
er
này
do
ai
đó
tron
g
cộn

g
đồn
g

ngu
ồn
mở
viết.
-
Lin
ux có một số nhược điểm
mang tính cố hữu như vậy
nhưng ta vẫn có thể chạy
được một số chương trình
Windows trên nên Linux
thông qua chương trình
WINE.(một Chương trình
giả lập để chạy các ứng
dụng Windows trên
Linux) Do đó, có thể tận
dụng được các ưu điểm
của Windows lẫn Linux.
- Trên cơ sở nhìn nhận một
cách khách quan các ưu
nhược điểm của HĐH
Linux cũng như xem xét
xu hướng phát triển tin học
ở nƣớc ta có thể thấy: Đối
với người dùng thông
thường việc chuyển từ

Windows sang Linux trong
ngày một ngày hai là chưa
thể. Trong khi chúng sử
dụng các hàm ở mức cao.
Điều này trái ngược với
giao thức “heavyweight”
như là giao thức truy cập
thư mục X.500
1.1.2. Giới thiệu về LDAP
- LDAP
(Lightweight Directory
Access Protocol) là một
chuẩn mở rộng cho giao
thức truy cập thư mục, hay
là một ngôn ngữ để LDAP
client và severs sử dụng để
giao tiếp với nhau.
- LDAP
là một giao
thức
“lightweight ”
có nghĩa là đây
là một giao
thức có tính
hiệu quả, đơn
giản và dễ dàng
để cài đặt.
Trong khi
chúng sử dụng
các hàm ở mức

cao.
- Điều
này trái ngược
với giao thức
“heavyweight”
như là giao
thức truy cập
thư mục X.500
(DAP). Giao
thức này sử
dụng các
phương thức
mã hoá quá
phức tạp.
Điều này
trái nguwcj với
Điều
- LDAP
sử dụng các tập
các phương
thức đơn giản
và là một giao
thức thuộc tầng
ứng dụng
Độ
1.1.2. Giới thiệu về LDAP
 LDAP (Lightweight Directory Access
Protocol) là một chuẩn mở rộng cho giao thức
truy cập thƣ mục, hay là một ngôn ngữ để
LDAP client và severs sử dụng để giao tiếp

với nhau.
 LDAP là một giao thức “lightweight ”
có nghĩa là đây là một giao thức có tính hiệu
quả, đơn giản và dễ dàng để cài đặt. Trong khi
chúng sử dụng các hàm ở mức cao. Điều này
trái ngƣợc với giao thức “heavyweight” nhƣ
là giao thức truy cập thƣ mục X.500 (DAP).
Giao thức này sử dụng các phƣơng thức mã
hoá quá phức tạp.
 LDAP sử dụng
các tập các phƣơng
thức đơn giản và là
một giao thức thuộc
tầng ứng dụng.
 LDAP đã phát
triển với phiên bản
LDAP v2 đƣợc định
nghĩa trong chuẩn
RFC 1777 và 1778,
LDAP v3 là một phần
trong chuẩn Internet,
đƣợc định nghĩa trong
RFC 2251 cho đến
RFC 2256, do chúng
quá mới nên không
phải tất cả các nhà
 Các tổ chức tích hợp LDAP trong sản
phẩm của mình
- Ngoài
vai trò như là

một thủ tục
mạng, LDAP
còn định nghĩa
ra 04 mô hình,
các mô hình
này cho phép
linh động trong
việc sắp đặt
Stt
Vendors
Ghi chú
1
OpenLDAP
Miễn phí
2
SunOne (iPlanet) Directory Server
Thương mại
3
các thư mục:
 Mô hình LDAP information - định nghĩa ra
các loại dữ liệumà bạn cần đặt vào thư mục.
 Mô hình LDAP Naming - định nghĩa ra cách
bạn sắp xếp và tham chiếu đến thư mục. Functional -
định nghĩa cách mà bạn truy cập và cập nhật thông tin
trong thư mục của bạn.
 Mô hình LDAP Security - định nghĩa ra cách
thông tin trong trong thư mục của bạn được bảo vệ
tránh các truy cập không được phép
- Ngoài các mô hình ra LDAP còn
định nghĩa ra khuôn dạng để trao đổi dữ liệu

LDIF (LDAP Data Interchange Format), ở
dạng thức văn bản dùng để mô tả thông tin
về thư mục . LDIF còn có thể mô tả một tập
hợp các thư mục hay các cập nhật có thể
được áp dụng trên thư mục.
1.2. Giới thiệu các dịch vụ của Linux
1.2.1. HTTPD ( Hypertext Transfer Protocol
Daemon )
- Apache ( httpd) là một open-source
Web server và free hoàn toàn được hỗ trợ
bởi Apache Software Foundation. Mặc dù
free và Open-Source nhưng Apache sức
mạnh và tính ổn định của nó được đánh giá
ở tầm cỡ thương mại. Đến nay đây vẫn là
best choice cho giải pháp máy chủ Web.
e
Hình 2.2. Apache
- Hầu hết các web server trên toàn
thế giới đều sử dụng dịch vụ Apache
HTTP Server. Vì vậy, khi xuất hiện bất
kỳ một lỗi bảo mật nào thì nó phải được
khắc phục càng sớm càng tốt.
- Phiên bản mới nhất ủca Apache
là Apache httpd 2.4.2
1.2.2. SAMBA
- Samba là dịch vụ của hệ điều
hành Linux, chạy trên nền giao thức
SMB (Server Message Block) cho phép
chia sẻ file hệ thống, máy in với các máy
chạy Win 95, 98 hoặc NT. SMB là giao

thức được các hệ điều hành của
Microsoft sử
dụng để chia sẻ
dữ liệu qua
mạng. Với Linux
Samba cũng dựa
vào giao thức
SMB để viết một
số tiến trình điển
hình như smbd,
nmbd. Các hệ
điều hành của
Microsoft có thể
làm việc với
máy Linux qua
Network
Neighborhood.
Hình 2.3: Samba
Ƥ
1.2.3. ZIMBRA
- Zimbra nguyên là một công ty
độc lập về phần mềm mã nguồn mở
được yahoo mua lại vào năm 2007. Theo
quảng cáo trên website của hãng thì hiện
có khoảng 60.000 tổ chức và 40 triệu
mailbox đang dùng zimbra
.
Hình 2.4: Mail
Zimbra
 Zimbra Collaboration Suite – là một

phần mềm cộng tác gồm cả phần mềm
chạy trên máy chủ và máy trạm có các
đặc điểm và tính năng chính sau.
 Thư điện tử: là một hệ
thống thư điện tử hoàn
chỉnh gồm: Mail
server(SMTP,POP3,IMAP,
antivirus,antispam,openLD
AP,backup,… có đầy đủ
tính năng như auto-reply,
auto-forward,mail fillter,
…) và mail client
( zimbra desktop và
zimbra web client).
 Lịch công tác ( Calendar):
lịch cá nhân và lịch nhóm,
tự động gửi mail
 Danh mục công việc ( task) : của cá nhân và cả
của nhóm
 Tài liệu ( Documents): tài liệu dưới dạng Wiki của
cá nhân hoặc tập thể.
 Cặp hồ sơ ( Brifcase): dùng riêng hoặc dùng
chung.
 Chat : chat nội bộ trong mạng LAN hoặc trên
Internet
 Zimbra có 2 phần mềm client
desktop và zimbra web
 Client là giao diện với
người dùng . Zimbra desktop
(tương tự như Outlook,…) cài

được trên cả windowns , Mac,
Linux.
 Ngoài ra có thể dùng
các email client khác như
Outlook, Evolution,…hai loại
Mail client trên ứng dụng với
hai cách làm việc: Làm việc
online, dùng zimbra
webclient. Mọi thông tin sẽ
sao trên máy chủ zimbra .
Zimbra web client có hai giao
diện dạng html thông thường,
nhanh nhưng ít tính năng và
dạng lưu Ajax( tương tự như
yahoo mail) . zimbra web
client là một trong những web
client hoàn chỉnh nhất hiện
này ( hỗ trợ hầu hết tính năng
zimbra server kể cả chat).
 Làm việc offline dùng
các mail client còn lại. Riêng
Outlook, Apple Desktop,
Evolution có thể đồng bộ
email, calendar, contacts, task
với máy chủ zimbra , các mail
client khác chỉ đọc và gửi
mail.
 Zimbra có một bản
opensource miễn phí và ba
bản khác có thu phí. Bản

opensource có các tính năng
sử dụng giống như bản có
phí , chỉ kém một số tính năng
người quản trị nhưng có thể
bù đắp bằng cách tự cài bổ
xung và hoàn toàn có thể dùng
bản opensource vào các hệ
thống thật.
 1.2.4.
BIND
(Berkeley
Internet Name
Domain)
 BIND (Berkeley
Internet Name Domain) là
phần mềm miễn phí, mã
nguồn mở sử dụng cho các
máy chủ làm DNS Server.
 BIND được lập trình bởi 4 sinh viên đại học ở
Berkeley, California năm 1980 và được phát hành lần
đầu tiên trên hệ thống 4.3BSD.
 BIND version 8 được phát hành vào tháng 5
năm 1997. Sau đó đến tháng 9 năm 2000 BIND
version 9 ra đời, phiên bản mới nhất hiện nay là 9.3
với nhiều tính năng quan trọng được cải thiện và bảo
mật cao hơn các phiên bản trước.
 Thư mục làm việc mặc định của BIND:
/var/named
 File cấu hình tổng quan cho BIND:
/etc/named.conf.


 Các file cấu hình chính cho DNS Server
 Để cấu hình DNS Server
chúng ta cần tất cả 5 file cấu
hình. Trong đó với DNS
Server kiểu Master, Slave
hoặc Caching-Only đều yêu
cầu 3 file cấu hình sau:
 named.conf: chứa trong thu
mục /etc là file cấu hình tổng
thể cho dịch vụ named.
 named.ca: chứa trong thư
mục /var/named chứa tên
miền và địa chỉ IP của các root
server chứa trong thư mục
/var/named cung cấp thông tin
cho quátrình phâ địa chỉ IP ảo
cho localhost.
 named.local:
 Và 2 file cấu hình sử dụng cho Master DNS Server :
 zone: chứa tên miền và địa chỉ IP của các máy chủ
và thông tin về ánh xạ giữa tên miền và địa chỉ IP này.
 reverse zone: ngược lại của file zone chứa thông
tin về ánh xạ giữa địa chỉ IP và tên miền.




 1.2.5. VSFTPD (Very Secure FTP Daemon )
 - Giới thiệu VSFTPD là

chữ viết tắt của Very Secure File
Transfer Protocol Deamon - Giao thức
truyền file bảo mật.VS FTPD là một
giao thức truyền file trên mạng dựa trên
chuẩn TCP nên rất đáng tin cậy.
 - VSFTPD là một công cụ
truyền tải file giữa các máy tính với
nhau. VSFTPD cho phép truyền và tải
files, quản lí thư mục và lấy mail. Chú ý
rằng VSFPTD không được thiết kế để
truy cập và thi hành files. Nhưng nó là
một công cụ
tuyệt vời để
truyền tải file,
đặc biệt là
truyền file lên
mạng Internet.
 -
VSFTPD dùng
hai kênh TCP.
TCP cổng 20 và
cổng 21 là nhận
lệnh, cho phép
giả lập truyền tải
lệnh và dữ liệu
của VSFTPD.
 -
VSFTPD cũng
khác với giao
thức khác ở một

chức năng quan
trọng là
VSFTPD truyền
tải file ở
foreground, còn
các giao thức
khác thì ở
background. Có
nghĩa là,
VSFTPD không
sử dụng các
spooler hay
queue. Cũng vì
thế mà việc
truyền tải thực
hiện bằng thời
gian thực
 -
Trong VSFTPD
có hai kênh tồn
tại giữa hai máy
gọi là Protocol
Interpreter hay
còn gọi là PI và
Data Tranfer
Process hay còn
gọi là DTP. Cấu
trúc truyền tải PI
dùng kênh lệnh
21 TCP và

truyền tải dữ liệu
DTP trên kênh
dữ liệu 20 TCP.
FTP gần giống
với Telnet trong
cách dùng
chương trình máy chủ chạy liên tục và
ngắt quãng chương trình chạy trên máy
khách.
 1.2.6. SQUID PROXY
 - Squid proxy là một là
một giải pháp proxy phần mềm mã
nguồn mở được sử dụng nhất trong giải
pháp Proxy của cộng đồng mạng. Squid
proxy làm nhiệm vụ chuyển tiếp các yêu
cầu từ phía client và đồng thời đóng vai
trò kiểm soát tạo sự an toàn cho việc
truy cập Internet của các client. Do vậy
nó tăng tốc truy cập web và tiết kiệm
được băng thông mạng.
 - Squid xác định những
yêu cầu từ client và quyết định đáp ứng
hay không đáp ứng, nếu yêu cầu được
đáp ứng, nó sẽ kết nốivới server thật
thay cho client và tiếp tục chuyển tiếp
đến những yêu cầu từ client đến server,
cũng như đáp ứng những yêu cầucủa
server đến client. Vì vậy squid proxy
giống cầu nối trung gian giữa server và
client.

 - Bên cạnh việc chuyển
tiếp các yêu cầu từ phía client, nó cũng
sẽ đồng thời lưu lại trên đĩa những dữ
liệu được trả về từ Internet Server – gọi
là caching ( thường là nội dung các trang
Web, các tập tin…). Nếu trong thời gian
hiệu lực mà một hay nhiều client cùng
yêu cầu một nội dung thì squid proxy sẽ
ngay lập tức đáp ứng lại những yêu cầu
từ phía client.
 CHƯƠNG II. TÌM HIỂU
KIẾN THỨC
 
 1.1. Giới thiệu tổng quan về LDAP server
 1.1.1. Lịch sử ra đời của LDAP
 - Vào giữa thập niên 1980,
Ủy ban tư vấn Điện thoại - Điện tín quốc
tế (International Telegraph and
Telephone Consultative Committee -
CCITT), tiền thân của Liên minh Viễn
thông quốc tế (International
Telecommunication Union - ITU) và Tổ
chức Tiêu chuẩn hóa quốc tế
(International Organization for
Standardization - ISO) đã hợp tác với
nhau để tạo ra một chuẩn mới cho dịch
vụ thư mục nhằm mục đích thống nhất
nỗ lực của 2 tổ chức. Cuối năm 1988,
CCITT đã công bố chuẩn dịch vụ thư
mục X.500 đầu tiên. Sau đó, chuẩn này

đã được cập nhật vào các năm 1993,
1997, và 2001.
























Hình: Lịch sử ra đời
LDAP



 - Khi mới xuất hiện, X.500
đã mang lại rất nhiều tiện ích cho người
dùng. Nhưng sau này, nó bộc lộ những
khiếm khuyết của mình. Một trong
những khiếm khuyết đó nằm ở giao thức
DAP (tiếng Anh: Directory client Access
Protocol - giao thức truy cập thư mục
khách) của X.500. Giao thức này tương
đối phức tạp, không thích hợp và không
có sẵn trên các máy tính thời đó. Bên
cạnh đó, DAP cũng khá cồng kềnh và
khó hiện thực.
Vì những lý do
đó, người ta bắt
đầu nghĩ đến
một cách tiếp
cận mới để tránh
việc phải hiện
thực một giao
thức phức tạp
như vậy.
 Và
o khoảng năm
1990, 2 giao
thức đơn giản
hóa của DAP,
gọi là DAS
(Directory
Assistance
Service) và

DIXIE
(Directory
Interface to
X.500
Implemented
Efficiently) đã
được định nghĩa
lần lƣợt trong
RFC 1202 và
RFC 1249.
 Sa
u sự ứng dụng
thành công của
DIXIE và DAS,
các thành viên
của OSI-DS
quyết định tăng
cƣờng nguồn
lực vào việc tạo
ra một giao thức
truy cập thư mục
đơn giản hóa với
đầy đủ tính năng
cho X.500. Đó
chính là LDAP
 1.1.2. Phương thức hoạt
động của LDAP
 Ldap dùng giao thức giao tiếp
client/sever
 -

Giao thức giao
tiếp client/sever
là một mô hình
giao thức giữa
một chương
trình client chạy trên một máy tính gởi
một yêu cầu qua mạng đến cho một máy
tính khác đang chạy một chương trình
sever (phục vụ). Chương trình server
này nhận lấy yêu cầu và thực hiện sau đó
nó trả lại kết quả cho chương trình
client. Ý tưởng cơ bản của giao thức
client/server là công việc được gán cho
những máy tính đã được tối ƣu hoá để
thực hiện công việc đó.
 - Một máy server LDAP
cần có rất nhiều RAM (bô nhớ) dùng để
lưu trữ nội dung các thư mục cho các
thao tác thực thi nhanh và máy này cũng
cần đĩa cứng và các bộ vi xử lý ở tốc độ
cao.
 Đây là một tiến trình hoạt động trao đổi LDAP client/server :















 - Client mở một kết nối
TCP đến LDAP server và thực hiện một
thao tác bind. Thao tác bind bao gồm tên
của một directory entry ,và uỷ nhiệm thư
sẽ được sử dụng trong quá trình xác
thực, uỷ nhiệm thư thông thường là
pasword nhưng cũng có thể là chứng chỉ
điện tử dùng để xác thực client. Sau khi
thư mục có được sự xác định của thao
tác bind, kết quả của thao tác bind được
trả về cho client. Client phát ra các yêu
cầu tìm kiếm. Server thực hiện xử lý và
trả về kết quả cho client. Server gởi
thông điệp kết thúc việc tìm kiếm. Client
phát ra yêu cầu unbind, với yêu cầu này
server biết rằng client muốn huỷ bỏ kết
nối.Server đóng kết nối.
 LDAP là một giao thức hướng thông điệp
 - Do client và sever giao
tiếp thông qua các thông điệp, Client tạo
một thông điệp (LDAP message) chứa
yêu cầu và gởi nó đến cho server. Server
nhận được thông điệp và xử lý yêu cầu
của client sau đó gởi trả cho client cũng

bằng một thông điệp LDAP.
 -
Ví dụ: Khi
LDAP client
muốn tìm kiếm
trên thư mục,
client tạo LDAP
tìm kiếm và gởi
thông điệp cho
server. Sever tìm
trong cơ sở dữ
liệu và gởi kết
quả cho client
trong một thông
điệp LDAP.














 - Nếu client tìm

kiếm thư mục và nhiều kết quả
được tìm thấy, thì các kết quả
này được gởi đến client bằng
nhiều thông điệp.














 - Do nghi thức
LDAP là giao thức hướng
thông điệp nên client được
phép phát ra nhiều thông điệp
yêu cầu đồng thời cùng một
lúc. Trong LDAP, message ID
dùng để phân biệt các yêu cầu
của client và kết quả trả về của
server.








 - Việc cho phép nhiều thông điệp cùng
xử lý đồng thời làm cho LDAP linh động hơn các
nghi thức khác.
 - Ví dụ như HTTP, với mỗi yêu cầu từ
client phải được trả lời trước khi một yêu cầu khác
được gởi đi, một HTTP Client program như là Web
browser muốn tải xuống cùng lúc nhiều file thì Web
browser phải thực hiện mở từng kết nối cho từng file,
LDAP thực hiện theo cách hoàn toàn khác, quản lý tất
cả thao tác trên một kết nối.


 1.1.3. Cấu trúc file Ldif
 Khái niệm LDIF
 - LDIF ( LDAP
Interchange Format) được định
nghĩa trong RFC 2849, là một
chuẩn định dạng file text lưu trữ
những thông tincấu hình LDAP và
nội dung thư mục.
 - File LDIF thường
được sử dụng để import dữ liệu
mới vào trong directory của bạn
hoặc thay đổi dữ liệu đã có. Dữ liệu
trong file LDIF cần phải tuân theo
một luật có trong schema của

LDAP directory.
 - Schema là một loại
dữ liệu đã được định nghĩa từ trước
trong directory của bạn. Mọi thành
phần được thêm vào hoặc thay đổi
trong directory của bạn sẽ được
kiểm tra lại trong schema để đảm
bảo sự chính xác. Lỗi vi phạm
schema sẽ xuất hiện nếudữ liệu
không đúng với các luật đã có.
 - Giải pháp Import dữ
liệu lớn vào LDAP. Nếu dữ liệu
được lưu trong excel khoảng vài
chục ngàn mẫu tin, viết tool
chuyểnthành định dạng trên rồi
import vào LDAP Server.
 Cấu trúc tập tin Ldif
 Thông thường một file LDIF sẽ theo
khuôn dạng sau:




M

i

m

t


t

p

e
n
t
r
y

k
h
á
c

n
h
a
u

đ
ư

c

p
h
â
n


c
á
c
h

b

i

m

t

d
ò
n
g

t
r

n
g

Sự sắp đặt “tên
thuộc tính : giá
trị”
 Một tập
các chỉ dẫn cú

pháp để làm sao
xử lý được thông
tin
 Những yêu cầu khi khai báo nội dung file
LDIF :



-






-

 Lời chú giải trong
file LDIF được gõ sau
dấu # trong một dòng

 Thuộc tính được liệt
kê phía bên trái của dấu
(:) và giá trị được biểu
diễn bên phải. Dấu đặc
biệt được phân cách với
giá trị bằng dấu cách
trắng.

 .






























 Nội dung một entry thư mục ở

dạng Ldif






























 -
Một entry là tập
hợp của các
thuộc tính, từng
thuộc tính này
mô tả một nét
đặt trƣng tiêu
biểu của một đối
tượng. Một entry
bao gồm nhiều
dòng :












 dn :
distinguished name -
là tên của entry thư
mục, tất cả được viết
trên một dòng. Sau đó
lần lƣợt là các thuộc
tính của entry, thuộc

tính dùng để lưu giữ
dữ liệu.

 Mỗi thuộc tính
trên một dòng theo
định dạng là ” kiểu
thuộc tính : giá trị
thuộc tính”. Thứ tự
các thuộc tính không
quan trọng, tuy nhiên
để dễ đọc được thông
tin chúng ta nên đặt
các giá trị objectclass
trước tiên và nên làm
sao cho các giá trị của
các thuộc tính cùng
kiểu ở gần nhau.









 Một số các thuộc tính cơ bản trong
file Ldif






dn: uid=anhtam_test,ou=Student,o=it,dc=ispace,dc=edu,dc=vn
objectClass: person
objectClass: inetOrgPerson
objectClass: organizationalPerson
objectClass: top
givenName: anhtam_test
uid: anhtam_test
cn: anhtam_test
telephoneNumber: 125698742
sn: anhtam_test
userPassword: {SSHA}WixBYpdCo4bEZPRPwUriImctcWZ9sDgQQ/WElg==
mail: anhtam_test
facsimileTelephoneNumber: 5426
entryUUID: bc95b0ee-6e3e-480d-83c1-2c1e13c89dc9
createTimestamp: 20100326001110Z
creatorsName: cn=Directory Manager,cn=Root DNs,cn=config
pwdChangedTime: 20100326001110.323Z
Stt
Tên
Mô tả
1
dn
Distinguished Name : tên gọi phân biệt
2
c
country – 2 kí tự viết tắt tên của một nƣớc
dc

Domain component - Thành phần tên miền
3
o
organization – tổ chức
4
ou
organization unit – đơn vị tổ chức
5
objectClass
Mỗi giá trị objectClass hoạt động nhƣ một
khuôn mẫu cho các dữ liệu đƣợc
lƣu giữ trong
một entry. Nó định nghĩa một bộ các thuộc tính phải đƣợc trình
bày trong entry (Ví dụ : entry này có giá trị của thuộc tính objectClass là
eperson, mà trong eperson có quy định cần có các thuộc tính là tên, email, uid ,
…thì entry
này sẽ có các thuộc tính đó), còn bộ các thuộc
tính tùy chọn có thể có
hoặc có thể không có
mặt.
6
givenName
tên
7
uid




















































 1.1.4. Các mô hình LDAP
 LDAP định nghĩa ra 4 mô
hình gồm có LDAP informmation,
LDAP Naming, LDAP Functional,
LDAP Security.
 1.1.4.1. Mô hình LDAP (LDAP
Information Model)
 - Mô hình LDAP Information
định nghĩa ra các kiểu của dữ liệu và các
thành phần cơ bản của thông tin mà bạn
có thể chứa
trong hư mục.
Hay chúng ta có
thể nói rằng
LDAP

Information mô
tả cách xây dựng
ra các khối dữ
liệu mà chúng ta
có thể sử dụng
để tạo ra thư
mục. Thành
phần cơ bản của
thông tin trong
một thư mục gọi
là entry đây là
một tập hợp
chứa các thông
tin về đối tượng
(Object).
Thường thì các
thông tin trong
một entry mô tả
một đối tượng
thật như là thông
tin về người,
nhưng đây
không phải là
qui định bắt
buộc với mô
hình. Ví dụ như
trên thư mục
dưới đây.











13
facsimileTelephoneNumber
số phách
14
createTimestamp
thời gian tạo ra entry này
15
creatorsName
tên người tạo ra entry này
16



















 Hình 3.1

 Một entry là tập hợp của
các thuộc tính, từng thuộc tính này mô tả
một nét đặc trƣng tiêu biểu của một đối
tượng. Mỗi thuộc tính có kiểu một hay
nhiều giá trị, kiểu của thuộc tính mô tả
loại thông tin được chứa, giá trị là dữ
liệu thực sự. Ví dụ một entry mô tả một
người với các thuộc tính: tên họ, tên, số
điện thoại, và địa chỉ email.

 Atrribute type  Atrribute values
 cn:  nguyen
 sn:  anhtam
 Telephone number:  0909638410
 Mail 

















 LDAP Data Interchange Format
(LDIF).
 - LDAP định nghĩa ra
LDIF là dạng văn bản để mô tả thông tin
thư mục. LDIF có thể mô tả một tập hợp
các entry thư mục hay là tập hợp các cập
nhật lên thư mục dữ liệu của các thư
mục có thể trao
đổi cho nhau
bằng cách dùng
LDIF.
 -
Ví dụ thông tin
thư mục ở dạng
văn bản LDIF,
đây là dạng
chuẩn dành cho
việc nhập và
xuất thông tin
trên thư mục, và
các tập tin LDIF

đều ở dạng
ASCII điều này
làm cho chúng
dễ dàng chuyền
tải trên hệ thống
email.
 -
Một entry thư
mục ở dạng
LDIF:









 -
Dạng một entry
LDIF bao gồm
nhiều dòng, đầu
tiên là
distinguished
name (dn) là tên
của entry thư
mục tất cả được
viết trên một
dòng, sau đó lần

lượt là các thuộc
tính của entry,
mỗi thuộc tính
trên một dòng
theo thứ tự là
kiểu thuộc tính :
dn: uid=cuonglc, dc=anhtam, dc=vn
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
cn: Nguyen Anh Tam
cn: AnhTam
sn: Nguyen
mail:
telephoneNumber: +84 0165 207 2093
description: Nhan vien chinh thuc
giá trị thuộc tính. Thứ tự các thuộc tính
không quan trọng tuy nhiên để dễ đọc
được thông tin chúng ta nên đặt các giá
trị objectclass trước tiên và nên làm sao
cho các giá trị của các thuộc tính cùng
kiểu ở gần nhau. Kiểu thuộc tính dữ liệu
qui định, mô tả dữ liệu được đặt vào và
cách thư mục so sánh giá trị khi dò tìm.


 * caseIgnoreString : qui
định trong trong một ngữ cảnh nào đó
thì chúng ta xem như nhau và không cần

thực hiện so sánh như là Tom và tom
như nhau không phân biệt chữ hoa và
thường.
 * caseExactString : trái
ngược lại với cú pháp trên phân biệt rõ
ràng chữ hoa và chữ thường . LDAP
sever không hổ trợ các kiểu dữ liệu trù
tượng chỉ hổ trợ duy nhất cho các kiểu
chuẩn. Không như những nghi thức khác
chẳng hạn là X.500 ngoài một số liểu dữ
liệu chuẩn (chuỗi, số, kiểu bool) và một
số kiểu dữ liệu phức tạp xây dựng từ các
kiểu dữ liệu trên. Tuy nhiên những giao
diện plug-in cho phép định nghĩa các cú
pháp mới.
 - Các thuộc tính cũng phân
thành 2 loại: thuộc tính người dùng,
thuộc tính thao tác thuộc tính người
dùng (user attributes) là các thuộc tính
bình thường của một entry thư mục, các
thuộc tính này có thể được điều chỉnh
bởi user của thư mục (tất nhiên là các
thao tác sữa chữa được phép) Thuộc
tính thao tác (operational attributes) đây
là các thuộc tính đặc biệt và chỉ có thể
được điều chỉnh bởi directory server hay
là các thuộc tính cho biết trạng thái của
thư mục, ví dụ một thuộc tính thao tác là
một thuộc tính modifytimestamp, những
thuộc tính này được bảo trì bởi thư muc

và nó cho biết thời điểm cuối cùng mà
entry này được cập nhật. Khi entry được
gởi đến cho client, các operational
attributes sẽ không được gởi đi cùng trừ
khi client yêu cầu.
 - Có một số ràng buộc trên
giá trị của thuộc tính. Một số server
software cho phép nhà quản trị khai báo
rằng một thuộc tính có thể giữ một hay
nhiều giá trị. Ví dụ như thuộc tính
givenName có
thể chứa nhiều
giá trị, khi một
người muốn
thêm vào nhiều
tên và cũng có
một số thuộc
tính chỉ chứa
duy nhất một giá
trị. những nhà
quản trị hệ thống
đặt ra phạm vi
giới hạn của dữ
liệu để ngăn
chặn các user sử
dụng vượt qua
giới hạn cho
phép
 Bảo Trì các hệ
thống thư mục.

 Bất kì một entry trong
thư mục có tập các kiểu thuộc
tính đây là các kiểu được yêu
cầu và được cho phép, ví dụ
như
 một entry mô tả một
người thì thuộc tính yêu cầu
cho entry đó là phải có
cn(common name) và sn
(surname). Một số thuộc tính
cho phép nhưng phải là cần
thiết cho entry mô tả một
người, các thuộc tính khác
không được yêu cầu hay
không được phép sẽ không có
mặt trong entry.
 Những tập hợp các tập
thuộc tính yêu cầu và thuộc
tính được phép được gọi là mô
hình thư mục (directory
schemas). Directory schemas
có thể được thiết kế cho phép
chúng ta có quyền điều khiển
và bảo trì các thông tin chứa
trong entry.
 Chúng ta đã có một
khối thông tin cơ bản đó là
entry, nhưng làm sao để có thể
sắp xếp xây dựng một cây
thông tin thư mục (directory

information tree) DIT. Chúng
ta sẽ nghiên cứu các quy tắc
xây dựng trong phần LDAP
Naming Model.
 1.1.4.2. Mô hình LDAP Naming (LDAP
Naming Model)
 Mô hình LDAP Naming
định nghĩa ra cách để chúng ta có thể
sắp xếp và tham chiếu đến dữ liệu của
mình. Hay chúng ta có thể nói rằng mô
hình này mô tả cách sắp xếp các entry
của chúng vào một cấu trúc có logical,
và mô hình LDAP Naming chỉ ra cách
để chúng ta có thể tham chiếu đến bất kỳ
một entry thư mục nào nằm trong cấu
trúc đó.
 Mô hình LDAP Naming
cho phép chúng ta có thể đặt dữ liệu vào
thư mục theo cách mà chúng ta có thể dễ
dàng quản lý nhất.











 Hì
nh
3.
2:
M
ột

y
th
ư
m
ục
L
D
A
P












 Hình
3.3: Hệ thống tập tin UNIX


 Có ba điểm khác biệt quan trọng :



 -











 -
 Điểm
khác biệt đầu
tiên giữa hai mô
hình là trong mô
hình LDAP
không thực sự
có một entry
gốc (root). Root
là nơi mà chúng
ta có thể đặt các
entry vào. Trên
hệ thống LDAP

có một entry
đặc biệt được
gọi là root DES
chứa các thông
tin về server,
nhưng đây
không phải là
một entry thư
mục bình
thường.
 Khác biệt
thứ hai là thư
mục LDAP mỗi
một node chứa
dữ liệu, và cũng
có thể là một
container chứa
các entry khác.
 Đây là
một khác biệt
với hệ thống tập
tin do ở hệ
thống tập tin chỉ
có thư mục có
thể chứa thư
mục con và chỉ
có tập tin mới
chứa dữ liệu.
 Distinguished
names & Relative

Distingguished name.

Distinguished names (DNS) trong LDAP đây
là tên của một entry chỉ ra cách bạn có thể tham chiếu
đến các entry trên thư mục, hai entry khác nhau trên
thư mục hai DNS cũng khác nhau.
 Giống như đƣờng dẫn của hệ thống tập
tin, tên của một entry LDAP được hình thành bằng
cách nối tất cả các tên của từng entry cấp trên (cha)
cho đến khi trở lên root, như hình trên ta thấy node có
màu đậm sẽ có tên là uid=ldap, ou=people,
dc=anhtam, dc=vn nếu chúng ta đi từ trái sang phải thì
chúng ta có thể quay ngược. lại đỉnh của cây, chúng ta
thấy rằng các thành phần riêng lẽ của cây được phân
cách bởi dấu phẩy khoảng trắng sau dấu phẩy là tuỳ ý,
do đó hai DNS sau là tương đương: uid=ldap,
ou=people, dc=anhtam, dc=vn
uid=ldap,ou=people,dc=anhtam,dc=vn
 Với bất kỳ một tổ chức nào, thành phần
trái nhất được gọi là relative distingguished name
(RDN), như đã nói đến tổ chức là tên duy nhất cho mỗi
entry trên thư mục, do đó các entry có cùng cha thì
RDN cũng phải phân biệt ví dụ hình dưới đây ta thấy
trên thư mục, mặc dù cho có hai entry có cùng RDN
cn=ldap như hai entry ở hai nhánh khác nhau.
 Để tạo ra một alias entry trong thư mục
trước tiên bạn phải tạo ra một entry với tên thuộc tính
là aliasedOjecctName với giá trị thuộc tính của entry
mà chúng ta muốn alias entry này chỉ đến.
 Nhưng không phải tất cả các LDAP

Directory Server đều hỗ trợ Aliases. Bởi vì một alias
entry có thể chỉ đến bất kỳ một entry nào, kể cả các
entry LDAP server khác. Do việc tìm kiếm khi gặp
phải một bí danh có thể phải thực hiện tìm kiếm trên
một cây thư mục khác nằm trên các server khác, do đó
làm tăng chi phi cho việc tìm kiếm và đây cũng là lý
do chính mà các phần mềm không hổ trợ alias.



 1.1.4.3. Mô hình LDAP Function
 - Phần trên chúng ta đã nói đến mô hình
LDAP Information và LDAP Naming, bây giờ chúng
ta sẽ xem xét mô hình LDAP Functional, đây là mô
hình mô tả các thao tác cho phép chúng ta có thể thao
tác trên thư mục. Chúng ta nhắc lại khái quát về mô
hình LDAP Functional.
 - Mô hình LDAP Functional chứa một
tập các
thao tác
chia thành
3 nhóm.
Thao tác
thẩm tra
(interrogati
on) cho
phép có thể
search trên
thư mục và
nhận dữ

liệu từ thư
mục. Thao
tác cập
nhật
(update):
add, delete,
rename và
thay đổi
các entry
thư mục.
Thao tác
xác thực và
điều khiển
(authentiac
tion and
control)
cho phép
client xác
định mình
đến cho thư
mục và
điều kiển
các hoạt
động của
phiên kết
nối.
 - Với version 3 giao thức LDAP ngoài 3
nhóm thao tác trên, còn có thao tác LDAP extended,
thao tác này cho phép nghi thức LDAP sau này có thể
mở rộng một cách có tổ chức và không làm thay đổi

đến nghi thức. Bây giờ chúng sẽ phân tích kĩ các thao
tác theo từng nhóm và đầu tiên là các thao tác LDAP
interrogation.
 - Các thao tác thẩm tra (LDAP
Interrogation)
 - Hai thao tác thẩm tra (LDAP
Interrogation) cho phép client có thể tìm và nhận lại
thông tin từ thư mục. nhưng nghi thức LDAP không có
thao tác đọc một entry thư mục,do đó khi đó chúng ta
muốn đọc một entry thì ta phải thực hiện tìm kiếm và
dừng tìm kiếm ngay khi nhận được kết quả đầu tiên.
Thao tác tìm kiếm (LDAP search operation) yêu cầu 8
tham số:
 Tham số đầu tiên là đối tượng cơ sở mà các thao tác tìm
kiếm thực hiện trên đây, tham số này là DN chỉ đến đỉnh của cây mà
chúng ta muốn tìm.
 Tham số thứ hai là phạm vi cho việc tìm kiếm, chúng ta có 3
phạm vi thực hiện tìm kiếm:


Phạm vi “base” chỉ ra rằng bạn muốn tìm ngay
tại đối tượng cơ sở
 Phạm vi “onelevel” thao tác tìm kiếm diễn
ra tại cấp dưới (con trực tiếp của đối
tượng cơ sở)
 Phạm vi “subtree” thao tác này thực hiện
tìm hết trên cây mà đối tượng cơ sở là
đỉnh.
 Tham số thứ baderefAliases , cho server biết
rằng liệu bí danh aliases có bị bỏ qua hay không

tham khảo đến khi thực hiện tìm kiếm, có 4 giá
trị mà derefAliases có thể nhận được:
Nerverderefaliases - nghĩa là thực hiện tìm kiếm
và không bỏ qua bí danh Ner (aliases) trong lúc
thực hiện tìm kiếm và áp dụng với cả đối tượng
cơ sở.
 Derefinsearching - bỏ qua các
aliases trong trong các entry cấp
dưới của đối tượng cơ sở, và
không quan tâm đến thuộc tính
của đối tượng cơ sở.
 Dereffindingbaseobject - ngược
lại với giá trị thuộc tính trên với
g
i
á

t
r


n
à
y

t
h
ì

v

i

c

t
ì
m

k
i
ế
m

s


b


q
u
a

c
á
c

a
l
i

a
s
e
s

c

a

đối tượng cơ sở, và không quan
tâm đến thuộc tính của các entry
thấp hơn đối tượng cơ sở.
derfAlways - bỏ qua cả hai nếu
việc tìm kiếm thấy đối tượng cơ
sở hay là các entry cấp thấp là các
entry aliases.
 Tham số thứ bốn cho server biết có tối đa bao
nhiêu Entry kết quả được trả về, ví dụ như nếu
client cho biết tham số này là 100, nhưng
server lại tìm được 500 entry thoả mãn, nhưng
lúc này server sẽ gởi 100 entry cho cilent, nếu
client đặt tham số này là zero thì client nhận
được tất cả các kết quả của việc dò tìm(chú ý
tham số này có thể được áp đặt bởi server và
những người dùng bình thường không thể thay
đổi được).
 Tham số thứ năm qui định thời gian tối đa
cho việc thực hiện tìm kiếm, khi thời gian tìm
kiếm đã vượt thời gian tối da thì Servẻ sẽ gởi
cho Clien LDAP_TIMELIMIT_EXCEEDED,

nếu tham số này được thiết lập là zero thì nghĩa
là không có giới hạn thới gian cho việc tìm
kiếm, cũng như tham số thứ bốn tham số này
có thể do server thiết lập một giới hạn và chỉ
có những người dùng có đặc quyền mới có thể
thay đổi được.
 Tham số thứ sáu attrOnly – là một tham số
kiểu bool, nếu được thiết lập là true, thì server
chỉ gởi các kiểu thuộc tính của entry cho client,
nhưng sever không gởi giá trị của các thuộc
tính đi, điều này là cần thiết nếu như client chỉ
quan tâm đến các kiểu thuộc tính chứa trong
 Tham số thứ bảy là bộ lọc tìm kiếm(search
filter) đây là một biểu thức mô tả các loại entry
sẽ được giữ lại. Trong LDAP chức năng tìm
kiếm với biểu thức lọc như vậy là rất linh
động, tham khảo chi tiết các loại bộ lọc với
phần tiếp theo.
 Tham số thứ tám và đây là tham số cuối cùng
đây là một danh sách các thuộc tính được giữ
lại với mỗi entry.
 Chỉ định các thuộc tính được giữ lại.
 Thao tác cập nhật, chúng ta có 4 thao tác
c

p
n
h

t

đ
ó
l
à
a
d
d
,
d
e
l
e
t
e
,
r
e
n
a
m
e
(
m
o
d
i
f
y
D
N

)
, và Update.
 Add: Thao tác add tạo ra một entry mới
với tên DN vàdanh sách các thuộc tính
truyền vào, khi thực hiện addmột entry
mới vào thư mục phải thoả các điều kiện
sau :
 Entry là nút cha của entry mới phải tồn
tại.Chưa tồn tại một entry nào có cùng tên
DN vớientry mới trên thư mục. Các thao
tác điều kiển truy cập trên thư mục là các
thaotác được phép
 Delete: Thao tác xoá (delete) chỉ cần
truyền vào tên của entry cần xoá và thao
tác thực hiện được nếu như:
• Entry tồn tại với tên là DN
truyền vào.
• Entry bị xoá không có các
entry con
 Các thao tác điều kiển truy cập trên thư mục là các thao tác được phép xoá.
 Rename: Thao tác rename hay modify
DN sử dụng để đổi tên hay dùng để di
chuyển các entry trong thư mục, các
tham số cần truyền vào là DN của entry
cần đổi tên, RDN mới của entry và một
số tham số tuỳ chọn dành cho các entry
là cha mới của entry di chuyển đến, và
cuối cùng là một cờ cho phép xoá hay
không xóa với RDN cũ. Cũng như trên
thao tác thực hiện được nếu như thoả:

 Các entry bị đổi tên phải tồn
tại.
 Tên mới của entry phải chƣa
tồn tại. LDAP version 2 không
hổ trợ thao tác modify DN, chỉ
có thao tác modify RDN, do
chỉ thay đổi RDN của entry cho
nên LDAP version 2 chỉ cho
phép thực hiện rename tên của
entry nhưng không có khả năng
di chuyển có đến nơi khác trên
cây
 Update: Thao tác cuối cùng là thao tác cập nhật với tham số
DN và tập hợp các thay đổi được áp dụng lên đây. Và thao tác này
đòi hỏi :
 Entry với DN truyền vào phải
tồn tại.
 Tất cả các thuộc tính thay đổi đều thực hiện thành
công
 Các thao tác cập nhật phải là các thao tác được phép.
 Nếu một điều kiện nào ở trên
k
h
ô
n
g

t
h
o



t
h
ì

c
á
c
h

c

p

n
h

n

s


k
h
ô
n
g

đ

ư

c

á
p

d

n
g

t
r
ê
n

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×