Quản lý xác thực tập trung với dịch vụ ldap linux
Trang 1Tên đề tài:
QUẢN LÝ XÁC THỰC TẬP TRUNG VỚI DỊCH VỤ LDAP LINUX
Tp Hồ Chí Minh , Ngày 19 Tháng 10 Năm 2011
GVHD: TRẦN VĂN TÀI
1 DƯƠNG QUỐC TUẤN MSSV: 995100300432 TRẦN HUỲNH AN DUY MSSV: 995100300073 TRẦN ĐOÀN KIẾN MSSV: 99510030017Mã lớp:03CCHT01
Khóa:03
Trang 3MỤC LỤC
LỜI CẢM ƠN 13
MỤC TIÊU ĐỀ TÀI 7
CHƯƠNG I: GIỚI THIỆU TỔNG QUAN 8
I. Lịch sử phát triển của Linux: 8II.Ưu điểm & khuyết điểm của Linux: 91. Ưu điểm: 9
1.1Kinh tế: 91.2Linh hoạt, uyển chuyển: 91.3Độ an toàn cao: 91.4Thích hợp cho quản trị mạng: 102 Khuyết điểm: 11
2.1 Đòi hỏi người dùng phải thành thạo: 112.2 Tính tiêu chuẩn hóa: 112.3 Số lượng các ứng dụng chất lượng cao trên Linux còn hạn chế: 112.4 Phần cứng: 12CHƯƠNG II: CÀI ĐẶT HỆ ĐIỀU HÀNH LINUX (CENTOS) 13
I. Yêu cầu phần cứng:13II.Đĩa cứng và phân vùng đĩa trong Linux: 13III.Quản lý ổ đĩa và partition trong Linux:13IV.Các bước cài đặt hệ điều hành Linux:151. Chọn phương thức cài đặt: 15
8.Cấu hình khu vực địa lý: 19
9.Đặt mật khẩu cho người quản trị: 20
Trang 410.Chọn loại cài đặt: 21
11.Tiến hành cài đặt hệ điều hành: 22
12.Sử dụng hệ điều hành: 23
CHƯƠNG III: GIỚI THIỆU CÁC DỊCH VỤ LIÊN QUAN 25
I. Dịch vụ DNS (Domain Name System):251. Giới thiệu: 25
2.Cách phân bổ dữ liệu quản lý domain name: 28
3.Phân giải thuận: 29
4.Phân giải nghịch: 29
5.Sự khác nhau giữa Zone và Domain: 29
6.Chứng nhận tên miền: 30
7.Phân loại Domain Name Server: 30
8.Sự ủy quyền (Delegation domain) 31
9.Resource record: 31
10.Giới thiệu phần mềm BIND: 34
II.Dịch vụ FTP (File Transfer Protocol):381. Giới thiệu: 38
2.Web server và hoạt động: 47
Trang 5IV.Dịch vụ Squid Proxy: 56
1. Giới thiệu Squid: 56
2.Những giao thức hổ trợ trên Squid: 56
3.Trao đổi cache: 57
4.Cài đặt và cấu hình Squid Proxy: 57
V.Dịch vụ Mail Server:611. Giới thiệu: 61
2.Cài đặt: 68
CHƯƠNG IV: CƠ SỞ LÝ THUYẾT LDAP 75
I. Giới thiệu về LDAP:751. Khái niệm cơ bản: 75
II.Phương thức hoạt động của LDAP:761 Một nghi thức client/sever: 76
2 LDAP Là một nghi thức hướng thông điệp: 76
3 Các thao tác của nghi thức LDAP: 78
4 Các thao tác mở rộng: 79
5 Mô hình kết nối Client – Server: 79
III.Các mô hình LDAP:801 LDAP Information Model: 80
2 LDAP Naming Model: 84
3 Mô hình LDAP Function: 88
4 Mô hình LDAP Security: 96
IV.Sử dụng LDAP:961 Ứng dụng xác thực dùng LDAP: 96
2 Một số ứng dụng sử dụng nghi thức LDAP: 97
Trang 6CHƯƠNG V: TRIỂN KHAI HỆ THỐNG 99I Phân tích hiện trạng hệ thống:99
II Cài đặt và cấu hình Open LDAP Replication Multi Master:101
1.Cài đặt: 1011.1 Các gói cài đặt: 101
2.Các file cấu hình: 1012.1Cấu hình file /usr/local/etc/openldap/slapd.conf: 101
III.Xây dựng Primary Domain Controller (Openldap with Samba):105
1. Cài đặt: 1051.1Các gói cài đặt: 105
2.Các file cấu hình: 1062.1 Cấu hình file /etc/openldap/slapd.conf: 106
2.2 Cấu hình file /etc/samba/smb.conf: 108
2.3 Tạo file script logon trong /var/lib/samba/netlogon/scripts 1092.4 Cấu hình file /var/lib/samba/sbin/smbldap_tools.pm: 111
IV.Xây dựng File-Server chứng thực LDAP (Samba):113
1. Cài đặt: 1131.1Các gói cài đặt: 113
2.Các file cấu hình: 1132.1 Cấu hình file /etc/samba/smb.conf: 113
2.2 Giám sát truy cập tài nguyên chia sẽ: 114
V.Xây dựng Mail-Server chứng thực LDAP (Postfix):116
1. Cài đặt: 1161.1Các gói cài đặt: 116
2.Các file cấu hình: 1162.1 Cấu hình file /etc/postfix/main.cf: 116
2.2Tạo file /etc/postfix/accountsmap.cf: 1172.3Tạo file /etc/postfix/ldap-aliases.cf: 1172.4Cấu hình file dovecot-ldap.conf: 117
2.5Cấu hình file dovecot.conf: 117
3.Tạo mail và kiểm tra: 1183.1Tạo email account: 118
Trang 73.2Kiểm tra gởi – nhận mail: 119
4.Cấu hình webmail: 1204.1Cấu hình file /etc/squirrelmail/config.php 120
4.2Sử dụng webmail: 120
VI.Xây dựng FTP-Server chứng thực LDAP (vsftpd):122
1. Cài đặt: 1221.1Các gói cài đặt: 122
2.Các file cấu hình: 1222.1Cấu hình file /etc/pam.d/vsftpd (chứng thực ldap): 122
2.2Cấu hình file /etc/vsftpd/ vsftpd.conf (cấu hình cơ bản): 122
3.Kiểm tra – sử dụng: 122
VII.Xây dựng Web-Server chứng thực LDAP (apache):124
1. Cài đặt: 1241.1Các gói cài đặt: 124
2.Các file cấu hình: 1242.1Cấu hình file /etc/httpd/conf/httpd.conf (chứng thực ldap): 124
3.Kiểm tra chứng thực truy cập: 125
VIII.Xây dựng Proxy, Firewall, VPN Server (IPCOP):126
1. Cài đặt: 1261.1Cài đặt IPCOP: 126
Trang 8Hình 8: Cấu hình khu vực địa lý 25
Hình 9: Đặt mật khẩu cho người quản trị 26
Hình 16: Giao diện Desktop 30
Hình 17a: Cơ chế phân cấp DNS 32
Hình 17b: Cơ chế phân cấp DNS 33
Hình 18: Zone và Domain 36
Hình 19: Delegation Domain 37
Hình 20: File cấu hình zone thuận 43
Hình 21: File cấu hình zone nghịch 43
Hình 22: Sơ đồ kết nối active FTP 45
Hình 23: Sơ đồ kết nối passive FTP 47
Hình 20: Hoạt động của giao thức HTTP 53
Hình 21: Mô tả phát sinh web động từ chương trình CGI 56
Hình 22: Chứng thực Digest 60
Hình 22: Squid Proxy 62
Hình 23: Sơ đồ hệ thống mail 69
Hình 24: Hệ thống mail cục bộ 70
Trang 9Hình 25: Hệ thống mail cục bộ có kết nối từ xa 70
Hình 26: Hệ thống mail hai Domain & một Gateway 71
Hình 27: Truy xuất samba swat 78
Hình 28: Đăng nhập samba thành công 78
Hình 29: Thao tác tìm kiếm cơ bản 83
Hình 30: Những thông điệp Client gửi cho Server 83
Hình 31: Nhiều kết quả tìm kiếm được trả về 84
Hình 32: Mô hình kết nối giữa client và server 85
Hình 33: Cây thư mục với các entry là các thành phần cơ bản 87
Hình 34: Cây thư mục LDAP 90
Hình 35: Hệ thống tập tin của UNIX 91
Hình 36: Một phần thư mục LDAP với các entry chứa thông tin 92
Hình 37: Ví dụ về relative distingguished name (RDN) 93
Hình 38: LDAP với alias entry 94
Hình 39: Thao tác tìm kiếm với phạm vi base 95
Hình 40: Thao tác tìm kiếm với phạm vi onelevel 96
Hình 41: Thao tác tìm kiếm với phạm vi subtree 96
Hình 42: Xác thực dùng LDAP 103
Hình 43: Mô hình đơn giản lưu trữ 103
Hình 44: Dùng LDAP để quản lý thư 104
Hình 45: Khai báo schema 107
Hình 46: Khai báo tham số ldap 107
Hình 47: Định nghĩa database, tên phân giải, user quản trị, thư mục lưu trữ database 108
Hình 48: Khai báo các tham số đồng bộ ldap 108
Hình 49: Chỉ định logfile 108
Hình 50: Tạo các đối tượng cho ldap 108
Hình 51: Khai báo schema 109
Hình 52: Khai báo tham số ldap 109
Hình 53: Định nghĩa database, tên phân giải, user quản trị, thư mục lưu trữ database 109
Hình 54: Khai báo các tham số đồng bộ ldap 109
Hình 55: User u1 đã được đồng bộ sang ldap-svr2 110
Hình 56: User u2 đã được đồng bộ sang ldap-svr1 111
Trang 10Hình 57: Khai báo samba.schema 112
Hình 58: Khai báo tham số ldap 112
Hình 59: Định nghĩa database, tên phân giải, user quản trị, thư mục lưu trữ database 112
Hình 60: Khai báo chỉ mục cho database 113
Hình 61: Phân quyền cho các đối tượng 113
Hình 62: Khai báo thông tin chứng thực bằng ldap 113
Hình 63: Khai báo tên Domain, kiểu chứng thực 114
Hình 64: Khai báo logfile, logsize, script tạo các đối tượng cho DC 114
Hình 65: Cấu hình logon script, kiểu chứng thực 114
Hình 66: Cấu hình netlogon, tạo Profiles cho user 115
Hình 67: Nội dung file logon 116
Hình 68: Chỉ định đường dẫn file smbldap_bind.conf; smbldap.conf 117
Hình 69: Nhập các thông số cấu hình 117
Hình 70: Join Domain thành công 118
Hình 71: Client Windows XP đã được thêm vào Cơ sở dữ liệu LDAP 118
Hình 72: Các thư mục chia sẽ 120
Hình 73: Truy xuất file server từ client 120
Hình 74: Thông số samba swat 121
Hình 75: Giám sát chia sẽ tài nguyên 121
Hình 76: Chỉ định hostname, domain, origin, network 122
Hình 77: Khai báo virtual_alias_maps, virtual_mailbox_maps 122
Hình 78: Nội dung file accountsmap.cf 123
Hình 79: Nội dung file ldap-aliases.cf 123
Hình 80: Cấu hình file dovecot-ldap.conf 123
Hình 81: Cấu hình file dovecot.conf 124
Hình 82: Tạo email account 125
Hình 83: Cấu hình outlook express 125
Hình 84: Gởi – nhận mail thành công 126
Hình 85: Trang đăng nhập webmail 127
Hình 86: Giao diện webmail 127
Hình 87: Nội dung file /etc/pam.d/vsftpd 128
Hình 88: Cấu hình thông số ftp cơ bản 128
Trang 11Hình 95: Thông báo prepare harddisk 133
Hình 96: Quá trình cài đặt bắt đầu 134
Hình 106: Đặt ip cho ORANGE interface 139
Hình 107: Đặt ip cho RED interface 139
Hình 108: Thiết lập DNS và Gateway 140
Hình 109: Chỉ định DNS và Gateway 140
Hình 110: Cấu hình DHCP Server 141
Hình 111: Đặt password cho user root 141
Hình 112: Đặt password cho user admin 142
Hình 113: Đặt password backup 142
Hình 114: Hoàn tất cài đặt 143
Hình 115: Giao diện quản trị firewall 144
Hình 116: Cấu hình Proxy Server 145
Hình 117: Khai báo thông số chứng thực LDAP 146
Hình 118: Chứng thực user truy cập web 147
Hình 119: Thiết lập rule puplic dịch vụ 148
Hình 120: Thiết lập rule DNZ zone 149
Trang 12Hình 121: Thiết lập ping response 150
Hình 122: Thiết lập các thông số log 151
Trang 13LỜI CẢM ƠN
Để có thể hoàn tất được bài đồ án này, trước tiên phải kể đến công
thầy đã tận tình hướng dẫn và giúp đỡ trong thời gian thực hiện đồ ánnày.
Nhóm chúng em xin chân thành cảm ơn các thầy cô khoa Công NghệThông Tin Trường Cao Đẳng Nghề iSPACE đã truyền đạt những kiếnthức, những kinh nghiệm quý báu cho chúng em trong quá trình họctập tại trường.
Xin chân thành cảm ơn đến các bạn đã giúp đỡ tài liệu cũng như traođổi học thuật mới có thể thực hiện đồ án này.
Tp.Hồ Chí Minh, ngày 19 tháng 10 năm 2011
Học viên thực hiện
Dương Quốc Tuấn
Trần Huỳnh An Duy Trần Đoàn Kiến
Trang 14
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ốngMS Active Directory.
Trang 15CHƯƠ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ươngthích AMD, Cyrix Linux ngày nay còn có thể chạy trên các máy Macintosh hoặc SUNSparc
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àocủa Unix để tránh vấn đề bản quyền của Unix Tuy nhiên hoạt động của Linux hoàntoà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 đượcLinux, thì sẽ nắm được UNIX Giữa các hệ thống Unix sự khác nhau cũng không kémgì 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 đầuxem xét Minix, một phiên bản của Unix làm ra với mục đích nghiên cứu cách tạo ra mộthệ điều hành Unix chạy trên máy PC với bộ vi xử lý Intel 80386.
Ngày 25/8/1991, Linus cho ra version 0.01 và thông báo trên comp.os.minix củaInternet về dự định của mình về Linux
Tháng 01/1992, Linus cho ra version 0.12 với shell và C compiler Linus không cầnMinix nữa để recompile HDH của mình Linus đặt tên HDH của mình là Linux.
Năm 1994, phiên bản chính thức 1.0 được phát hành.
Quá trình phát triển của Linux được tăng tốc bởi sự giúp đỡ của chương trình GNU(GNU’s Not Unix), đó là chương trình phát triển các Unix có khả năng chạy trên nhiềuplatform Phiên bản mới nhất của Linux kernel là 2.6.25, có khả năng điều khiển cácmáy đa bộ vi xử lý ( hiện tại Linux hỗ trợ máy tính có tối đa 16 CPUs) Linux kernel2.6.25 cũng đồng thời nâng cấp hệ thống file Ext4 (phiên bản cũ là Ext3), giúp hỗ trợdung lượng block lớn hơn - từ 4K lên 64K và rất nhiều các tính năng khác (có thểdownload tại (http://www.kernel.org).
Trang 16Các phiên bản của Hệ điều hành Linux được xác định bởi hệ thống số dạng X.YY.ZZ.Nếu YY là số chẵn phiên bản ổn định, YY là số lẻ phiên bản thử nghiệm
II Ưu điểm & khuyết điểm của Linux:
1 Ưu điểm:1.1 Kinh tế:
Đó là một đặc điểm không thể bỏ qua của Linux Tuy nhiên đối với Linux đóvẫn chưa là tất cả Hệ điều hành này còn rất nhiều ưu điểm khác mà khôngmột hệ điều hành nào có Chính những đặc điểm này mới là nguyên nhânkhiế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.
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ữatheo 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ớimình nhất Mặt khác do Linux được một cộng đồng rất lớn những người làmphầ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ìmmộ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ấtnhiề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 raLinux cũng có cơ chế để một người dùng bình thường có thể tạm thời chuyển
Trang 17sang 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 (trongnhững 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 takhông thể biết được người ta viết gì, và viết ra sao mà chỉ biết được chúngchạy như thế nào Vì vậy nếu như Windows có chứa những đoạn mã cho phéptạo những "back door" để xâm nhập vào hệ thống của chúng ta thì chúng tacũ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ânviên an ninh không được phép để lộ một kẽ hở nào, dù là nhỏ nhất vì nó liênquan đế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 Linuxmọ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ủahệ điều hành Điều đó cũng có nghĩa là độ an toàn được nâng cao.
1.4 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ộthệ điều hành mạng rất giá trị Nếu như Windows tỏ ra là một Hệ điều hànhthí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ớicá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êntốt… Giao thức TCP/IP mà chúng ta vẫn thấy ngày nay chính là một giao thứctruyền tin của Linux (sau này mới được đưa vào Windows).
1.5 Chạy thống nhất trên các hệ thống phần cứng:
Trang 18Dù cho có rất nhiều phiên bản Linux được các nhà phân phối khác nhau banhà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 Core 2 Duo, 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 nhaunhưng về nguyên tắc vẫn có thể chạy được) Nguyên nhân là Linux được rấtnhiề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ếtbị 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ộtphiên bản Windows mới ra đời thì bao giờ kèm theo đó cũng là một cơn khátvề 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ưngkhách quan mà nói so với Windows, Linux vẫn chưa thể đến với người sử dụngcuố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êncá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ữngphiê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 nhân ban đầu cùng tồn tại như: RedHat, SuSE, Knoppix… Người dùng
Trang 19khă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ạnchế.
2.3 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ềmtương tự, (VD: OpenOffice trên Linux tương tự như MSOffice, hay GIMP tươngtự như Photoshopv v ) Tuy nhiên chất lượng những sản phẩm này là chưathể so sánh được với các sản phẩm viết cho Windows.
2.4 Phần cứng:
Một số nhà sản xuất phần cứng không có driver hỗ trợ Linux: Do hiện nayLinux chưa phổ biến bằng Windows nên nhiều nhà sản xuất không hỗ trợ cácdriver chạy trên Linux Tuy nhiên chúng ta vẫn có thể tìm thấy các driver nàytrên internet do cộng đồng mã nguồn mở viết.
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ệ điềuhành 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àymột ngày hai là chưa thể Tuy nhiên đối với những người làm tin học, đặc biệt làđối với sinh viên, việc tìm hiểu và nghiên cứu Linux và phần mềm mã nguồn mở làmột điều kiện rất tốt để nâng cao hiểu biết của mình Linux dẫu sao vẫn là một hệđiều hành rất có giá trị: chi phí thấp, linh hoạt, ổn đinh, và bảo mật cao.
Trang 20CHƯƠNG II: CÀI ĐẶT HỆ ĐIỀU HÀNH LINUX (CENTOS)
I Yêu cầu phần cứng:
Linux không đòi hỏi máy có cấu hình mạnh Tuy nhiên nếu phần cứng có cấu hìnhthấp quá thì có thể không chạy được Xwindow hay các ứng dụng có sẳn Cấu hình tốithiểu nên dùng:
CPU: Pentium 3 trở lên.
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ộthệ 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 4partion 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 (extendedpariton) Thực ra partion mở rộng cũng là primary partition nhưng cho phép tạo ra cácpartition con được gọi là logical partition trong nó.
Trang 21III 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ộttậ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.
Ký tự mô tả ổ đĩaCác thiết bị lưu trữ (Physical block devices)
hda Primary Masterhdb Primary Slavehdc Secondary Masterhdd Secondary Slavesda First SCSI disksdb Second SCSI dish
Bảng ký tự mô tả ổ đĩa
Ví dụ: Ổ cứng thứ nhất hda, ổ cứng thứ 2 hdb … xác định các parttion trong ổ đĩangười ta dùng các số đi kèm Theo qui định partition chính và mở rộng được gán số 1- 4 Các logical partition được gán các giá trị từ 5 trở đi.
Hình 1: Partition trong Linux
Như hình vẽ trên là các partition của ổ cứng thứ nhất hda: có 2 partition chính ký hiệulà hda1 và hda2, một partition mở rộng là hda3 Trong partition mở rộng hda3 có 2partition logic có ký hiệu là hda6 và hda5.
Trang 22Trong Linux bắt buộc phải có tối thiểu 2 partition sau:
Partition chính chứa thư mục gốc (/) và hạt nhân (gọi là Linux Native partition).Partition swap được dùng làm không gian hoán đổi dữ liệu khi vùng nhớ chínhđược sử dụng hết Kích thước của phần swap sử dụng tùy thuộc hệ thống mìnhsử dụng nhiều hay ít ứng dụng Thông thường thì kích thước vùng swap bằng kíchthước bộ nhớ chính.
IV Các bước cài đặt hệ điều hành Linux:
1 Chọn phương thức cài đặt:
CD-ROM: Có thể khởi động từ CD-ROM hoặc khởi động bằng đĩa mềm boot.Đĩa cứng: Cần sử dụng đĩa mềm boot (dùng lệnh dd hoặc mkbootdisk để tạo đĩamề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:
Trang 23Hình 2: Chọn chế độ cài đặt
Chúng ta có thể chọn các chế độ:
Linux text: Chương trình cài đặt hệ điều hành dưới chế độ text (text mode).[ENTER]: Chương trình cài đặt hệ điều hành dưới chế độ đồ họa (Graphical mode).
3 Chọn ngôn ngữ hiển thị trong quá trình cài đặt:
Mặc định trong bước này hệ thống sẽ chọn English làm ngôn ngữ chính hiển thịtrong quá trình cài đặt Thông thường trong bước này ta sẽ chấp nhận phươngthức chọn mặc định của hệ thống, tiếp tục chọn Next để sang trang kế tiếp.
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
Trang 24Hình 4: Chọn kiểu bàn phím
5 Chia partition:
Remove all partition on selected drivers and create default layout: Loại bỏ tất cảcác partition có sẵn trong hệ thống và hệ thống sẽ tạo tự động theo mặc định.Remove linux partition on selected drivers and create default layout: Loại bỏ tất cảcác Linux partition có sẳn trong hệ thống và hệ thống sẽ tạo tự động theo mặcđịnh.
Use free space on selected drivers and create default layout: Dùng không gian còntrống trên ổ đĩa vàn hệ thống sẽ tạo tự động theo mặc định.
Create custom layout: Chia partition theo tùy chọn của người dùng (manually).
Trang 25Tùy theo từng yêu cầu mà chúng ta chọn các cách chia partition cho phù hợp, sau đó chọnNext.
Hình 5: Chia partition
6 Cài đặt chương trình Boot Loader:
Boot Loader là chương trình cho phép chúng ta chọn các hệ điều hành để khởiđộng qua menu Khi chúng ta chọn, thì chúng xác định các tập tin cần thiết để khởiđộng hệ điều hành và giao quyền điều khiển lại cho hệ điều hành Boot Loader cóthể được cài vào Master Boot record hoặc vào sector đầu tiên của partition.
Linux cho phép chúng ta sử dựng chương trình Boot Loader là GRUB hoặc LILO.Cả hai Boot Loader đều có thể hổ trợ quản lý nhiều hệ điều hành trên một hệthống:
Trang 26Chúng ta chọn cài Boot Loader vào Master Boot Record (MBR) khi chưa cóchương trình Boot Loader nào (ví dụ như của Windows) được cài, hoặcchúng ta chắc chắn chương trình Boot Loader của mình có thể khởi độngđược các hệ điều hành khác trong máy Khi cài lên MBR thì các chương trìnhBoot Loader trước đó sẽ bị thay thế bằng Boot Loader mới.
Chúng ta không cài chương trình Boot Loader, khi đó cần phải sử dụng đĩamềm boot để khởi động hệ điều hành.
Ta có thể đặt mật khẩu cho boot loader thông qua tùy chọn User a bootloader password và nhấn nút Change password.
Hình 6: Cài Boot Loader
Trang 27Hostname: Nếu chúng ta có tên dns đầy đủ thì khai báo tên đầy đủ Trong trường hợp không kết nối vào mạng chúng ta cũng đặt tên cho máy thông qua mục chọn manually Nếu không tên nào được điền vào thì giá trị mặc nhiên sử dụng là localhost
Miscellaneous Settings: Để chỉ định địa chỉ Gateway và Primary DNS, và một số thông số khác Các trường không có giá trị thì trường đó không được sử dụng trong hệ thống.
Hình 7: Cấu hình mạng
8 Cấu hình khu vực địa lý:
Các vị trí chia theo châu lục Ở Việt Nam là Asia/Ho_Chi_Minh, ta có thể chọn mụcnày một cách dễ dàng thông qua việc định vị chuột tại đúng vị trí trên bảng đồ Next.
Trang 28Hình 8: Cấu hình khu vực địa lý
9 Đặt mật khẩu cho người quản trị:
Trên Linux người quản trị thường được gọi là người root Mật khẩu của user rootbắt buộc có chiều dài tối thiểu của password là 6 ký tự Chúng ta nên đặtpassword gồm có ký tự, số và các ký tự đặc biệt để bảo đảm an toàn Lưu ýpassword phân biệt chữ hoa và thường Next.
Hình 9: Đặt mật khẩu cho người quản trị
10 Chọn loại cài đặt:Một số cài đặt thông dụng:
Desktop: Cài đặt hệ điều hành phục vụ cho công việc của một mày trạm.Server: Cài đặt hệ điều hành phục vụ cho máy chủ.
Customize now: Có thể tích hợp các tùy chọn trên một cách tùy ý.
Trang 29Hình 10: Chọn loại cài đặt
Trang 3011 Tiến hành cài đặt hệ điều hành:
Sau khi thiết lập các thông số, chương trình sẽ tiến hành cài đặt hệ điều hành.
Hình 11: Quá trình cài đặt hệ điều hành
Sau khi quá trình cài đặt hoàn tất, hệ thống yêu cầu reboot
Hình 12: Cài đặt hoàn tất
Trang 31Sau khi hoàn tất quá trình cài đặt, để sự dụng hệ điều hành chúng ta phải thiết lậpmột vài thông số:
Cấu hình Firewall: Trong linux có tích hợp firewall để bảo vệ hệ thống chống lại một số truy xuất bất hợp pháp từ bên ngoài Ta có thể chọn Enable hoặc Disable Forward.
Hình 13: Cấu hình firewall
Tùy chỉnh ngày, giờ hệ thống:
Hình 14: Cài đặt ngày giờ hệ thống
Tạo user đăng nhập:
Trang 32Hình 15: Tạo user
Hoàn tất, đăng nhập và sử dụng:
Hình 16: Giao diện Desktop
Trang 33CHƯƠNG III: GIỚI THIỆU CÁC DỊCH VỤ LIÊN QUAN
Mỗi máy tính trong mạng muốn liên lạc hay trao đổi thông tin, dữ liệu cho nhaucần phải biết rõ địa chỉ IP của nhau Nếu số lượng máy tính nhiều thì việc nhớnhững địa chỉ IP này là rất khó khăn.
Mỗi máy tính ngoài địa chỉ IP ra còn có một tên máy còn gọi là Computer name.Đối với con người việc nhớ tên máy dù sao cũng dễ dàng hơn vì chúng có tínhtrực quan và gợi nhớ hơn địa chỉ 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 ARPAnet (tiền than 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 thong tin về ánh xạ tênmáy tính thành địa chỉ IP Trong đó tên máy chỉ là một chuỗi văn bản không phâncấp (flat name) Tập tin này được duy trì tại một máy chủ và các máy chủ khác lưugiữ bản sao của nó Tuy nhiên khi quy mô mạng lớn hơn, việc sử dụng tập tinHOSTS.TXT có các nhược điểm 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 vì không thể có hai máy tính 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ì bảo đảm để ngăn chặnviệc tạo hai tên trùng nhau vì không có cơ chế ủy quyền quản lý tập tin nên có nguy cơ bị xung đột tên.
Không đảm bảo sự toàn vẹn: việc duy trì một 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.
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 Người thiết kế cấu trúc của dịch vụ DNS là Paul Mockapetris – USC’s
Trang 34Information Sciences Institute, và các khuyến nghị RFC của DNS RFC 882 và 883,sau đó được bổ sung của RFC 1034, 1035.
Dịch vụ DNS 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à chương trình yêu cầuphân giải tên hay còn gọi là Resolver Nameserver chứa các thông tin CSDL củaDNS, còn Resolver đơn giản chỉ là các hàm thư viện dùng để tạo các truy vấn(query) và gửi chúng qua đến Nameserver.
DNS là một 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 truycập được trên toà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ăng cường thông qua cơ chế nhân bản (replication) và lưutạm (caching) Một hostname trong domain là sự kết hợp giữa những từ phâncách nhau bởi dấu “.” Ví dụ: hostname là server.thanhlong.com, trong đó server làtên máy và thanhlong.com là tên vùng Domain name phân bổ theo cơ chế phâncấp tương tự như sự phân cấp của hệ thống tập tin Unix/Linux.
Hình 17a: Cơ chế phân cấp DNS
Trang 35Cơ sở dữ liệu (CSDL) của DNS là một cây đảo ngược Mỗi nút trên cây cũng làgốc của 1 cây con Mỗi cây con là một phân vùng con trong toàn bộ CSDL DNSgọi là 1 miền (domain) Mỗi domain có thể phân chia thành các phân vùng con nhỏhơn gọi là các miền con (subdomain).
Mỗi domain có 1 tên (domain name) Tên domain chỉ ra vị trí của nó trong CSDLDNS Trong DNS tên miền là chuỗi tuần tự các tên nhãn tại nút đó đi ngược lênnút gốc của cây và phân cách nhau bởi dấu chấm Tên nhãn bên phải trong mỗidomain name được gọi là top-level domain.
Hình 17b: Cơ chế phân cấp DNS
.com Các tổ chức, công ty thương mại.org Các tổ chức phi lợi nhuận
.net Các trung tâm hổ trợ về mạng.edu Các tổ chức giáo dục
.gov Các tổ chức thuộc chính phủ.mil Các tổ chức quân sự
.int Các tổ chức được thành lập bởi các hiệp ước quốc tế
Trang 36Vì sự quá tải của những domain name đã tồn tại, do đó đã làm phát sinh những top-leveldomain mới.
.arts Những tổ chức liên quan đến nghệ thuật và kiến trúc.nom Những địa chỉ cá nhân và gia đình
.rec Những tổ chức có tính chất giải trí, thể thao.firm Những tổ chức kinh doanh, thương mại.info Những dịch vụ liên quan đến thông tin
Bên cạnh đó, mỗi nước cũng có một top-level domain Ví dụ top-level domain củaViệt Nam là vn, Mỹ là us, … Mỗi quốc gia khác nhau có cơ chế tổ chức phâncấp domain khác nhau.
2 Cách phân bổ dữ liệu quản lý domain name:
Những root nameserver (.) quản lý những top-level domain trên internet Tên máy và địachỉ IP của những nameserver này được công bố cho mọi người biết, chúng được liệt kêtrong bảng sau:
a.root-servers.net 198.41.0.4b.root-servers.net 128.9.0.107c.root-servers.net 192.33.4.12d.root-servers.net 128.8.10.90e.root-servers.net 192.203.230.10f.root-servers.net 192.5.5.241g.root-servers.net 192.112.36.4h.root-servers.net 128.63.2.53i.root-servers.net 192.36.148.17j.root-servers.net 192.58.128.30
Trang 37k.root-servers.net 193.0.14.129l.root-servers.net 198.32.64.12m.root-servers.net 202.12.27.33
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 nameserver và duy trì cơ sở dữ liệu cho tấtcả những máy tính trong domain Những nameserver của tổ chức được đăng kýtrên internet Một trong những nameserver này được biết như là Primary Server.Nhiều Secondary Name Server được dung để làm backup cho Primary NameServer Trong trường hợp Primary bị lỗi, Secondary được sử dụng để phân giảitên miền Primary Name Server có thể tạo ra những subdomain và ủy quyềnnhững subdomain này cho những nameserver khác.
Vai trò của Root Name Server: là máy chủ quản lý các name server ở mức level domain.
top-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ỉ IP của name server quản lý top-level domain mà tên miền này thuộc vào.Có hai loại truy vấn:
Truy vấn đệ quy: bắt buộc phải trả về kết quả tìm được hoặc thông báo lỗinếu như truy vấn này không phân giải được.
Truy vấn tương tác: trả lời cho resolver thông tin tốt nhất mà nó có được vàothời điểm lúc đó.
Trang 385 Sự khác nhau giữa Zone và Domain:Zone: bao gồm một domain hay nhiều subdomain.
Domain : bao gồm nhiều subdomain và zone.
Hình 18: Zone và Domain
6 Chứng nhận tên miền:
FULL QUALIFIED DOMAIN NAME (FQDN):
Một tên miền đầy đủ của một nút chính là chuỗi tuần tự các tên gọi của núthiện tại đi ngược lên gốc, mỗi tên gọi cách nhau bởi dấu chấm
Tên tuyệt đối (là tên có xuất hiện dấu chấm sau cùng) cũng được xem là tênmiền đầu đủ đã được chứng nhận.
7 Phân loại Domain Name Server:MASTER NAME SERVER:
Mỗi miền phải có một Master Name Server Người quản trị DNS sẽ tổ chứcnhững tập tin CSDL trên Master Name Server Server này có nhiệm vụ phângiải tất cả các máy trong miền hay zone.
SLAVE NAME SERVER:
Trang 39Có nhiệm vụ sao lưu những dữ liệu trên Master Name Server Có thể có mộthay nhiều Slave 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ải tên máy trênnhững mạng ở xa thông qua những Name Server khác.
Làm tăng tốc độ phân giải bằng cách sử dụng cache.Giảm bớt gánh nặng phân giải tên máy cho name server.Giảm việc lưu thông trên những mạng lớn.
8 Sự ủy quyền (Delegation domain)
Thông thường, miền cha cung cấp các domain cho miền con dưới hình thức ủyquyền cho miền con tự quản lý và tổ chức CLDS cho miền con.
Hình 19: Delegation Domain
Record SOA (Start of Authority):
Trong mỗi tập tin CSDL phải có một và chỉ một record SOA.
Record SOA chỉ ra rằng máy chủ name server là nơi cung cấp thông tin tincậy từ dữ liệu có trong zone
Cú pháp:
[tên-miền] IN SOA [tên-server-dns] [địa chỉ email] (
Trang 40serial number;refresh number;retry number;experi number;time-to-live number; )
serial number: Khi một Slave Server liên lạc với Master Server để lấy dữ liệu,trước tiên nó sẽ kiểm tra số serial Nếu số serial của master lớn hơn tức làdữ liệu đã hết hạn sử dụng và nó sẽ load lại dữ liệu mới Thông thường tađịnh dạng theo thời gian như sau:
Ví dụ : 10800 ; Refresh sau 3 giờ.
retry number: Nếu Slave Server không thể kết nối với Master Server sau mộtkhoảng thời gian refresh thì nó sẽ cố gắng kết nối lại sau retry giây Giá trịnày nhỏ hơn giá trị refresh.
Ví dụ : 3600 ; Retry sau 1 giờ
experi number: Nếu Slave Server không thể kết nối với Master Server saukhoảng thời gian expire (giây) này, thì Slave Server sẽ không trả lời mọi truyvấn về zone này nữa, vì nó cho rằng dữ liệu này đã quá cũ Giá trị này phảilớn hơn giá trị refresh và retry
Ví dụ : 604800 ; Expire sau 1 tuần.
time-to-live number: giá trị này được dùng cho tất cả các record trong tập tincơ sở dữ liệu Giá trị này cho phép những server khác cache lại dữ liệu trong1 khoảng thời gian xác định TTL
Ví dụ : 86400 ; TTL là 1 ngày