ĐỒ ÁN TỐT NGHIỆP
Tên đề tài:
QUẢN LÝ XÁC THỰC TẬP TRUNG VỚI DỊCH VỤ LDAP LINUX
4. Cấu hình bàn phím: 24
5. Chia partition: 25
6. Cài đặt chương trình Boot Loader: 26
7. Cấu hình mạng: 27
8. Cấu hình khu vực địa lý: 28
TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE
240 Võ Văn Ngân, QuậnThủ Đức, TP. Hồ Chí Minh
ĐT: 08.6. 2678999 Fax: 08 – 6261 0304
Khoa CNTT – Đồ Án Tốt Nghiệp: Quản lý xác thực tập trung với dịch vụ LDAP Linux Trang 4/176
9. Đặt mật khẩu cho người quản trị: 29
10. Chọn loại cài đặt: 30
11. Tiến hành cài đặt hệ điều hành: 32
12. Sử dụng hệ điều hành: 33
CHƯƠNG III: GIỚI THIỆU CÁC DỊCH VỤ LIÊN QUAN 35
I. Dịch vụ DNS (Domain Name System): 35
1. Giới thiệu: 35
2. Cách phân bổ dữ liệu quản lý domain name: 39
3. Phân giải thuận: 40
4. Phân giải nghịch: 40
5. Sự khác nhau giữa Zone và Domain: 41
6. Chứng nhận tên miền: 41
7. Phân loại Domain Name Server: 41
8. Sự ủy quyền (Delegation domain) 42
9. Resource record: 43
10. Giới thiệu phần mềm BIND: 45
II. Dịch vụ FTP (File Transfer Protocol): 50
1. Giới thiệu: 50
2. Mô hình hoạt động: 50
5. Phần mềm mail Postfix: 80
6. Phần mềm webmail: 81
VI. Dịch vụ Samba: 82
1. Giới thiệu: 82
2. Cài đặt: 82
CHƯƠNG IV: CƠ SỞ LÝ THUYẾT LDAP 89
I. Giới thiệu về LDAP: 89
1. Khái niệm cơ bản: 89
II. Phương thức hoạt động của LDAP: 90
1. Một nghi thức client/sever: 90
2. LDAP Là một nghi thức hướng thông điệp: 90
3. Các thao tác của nghi thức LDAP: 92
4. Các thao tác mở rộng: 93
5. Mô hình kết nối Client – Server: 93
III. Các mô hình LDAP: 94
TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE
240 Võ Văn Ngân, QuậnThủ Đức, TP. Hồ Chí Minh
ĐT: 08.6. 2678999 Fax: 08 – 6261 0304
Khoa CNTT – Đồ Án Tốt Nghiệp: Quản lý xác thực tập trung với dịch vụ LDAP Linux Trang 6/176
1. LDAP Information Model: 94
2. LDAP Naming Model: 98
3. Mô hình LDAP Function: 103
4. Mô hình LDAP Security: 111
IV. Sử dụng LDAP: 112
1. Ứng dụng xác thực dùng LDAP: 112
2. Một số ứng dụng sử dụng nghi thức LDAP: 112
CHƯƠNG V: TRIỂN KHAI HỆ THỐNG 114
I. Phân tích hiện trạng hệ thống: 114
2.2 Tạo file /etc/postfix/accountsmap.cf: 135
2.3 Tạo file /etc/postfix/ldap-aliases.cf: 135
2.4 Cấu hình file dovecot-ldap.conf: 135
2.5 Cấu hình file dovecot.conf: 135
3. Tạo mail và kiểm tra: 137
3.1 Tạo email account: 137
3.2 Kiểm tra gởi – nhận mail: 137
4. Cấu hình webmail: 139
4.1 Cấu hình file /etc/squirrelmail/config.php 139
4.2 Sử dụng webmail: 139
VI. Xây dựng FTP-Server chứng thực LDAP (vsftpd): 140
1. Cài đặt: 140
1.1 Các gói cài đặt: 140
2. Các file cấu hình: 140
2.1 Cấu hình file /etc/pam.d/vsftpd (chứng thực ldap): 140
2.2 Cấu hình file /etc/vsftpd/ vsftpd.conf (cấu hình cơ bản): 141
3. Kiểm tra – sử dụng: 141
VII. Xây dựng Web-Server chứng thực LDAP (apache): 142
1. Cài đặt: 142
1.1 Các gói cài đặt: 142
2. Các file cấu hình: 142
2.1 Cấu hình file /etc/httpd/conf/httpd.conf (chứng thực ldap): 142
3. Kiểm tra chứng thực truy cập: 144
VIII. Xây dựng Proxy, Firewall, VPN Server (IPCOP):
145
TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE
240 Võ Văn Ngân, QuậnThủ Đức, TP. Hồ Chí Minh
ĐT: 08.6. 2678999 Fax: 08 – 6261 0304
Hình 14: Cài đặt ngày giờ hệ thống 34
TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE
240 Võ Văn Ngân, QuậnThủ Đức, TP. Hồ Chí Minh
ĐT: 08.6. 2678999 Fax: 08 – 6261 0304
Khoa CNTT – Đồ Án Tốt Nghiệp: Quản lý xác thực tập trung với dịch vụ LDAP Linux Trang 9/176
Hình 15: Tạo user 34
Hình 16: Giao diện Desktop 35
Hình 17a: Cơ chế phân cấp DNS 37
Hình 17b: Cơ chế phân cấp DNS 38
Hình 18: Zone và Domain 41
Hình 19: Delegation Domain 43
Hình 20: File cấu hình zone thuận 49
Hình 21: File cấu hình zone nghịch 49
Hình 22: Sơ đồ kết nối active FTP 51
Hình 23: Sơ đồ kết nối passive FTP 53
Hình 20: Hoạt động của giao thức HTTP 60
Hình 21: Mô tả phát sinh web động từ chương trình CGI 63
Hình 22: Chứng thực Digest 67
Hình 22: Squid Proxy 69
Hình 23: Sơ đồ hệ thống mail 76
Hình 24: Hệ thống mail cục bộ 77
Hình 25: Hệ thống mail cục bộ có kết nối từ xa 78
Hình 26: Hệ thống mail hai Domain & một Gateway 78
Hình 27: Truy xuất samba swat 86
Hình 28: Đăng nhập samba thành công 86
Hình 29: Thao tác tìm kiếm cơ bản 91
Hình 30: Những thông điệp Client gửi cho Server 91
Hình 31: Nhiều kết quả tìm kiếm được trả về 92
Hình 56: User u2 đã được đồng bộ sang ldap-svr1 121
Hình 57: Khai báo samba.schema 122
Hình 58: Khai báo tham số ldap 122
Hình 59: Định nghĩa database, tên phân giải, user quản trị, thư mục lưu trữ database. 123
Hình 60: Khai báo chỉ mục cho database 123
Hình 61: Phân quyền cho các đối tượng 124
Hình 62: Khai báo thông tin chứng thực bằng ldap 124
Hình 63: Khai báo tên Domain, kiểu chứng thực 124
Hình 64: Khai báo logfile, logsize, script tạo các đối tượng cho DC 124
Hình 65: Cấu hình logon script, kiểu chứng thực 125
Hình 66: Cấu hình netlogon, tạo Profiles cho user 125
TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE
240 Võ Văn Ngân, QuậnThủ Đức, TP. Hồ Chí Minh
ĐT: 08.6. 2678999 Fax: 08 – 6261 0304
Khoa CNTT – Đồ Án Tốt Nghiệp: Quản lý xác thực tập trung với dịch vụ LDAP Linux Trang 11/176
Hình 67: Nội dung file logon 128
Hình 68: Chỉ định đường dẫn file smbldap_bind.conf; smbldap.conf 128
Hình 69: Nhập các thông số cấu hình 128
Hình 70: Join Domain thành công 129
Hình 71: Client Windows XP đã được thêm vào Cơ sở dữ liệu LDAP 130
Hình 72: Các thư mục chia sẽ 131
Hình 73: Truy xuất file server từ client 132
Hình 74: Thông số samba swat 132
Hình 75: Giám sát chia sẽ tài nguyên 133
Hình 76: Chỉ định hostname, domain, origin, network 134
Hình 77: Khai báo virtual_alias_maps, virtual_mailbox_maps 134
Hình 78: Nội dung file accountsmap.cf 135
Hình 79: Nội dung file ldap-aliases.cf 135
Hình 104: Chỉ định drivers cho NIC 152
Hình 105: Thiết lập IP address 152
Hình 106: Đặt ip cho ORANGE interface 153
Hình 107: Đặt ip cho RED interface 153
Hình 108: Thiết lập DNS và Gateway 154
Hình 109: Chỉ định DNS và Gateway 154
Hình 110: Cấu hình DHCP Server 155
Hình 111: Đặt password cho user root 155
Hình 112: Đặt password cho user admin 156
Hình 113: Đặt password backup 157
Hình 114: Hoàn tất cài đặt 157
Hình 115: Giao diện quản trị firewall 158
Hình 116: Cấu hình Proxy Server 159
Hình 117: Khai báo thông số chứng thực LDAP 160
Hình 118: Chứng thực user truy cập web 161
Hình 119: Thiết lập rule puplic dịch vụ 162
Hình 120: Thiết lập rule DNZ zone 163
Hình 121: Thiết lập ping response 164
Hình 122: Thiết lập các thông số log 165
Hình 123: Proxy logs 166
Hình 124: Firewall logs 167
TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE
240 Võ Văn Ngân, QuậnThủ Đức, TP. Hồ Chí Minh
ĐT: 08.6. 2678999 Fax: 08 – 6261 0304
Khoa CNTT – Đồ Án Tốt Nghiệp: Quản lý xác thực tập trung với dịch vụ LDAP Linux Trang 13/176
Hình 125: IDS logs 168
Hình 126: URL Filter logs 169
Hình 127: Cấu hình VPN Server 170
TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE
240 Võ Văn Ngân, QuậnThủ Đức, TP. Hồ Chí Minh
ĐT: 08.6. 2678999 Fax: 08 – 6261 0304
Khoa CNTT – Đồ Án Tốt Nghiệp: Quản lý xác thực tập trung với dịch vụ LDAP Linux Trang 15/176
MỤC TIÊU ĐỀ TÀI
Xây dựng hệ thống mạng chứng thực tập trung với OpenLDAP.
Xây dựng hệ thống chứng thực tập trung cho các dịch vụ: mail, ftp, samba, web.
Xây dựng hệ thống quản lí tập trung trên HDH Linux thay thế cho hệ thống MS Active
Directory.
TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE
240 Võ Văn Ngân, QuậnThủ Đức, TP. Hồ Chí Minh
ĐT: 08.6. 2678999 Fax: 08 – 6261 0304
Khoa CNTT – Đồ Án Tốt Nghiệp: Quản lý xác thực tập trung với dịch vụ LDAP Linux Trang 16/176
CHƯƠNG I: GIỚI THIỆU TỔNG QUAN
I. Lịch sử phát triển của Linux:
Linux là một HDH dạng UNIX (Unix-like Operating System) chạy trên máy PC với bộ
điều khiển trung tâm (CPU) Intel 80386 trở lên, hay các bộ vi xử lý trung tâm tương thích
AMD, Cyrix. Linux ngày nay còn có thể chạy trên các máy Macintosh hoặc SUN Sparc .
Linux được viết lại toàn bộ từ con số không, tức là không sử dụng một dòng lệnh nào của
Unix để tránh vấn đề bản quyền của Unix. Tuy nhiên hoạt động của Linux hoàn toàn dựa
trên nguyên tắc của hệ điều hành Unix. Vì vậy nếu một người nắm được Linux, thì sẽ
nắm được UNIX. Giữa các hệ thống Unix sự khác nhau cũng không kém gì giữa Unix và
Linux.
Năm 1991 Linus Torvalds, sinh viên của đại học tổng hợp Helsinki, Phần lan, bắt đầu
1.2 Linh hoạt, uyển chuyển:
Linux là một Hệ điều hành mã nguồn mở nên chúng ta có thể tùy ý sửa chữa
theo như mình thích (tất nhiên là trong khả năng kiến thức của mỗi người).
Chúng ta 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. 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 mỗi người 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, PC…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.
1.3 Độ an toàn cao:
Trước hết, trong Linux có một cơ cấu phân quyền hết sức rõ ràng. Chỉ có "root"
(người dùng tối cao) mới có quyền cài đặt và thay đổi hệ thống. Ngoài ra Linux
cũng có cơ chế để một người dùng bình thường có thể tạm thời chuyển sang
quyền "root" để thực hiện một số thao tác. Điều này giúp cho hệ thống có thể
chạy ổn định và tránh phải những sai sót dẫn đến đổ vỡ hệ thống (trong những
TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE
240 Võ Văn Ngân, QuậnThủ Đức, TP. Hồ Chí Minh
ĐT: 08.6. 2678999 Fax: 08 – 6261 0304
Khoa CNTT – Đồ Án Tốt Nghiệp: Quản lý xác thực tập trung với dịch vụ LDAP Linux Trang 18/176
phiên bản Windows gần đây, cơ chế phân quyền này cũng đã bước đầu được áp
dụng, nhưng so với Linux thì vẫn kém chặt chẽ hơn).
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ệ điều hành mã nguồn đóng như Windows, chúng ta không thể biết
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à chúng ta 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ệ điều hành mới thường không hỗ trợ các thiết bị quá cũ.
2. Khuyết điểm:
Dù cho hiện nay Linux đang có tốc độ phát triển nhanh hơn hẳn Windows nhưng
khách quan mà nói so với Windows, Linux vẫn chưa thể đến với người sử dụng
cuối. Đó là do Linux vẫn còn có những nhược điểm cố hữu:
2.1 Đò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 kĩ thuật viên CNTT. 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ệ điều hành 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.
2.2 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
TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE
240 Võ Văn Ngân, QuậnThủ Đức, TP. Hồ Chí Minh
ĐT: 08.6. 2678999 Fax: 08 – 6261 0304
Khoa CNTT – Đồ Án Tốt Nghiệp: Quản lý xác thực tập trung với dịch vụ LDAP Linux Trang 20/176
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
RAM: 64 MB trở lên cho text mode, 192 MB cho mode Graphics.
Đĩa cứng: Dung lượng đĩa phụ thuộc vào loại cài đặt:
Custom Instalation (minimum): 520MB.
Server (minimum): 870 MB.
Personal Desktop: 1.9 GB.
Custom Instalation (everything): 5.3 GB.
2M cho cardd màn hình nếu muốn sử dụng mode cho đồ họa.
II. Đĩa cứng và phân vùng đĩa trong Linux:
Đĩa cứng được phân ra nhiều vùng khác nhau gọi là Partion. Mỗi partion sử dụng một
hệ thống tập tin và dữ liệu lưu trữ dữ liệu. Mỗi đĩa chúng ta chỉ chia được tối đa 4
partion chính (primary). Giới hạn như vậy là do Master Boot Record của đĩa chỉ ghi tối
đa 4 chỉ mục tới 4 partion.
Để tạo nhiều partion lưu trữ dữ liệu (hơn 4) người ta dùng partion mở rộng (extended
pariton). Thực ra partion mở rộng cũng là primary partition nhưng cho phép tạo ra các
partition con được gọi là logical partition trong nó.
III. Quản lý ổ đĩa và partition trong Linux:
Linux sử dụng cơ chế truy xuất ổ đĩa thông qua tập tin. Mỗi ổ đĩa được gán với một tập
tin trong thư mục /dev/. Ký hiệu ổ đĩa fd cho ổ mềm, hd cho ổ cứng, sd dành cho ổ
SCSI. Ký tự a, b, c … gắn thêm vào để xác định các ổ đĩa khác nhau cùng loại.
TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE
240 Võ Văn Ngân, QuậnThủ Đức, TP. Hồ Chí Minh
ĐT: 08.6. 2678999 Fax: 08 – 6261 0304
Khoa CNTT – Đồ Án Tốt Nghiệp: Quản lý xác thực tập trung với dịch vụ LDAP Linux Trang 22/176
Ký tự mô tả ổ đĩa Các thiết bị lưu trữ (Physical block devices)
hda Primary Master
hdb Primary Slave
hdc Secondary Master
hdd Secondary Slave
Đĩa cứng: Cần sử dụng đĩa mềm boot (dùng lệnh dd hoặc mkbootdisk để tạo đĩa
mềm boot).
NFS image: Sử dụng đĩa khởi động mạng. Kết nối tới NFS server.
FTP: Sử dụng đĩa khởi động mạng. Cài trực tiếp qua kết nối FTP.
HTTP: Sử dụng đĩa khởi động mạng. Cài trực tiếp qua kết nối HTTP.
2. Chọn chế độ cài đặt:
Khi chương trình cài đặt khởi động sẽ hiển thị màn hình:
Hình 3: Chọn ngôn ngữ sử dụng
4. Cấu hình bàn phím:
Chọn loại bàn phím thích hợp Next
TRƯỜNG CAO ĐẲNG NGHỀ CNTT iSPACE
240 Võ Văn Ngân, QuậnThủ Đức, TP. Hồ Chí Minh
ĐT: 08.6. 2678999 Fax: 08 – 6261 0304
Khoa CNTT – Đồ Án Tốt Nghiệp: Quản lý xác thực tập trung với dịch vụ LDAP Linux Trang 25/176