Tài liệu Giáo trình Hướng dẫn xây dựng các Server trên red hat Linux 9 - Hồ Đắc Hoàng Hạc: HƯỚNG DẪN XÂY DỰNG CÁC
SERVER TRÊN RED HAT LINUX 9
Hồ Đắc Hoàng Hạc
Tô Thanh Hải
Huế, 9/2006
Hướng dẫn xây dựng các server trên Red Hat Linux 9 2/71
Lời giới thiệu
Tài liệu Hướng dẫn xây dựng các server trên Red Hat Linux 9 cung cấp cho
chúng ta những kiến thức nền tảng cơ bản về hệ điều hành Linux nói chung; một số
thao tác thường sử dụng trên Red Hat Linux 9 (RH9); và đặc biệt là các bước chi tiết
để tiến hành xây dựng các server trên RH9.
Tài liệu này được chia thành 10 chương với những nội dung chính như sau:
Chương 1 giới thiệu sơ lược về RH9, các thao tác đăng nhập và sử dụng cơ
bản. Chương này cũng bao gồm một số thông tin chỉ dẫn về tài liệu tham
khảo để cài đặt hệ điều hành RH9.
Chương 2, 3 hướng dẫn cách thiết lập địa chỉ IP và nêu một số lệnh thường
được sử dụng trên RH9.
Chương 4 trình bày những nhiệm vụ quản trị hệ thống trên RH9 mà người
quản trị nên thực hiện.
Chương 5, 6, 7 hướng dẫn chi tiết các bước để cài đặt và cấu hình các
serve...
71 trang |
Chia sẻ: quangot475 | Lượt xem: 822 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Giáo trình Hướng dẫn xây dựng các Server trên red hat Linux 9 - Hồ Đắc Hoàng Hạc, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
HƯỚNG DẪN XÂY DỰNG CÁC
SERVER TRÊN RED HAT LINUX 9
Hồ Đắc Hoàng Hạc
Tô Thanh Hải
Huế, 9/2006
Hướng dẫn xây dựng các server trên Red Hat Linux 9 2/71
Lời giới thiệu
Tài liệu Hướng dẫn xây dựng các server trên Red Hat Linux 9 cung cấp cho
chúng ta những kiến thức nền tảng cơ bản về hệ điều hành Linux nói chung; một số
thao tác thường sử dụng trên Red Hat Linux 9 (RH9); và đặc biệt là các bước chi tiết
để tiến hành xây dựng các server trên RH9.
Tài liệu này được chia thành 10 chương với những nội dung chính như sau:
Chương 1 giới thiệu sơ lược về RH9, các thao tác đăng nhập và sử dụng cơ
bản. Chương này cũng bao gồm một số thông tin chỉ dẫn về tài liệu tham
khảo để cài đặt hệ điều hành RH9.
Chương 2, 3 hướng dẫn cách thiết lập địa chỉ IP và nêu một số lệnh thường
được sử dụng trên RH9.
Chương 4 trình bày những nhiệm vụ quản trị hệ thống trên RH9 mà người
quản trị nên thực hiện.
Chương 5, 6, 7 hướng dẫn chi tiết các bước để cài đặt và cấu hình các
server trên RH9. Trong tài liệu này, tác giả chủ yếu tập trung mô tả và giải
thích ở ba server chính: DNS server, Web server và FTP server.
Chương 8 giới thiệu một số mẹo vặt thường được sử dụng trên RH9 như cài
đặt bộ gõ tiếng Việt, cài đặt các font Unicode, đặt lại mật khẩu root
Chương 9 giới thiệu tổng quan về vấn đề bảo mật trên RH9. Đây là một chủ
đề khá rộng. Do đó, những nội dung trong phạm vi tài liệu này chỉ mang
tính chất giới thiệu. Độc giả quan tâm có thể dựa vào những thông tin giới
thiệu này để đầu tư nghiên cứu và nắm bắt sâu hơn.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 3/71
Mục lục
Lời giới thiệu.............................................................................................................. 2
Chương 1. Giới thiệu về hệ điều hành RH9 ............................................................. 5
1.1. Giới thiệu về Linux ....................................................................................... 5
1.2. Giới thiệu về bộ sản phẩm RH9..................................................................... 6
1.3. Các hệ thống file trong RH9.......................................................................... 7
1.4. Thực hành tạo user & group .......................................................................... 7
1.5. Cấp quyền sử dụng file/thư mục cho user & group ........................................ 8
1.6. Thực hành chia sẻ tài nguyên cho user & group với NFS .............................. 9
1.7. Đăng nhập và sử dụng một số ứng dụng trên RH9....................................... 10
1.8. Một số lưu ý về việc tạo user & group......................................................... 15
Chương 2. Thiết lập địa chỉ IP trên RH9 ............................................................... 17
2.1. Giao thức mạng sử dụng trên RH9 .............................................................. 17
2.2. Thực hành thiết lập địa chỉ IP trong mạng nội bộ ........................................ 17
Chương 3. Tập lệnh thường dùng trên RH9 .......................................................... 20
3.1. Giới thiệu tổng quan về tập lệnh trên RH9 .................................................. 20
3.2. Một số trình soạn thảo thường dùng ............................................................ 20
3.3. Tập lệnh thường dùng trên RH9 .................................................................. 21
Chương 4. Quản trị hệ thống RH9 ......................................................................... 27
4.1. Giới thiệu về các nhiệm vụ quản trị hệ thống RH9 ...................................... 27
4.2. Quản trị hệ thống RH9 ................................................................................ 27
Chương 5. Xây dựng DNS server trên RH9........................................................... 36
5.1. Cài đặt phần mềm ....................................................................................... 36
5.2. Các file cấu hình ......................................................................................... 36
5.3. Các record của file zone .............................................................................. 37
5.4. Cấu hình caching-only server ...................................................................... 37
5.5. Cấu hình slave server .................................................................................. 38
5.6. Cấu hình master server ................................................................................ 39
Chương 6. Xây dựng Web server trên RH9........................................................... 43
6.1. Cài đặt phần mềm ....................................................................................... 43
Hướng dẫn xây dựng các server trên Red Hat Linux 9 4/71
6.2. Các file cấu hình ......................................................................................... 43
6.3. Các hình thức cấu hình Web server ............................................................. 44
6.4. Cấu hình DNS cho Web server.................................................................... 44
6.5. Cấu hình Web server ................................................................................... 44
6.6. Giải quyết sự cố trên Web server................................................................. 47
Chương 7. Xây dựng FTP server trên RH9 ........................................................... 49
7.1. Cài đặt phần mềm ....................................................................................... 49
7.2. Các file cấu hình ......................................................................................... 49
7.3. Cấu hình FTP server.................................................................................... 49
7.4. Cấu hình bảo mật cho FTP server................................................................ 53
7.5. Cấu hình mở rộng trên FTP server............................................................... 53
Chương 8. Một số mẹo vặt thường dùng trên RH9................................................ 56
8.1. Thực hành cài đặt bộ gõ tiếng Việt xvnkb trên Fedora (RH9)...................... 56
8.2. Thực hành cài đặt các font Unicode trên Fedora (RH9)............................... 57
8.3. Thực hành chia sẻ tài nguyên giữa Windows và Linux................................ 57
8.4. Lấy lại mật khẩu root .................................................................................. 59
Chương 9. Giới thiệu tổng quan về bảo mật với RH9............................................ 61
9.1. Những kinh nghiệm bảo mật trên RH9........................................................ 61
9.2. Tăng cường an ninh cho hệ thống Linux ..................................................... 62
Tài liệu tham khảo................................................................................................... 71
Hướng dẫn xây dựng các server trên Red Hat Linux 9 5/71
Chương 1. Giới thiệu về hệ điều hành RH9
Mục tiêu của chương
Kết thúc chương này chúng ta sẽ:
Hiểu được lịch sử ra đời hệ điều hành Linux
Biết được các thành phần chính của hệ điều hành Linux
Biết được bộ sản phẩm của RH9
Biết được các hệ thống file trong RH9
Biết cách tạo user & group
Biết cách cấp quyền sử dụng file/thư mục cho user & group
Biết cách chia sẻ tài nguyên cho user & group với NFS
Biết cách sử dụng một số ứng dụng trên RH9
Một số kiến thức liên quan
1.1. Giới thiệu về Linux
Linux là một hệ điều hành dùng cho các máy PC. Giờ đây, nó đã trang bị cho
người dùng giao diện đồ hoạ (GUI) với đầy đủ các tính năng như của Windows, Mac
(hệ điều hành chạy trên máy tính của hãng Apple).
Vào đầu năm 1991 Linus Torwalds, một sinh viên tại trường đại học Helsinki,
Phần Lan, đã bắt tay nghiên cứu một phiên bản Minix (like Unix) hỗ trợ các nội dung
như bộ nhớ ảo, đa người dùng, và dùng bộ chỉ lệnh 80386. Với ý tưởng tạo ra một hệ
điều hành miễn phí, phục vụ nhu cầu học tập thời bấy giờ. Và hơn thế nữa, đó là sự
chia sẻ kiến thức cho cả thế giới. Đến tháng 9/1991, phiên bản Linux beta đã ra đời.
Đến năm 1994, các phần hỗ trợ cho Linux bắt đầu tăng mạnh. Ngay sau đó
phiên bản 1.0 của Linux đã được phát hành. Chu kỳ phát triển cứ tiếp diễn cho đến
ngày nay. Hiện nay có rất nhiều hãng phát triển mạnh như Red Hat, Mardrake, SuSE,
Debian...
Linux là một phiên bản của hệ điều hành Unix - Hệ điều hành chuyên dùng cho
các máy Mainframe và Minicomputer. Do đó, nó kế thừa những đặc điểm cực mạnh
của hệ điều hành Unix. Đó là hỗ trợ xây dựng các Internet server tốc độ cao, hiệu quả
và ổn định như Web server, FPT server cùng với DNS server, Proxy server,
Mail server và News server.
Unix ra đời từ cuối những năm 1960s và đầu 1970s bởi tác giả Ken Thompson.
Ban đầu, hệ điều hành được phát triển cho mục đích nghiên cứu. Không như các hệ
điều hành khác, Unix được phát triển trong các trường đại học và các viện nghiên cứu.
Mặc dù là một hệ thống phức tạp, nhưng ngay từ đầu, hệ điều hành này đã được phát
triển với tính mềm dẻo cao, có thể sửa chữa một cách dễ dàng để tạo ra các phiên bản
khác nhau. Chính vì vậy nhiều hãng như IBM, SUN, HP đã sử dụng hệ điều hành
Unix ban đầu và phát triển thành phiên bản Unix của riêng họ.
Hiện nay, với cả GNOME và KDE, Linux đã cung cấp các giao diện đồ hoạ
mềm dẻo và dễ dùng. Không giống như Windows, Mac, chúng ta có thể chọn giao
Hướng dẫn xây dựng các server trên Red Hat Linux 9 6/71
diện mà mình sử dụng và tùy biến nó. Thêm vào đó là các Panel, vitual desktop và
menu. Với các cửa sổ quản lý tập tin, chúng ta có thể truy cập Internet.
Linux được phân phối miễn phí theo luật bản quyền GNU General public
License của hiệp hội phần mềm miễn phí (Free Software Foundation). Với bản quyền
này, Linux được phân phối miễn phí cho mọi người (gồm cả chương trình thực thi và
mã nguồn). Người dùng có thể sử dụng mã nguồn này để hiệu chỉnh và trở thành sản
phẩm của mình. Tuy nhiên, khi phân phối cho người khác, cần phải cung cấp cả sản
phẩm và mã nguồn.
GNU (Gnu’s Not Unix) là một dự án được được thành lập và quản lý bởi
Free Software Foundation nhằm mục đích cung cấp phần mềm miễn phí cho người
dùng, lập trình viên và những nhà phát triển. Sản phẩm của dự án này bao gồm:
Enviroments
Programming languages
Internet tools
Text Editors
Cũng như Unix, Linux được chia thành 3 phần chính:
Kernel: là chương trình lõi dùng để chạy các chương trình và quản lý các
thiết bị như đĩa cứng, máy in
Shell Environment: là một giao diện giữa người sử dụng và kernel
(Shell Environment có thể xem như người phiên dịch).
File Structure: thiết lập cách lưu trữ các tập tin và thư mục trên các thiết bị
lưu trữ.
1.2. Giới thiệu về bộ sản phẩm RH9
RH9 đóng gói toàn bộ 4 phiên bản khác nhau của mình vào trong một trình
quản lý cài đặt chung và được cung cấp trong bộ đĩa cài đặt gồm 6 đĩa CD. Trong đó:
3 CD đĩa chứa nguồn cài đặt. Đây chính là các đĩa được dùng trong quá
trình cài đặt các phiên bản RH9
2 CD đĩa chứa toàn bộ mã nguồn của hệ điều hành Linux và tất cả các ứng
dụng được cài cài đặt vào hệ thống máy tính
1 CD đĩa chứa tài liệu hướng dẫn các thao tác từ cơ bản đến nâng cao trên
RH9
Bốn phiên bản của RH9 là Personal Desktop, Workstation, Server và Custom.
Mỗi phiên bản có những điểm đặc thù sau:
Personal Desktop: nếu chúng ta cài đặt RH9 để sử dụng trong công tác văn
phòng thì đây là phiên bản thích hợp nhất. Phiên bản này sẽ đưa đến một
môi trường đồ họa thân thiện và các ứng dụng phục vụ công tác văn phòng
Workstation: nếu muốn phát triển ứng dụng trên RH9, đây là phiên bản
thích hợp. Phiên bản này sẽ trang bị cho hệ thống của chúng ta các công cụ
cần thiết để phát triển các ứng dụng trên môi trường Linux
Hướng dẫn xây dựng các server trên Red Hat Linux 9 7/71
Server: nếu muốn thiết lập các Linux server, phiên bản này là thích hợp.
Với phiên bản này, chúng ta sẽ chỉ thao tác trên cửa sổ dòng lệnh
Custom: nếu đã thân thiện với hệ điều hành RH9, phiên bản này sẽ giúp
chúng ta tùy ý chọn lựa các ứng dụng sẽ được cài đặt vào máy tính cùng với
hệ điều hành
Lưu ý: để cài đặt hệ điều hành RH9, chúng ta có thể tham khảo tại cuốn sách
Hướng dẫn cài đặt và quản trị mạng máy tính với Windows 2003 Server bằng
thực hành của các tác giả Nguyễn Kim Tuấn – Tô Thanh Hải, nhà xuất bản Giáo Dục.
1.3. Các hệ thống file trong RH9
RH9 cho phép chúng ta tạo và sử dụng một số hệ thống file khác nhau. Phần
sau đây mô tả sơ lược về các hệ thống file hiện đang sẵn dùng trên RH9.
Ext2 – Hệ thống file này hỗ trợ những kiểu file chuẩn trên Unix
(các file, thư mục thông thường, các liên kết mềm - symbolic links).
Chúng ta có thể tạo tên file với độ dài đến 255 ký tự. Ext2 được sử dụng phổ
biến trong các phiên bản Red Hat Linux 7.2 trở về trước
Ext3 – Hệ thống file này được phát triển từ Ext2. Điểm cải tiến quan trọng
nhất của Ext3 là giảm thiểu thời gian trong việc phục hồi (recovering) một
hệ thống file. Hệ thống file này được chọn mặc định khi cài đặt RH9
Swap – Phân vùng này hoạt động như tính năng của một bộ nhớ ảo.
Khi hệ thống không đủ bộ nhớ RAM để lưu trữ dữ liệu trong quá trình xử
lý, chúng sẽ ghi những liệu này lên phân vùng swap
Vfat – Hệ thống file này được thiết kế để tương thích với các hệ thống file
trên Windows
Ngoài ra, RH9 cũng hỗ trợ các phân vùng LVM (Logical Volume Memory),
software RAID nhằm mục đích tạo các hệ thống đĩa logic và sử dụng với
các thiết bị RAID
Kiến thức chuẩn bị
Để bước vào các phần thực hành trong chương này, chúng ta cần chuẩn bị
những kiến thức sau:
Nắm khái niệm về user & group
Nắm khái niệm về quyền đối với user & group
Nắm khái niệm về quyền đối với file/thư mục
Nắm được khái niệm chia sẻ tài nguyên giữa các hệ thống máy tính
Biết cách đăng nhập vào một hệ thống máy tính
Nội dung thực hành
1.4. Thực hành tạo user & group
Để tạo một user account từ cửa sổ dòng lệnh, chúng ta thực hiện các bước như
sau:
1. Mở một cửa sổ dòng lệnh.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 8/71
2. Nếu bạn không đăng nhập với root, gõ lệnh su – và nhập mật khẩu cho
root.
3. Gõ useradd theo sau là một khoảng trắng và username cho account mới
mà chúng ta đang tiến hành tạo tại dòng lệnh (ví dụ, useradd hdhhac).
Nhấn phím Enter. Thông thường các username có một vài sự khác nhau so
với họ và tên của user, chẳng hạn như hdhhac tương ứng với Hồ Đắc
Hoàng Hạc.
4. Gõ passwd theo sau là một khoảng trắng và username đã tạo ở trên (ví dụ,
passwd hdhhac).
5. Nhập một mật khẩu tại dấu nhắc New password: cho user mới và nhấn
phím Enter.
6. Nhập lại mật khẩu giống như ở trên tại dấu nhắc Retype new password: để
xác nhận rằng chúng ta đã gõ mật khẩu chính xác.
Để tạo một group từ cửa sổ dòng lệnh, chúng ta thực hiện các bước như sau:
1. Mở một cửa sổ dòng lệnh.
2. Nếu bạn không đăng nhập với root, gõ lệnh su – và nhập mật khẩu cho
root.
3. Gõ groupadd theo sau là một khoảng trắng và groupname mới mà chúng
ta đang tiến hành tạo tại dòng lệnh (ví dụ, groupadd admin). Nhấn phím
Enter.
Chú ý: để tạo một user account thuộc về một group đã xác định, chúng ta thực
hiện lệnh useradd với tùy chọn –g (ví dụ, useradd tthai –g admin).
1.5. Cấp quyền sử dụng file/thư mục cho user & group
Đối với RH9, một user sau khi được tạo ra có thể đăng nhập vào hệ thống và
sử dụng bất kỳ ứng dụng hoặc file và thư mục mà họ được quyền truy cập. Đây là hệ
thống quyền mặc định được thiết lập khi một user thông thường được tạo ra. RH9 xác
định rằng một user hoặc group có thể truy cập được tài nguyên hay không dựa vào các
quyền được gán cho user hoặc group đó.
Có ba quyền khác nhau dành cho file, thư mục và ứng dụng. Mỗi một ký tự sau
đây được sử dụng để mô tả một quyền tương ứng:
r – mô tả quyền chỉ đọc
w – mô tả quyền chỉ ghi
x – mô tả quyền thực thi
Ký tự thứ tư (–) biểu thị rằng không có quyền nào được cấp.
Mỗi một quyền trên đây được gán cho 3 loại user khác nhau, đó là:
owner – người sở hữu file, thư mục hoặc ứng dụng
group – group sở hữu file, thư mục hoặc ứng dụng
everyone – tất cả các user có khả năng truy cập vào hệ thống
Hướng dẫn xây dựng các server trên Red Hat Linux 9 9/71
Để xem quyền của một file, chúng ta sử dụng lệnh ls –l. Ví dụ, nếu user tthai
tạo một file có khả năng thực thi với tên là readme, đầu ra của lệnh ls -l readme sẽ
tương tự như sau:
-rwxrwxr-x 1 tthai tthai 6 Mar 15 07:19 readme
Các quyền trên file này được liệt kê ở phần đầu của dòng trên, bắt đầu với rwx.
Tập hợp rwx đầu tiên định nghĩa quyền của owner (người sở hữu file). Trong ví dụ
này, owner tthai có đầy đủ các quyền (read, write, và execute). Tập hợp rwx tiếp theo
định nghĩa quyền của group, và tập r-x định nghĩa quyền của tất cả các user còn lại.
Trong ví dụ trên, những user còn lại có thể đọc và thực thi file, nhưng không thể thay
đổi file này.
Việc cấp/hủy quyền trên file (bao gồm cả thư mục hoặc ứng dụng) được thực
hiện thông qua lệnh chmod. Lệnh này có 2 phương pháp để thay đổi quyền trên file:
Sử dụng số. Trong phương pháp này, 4 tương ứng với quyền đọc (read),
2 tương ứng với quyền ghi (write), và 1 tương ứng với quyền thực thi
(execute). Vì vậy, nếu chúng ta thiết lập quyền của một file là 444 thì cả
ba loại user là owner, group và everyone đều chỉ đọc được file này. Nếu
cộng các số lại với nhau (ví dụ, 4+2+1) chúng ta sẽ thiết lập được nhiều
quyền khác nhau cùng một lúc. Ví dụ, khi gõ lệnh
chmod 700 readme, user thuộc về owner sẽ có đầy đủ các quyền, trong
khi group và everyone không thể truy cập được.
Sử dụng ký tự. Trong phương pháp này, u tương ứng với user (owner),
g tương ứng với group, và o tương ứng với other (everyone). Các quyền
tương ứng lần lượt là r – đọc (read), w – ghi (write), và x – thực thi
(execute). Các ký hiệu dấu trừ (-) và cộng (+) được dùng để mô tả cho
việc hủy hoặc cấp quyền. Ví dụ, để cấp 2 quyền đọc, ghi trên file
readme cho user thuộc owner, chúng ta gõ lệnh chmod u+rw readme.
Để cấp quyền sử dụng file, chúng ta thường thực hiện các bước như sau:
1. Mở một cửa sổ dòng lệnh.
2. Nếu bạn không đăng nhập với root, gõ lệnh su – và nhập mật khẩu cho
root.
3. Gõ chmod theo sau là một khoảng trắng, tiếp đến là các quyền
(thường dùng phương pháp số) và tên file. (ví dụ, chmod 700 readme).
Nhấn phím Enter.
1.6. Thực hành chia sẻ tài nguyên cho user & group với NFS
Network File System (NFS) là một phương pháp phổ biến được dùng để chia sẻ
tài nguyên giữa các máy tính chạy hệ điều hành Linux trên cùng trên một mạng.
RH9 tích hợp sẵn hai dịch vụ để hỗ trợ cho việc chia sẻ tài nguyên:
NFS server: dịch vụ hỗ trợ chia sẻ tài nguyên
NFS client: dịch vụ hỗ trợ truy cập đến thư mục chia sẻ
Các bước thực hiện thao tác chia sẻ tài nguyên từ server như sau:
1. Từ cửa sổ dòng lệnh, dùng một trình soạn thảo để mở file cấu hình của
NFS. Ví dụ, vi /etc/exports.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 10/71
2. Di chuyển về cuối file này và bổ sung các dòng cấu hình vào file này.
Mỗi dòng tương ứng với một thư mục chia sẻ. Ví dụ:
/home 192.168.61.2(rw)
/usr/local 192.168.61.2(ro)
3. Lưu trữ file cấu hình và khởi động dịch vụ NFS bằng lệnh
/sbin/service nfs start. Khi muốn ngưng dịch vụ này, chúng ta thực hiện
lệnh /sbin/service nfs stop.
Từ máy trạm, để truy xuất được các thư mục đã chia sẻ trên server, chúng ta
thực hiện như sau:
1. Tạo thư mục để chứa nội dung của thư mục chuẩn bị truy cập (/mydir).
2. Trên cửa sổ dòng lệnh của máy trạm, gõ lệnh mount để truy cập đến thư
mục này. Ví dụ, mount 192.168.61.2:/usr/local /mydir.
1.7. Đăng nhập và sử dụng một số ứng dụng trên RH9
Đăng nhập hệ thống.
Có hai cách để đăng nhập vào hệ thống Linux, dòng lệnh và đồ hoạ.
Trên dòng lệnh
Sau khi nhấn nút Power để khởi động, chúng ta sẽ nhận được một dấu nhắc đợi
lệnh. Gõ tên người dùng vào đây.
Red Hat Linux release 9
Kernel 2.4.18-14 on an i686
localhost login: root
Sau khi nhấn phím Enter, chúng ta nhập mật khẩu.
Password: **********
Từ cửa sổ dòng lệnh đã đăng nhập thành công, nếu muốn sử dụng giao diện đồ
họa, chúng ta gõ lệnh startx.
Trên giao diện đồ họa
Tương tự như ở dòng lệnh, khi đã khởi động hệ thống, màn hình đăng nhập
xuất hiện:
Hướng dẫn xây dựng các server trên Red Hat Linux 9 11/71
Để đăng nhập với user root tại màn hình này, chúng ta nhập từ khóa root, và
nhấn phím Enter. Sau đó, nhập mật khẩu cho user root, nhấn phím Enter.
Thao tác này cũng thực hiện tương tự với những người dùng khác.
Thoát (logout) hệ thống.
Để thoát khỏi hệ thống từ giao diện đồ họa, chọn Main Menu => Log Out.
Một hộp thoại cảnh báo hiện ra. Chúng ta chọn chọn Log Out và nhấn nút OK.
Để thoát khỏi hệ thống từ giao diện dòng lệnh, gõ lệnh exit hoặc nhấn tổ hợp
phím Ctrl + D.
Tắt (shutdown) hệ thống.
Để shut down hệ thống từ giao diện đồ họa, chọn Main Menu => Log Out.
Một hộp thoại cảnh báo hiện ra. Chúng ta chọn Shut Down và nhấn nút OK.
Để thoát khỏi hệ thống từ giao diện dòng lệnh, gõ lệnh halt. Chúng ta cũng
có thể sử dụng lệnh shutdown now, hoặc init 0.
Tổ chức thư mục trên RH9.
Cũng giống như Windows, RH9 có một danh sách các thư mục chính được
tạo ra trong quá trình cài đặt, bao gồm:
/bin/ – Dùng để lưu trữ các lệnh của user, ngoài ra còn có thư mục
/usr/bin/
/sbin/ – Là vị trí của các lệnh hệ thống, ví du: shutdown
/root/ – Đây là thư mục home của user root (user có quyền cao nhất
tương tự như user Administrator của Windows)
Hướng dẫn xây dựng các server trên Red Hat Linux 9 12/71
/mnt/ – Thư mục này chứa những mount points (các thư mục dùng để
gắn các vị trí lưu trữ trên các ổ đĩa) cho các hệ thống file được mount
(gắn vào) sau khi hệ thống khởi động. Ví dụ, mount point của
CD là /mnt/cdrom/
/boot/ – Chứa nhân hệ điều hành và các file được dùng trong quá trình
khởi động hệ thống
/lib/ – Chứa thư viện được sử dụng bởi các chương trình nằm trong
thư mục /bin và /sbin. Thư mục /usr/lib/ chứa nhiều thư viện hơn nhằm
hỗ trợ cho các ứng dụng của người dùng
/dev/ – Lưu trữ các file thiết bị
/etc/ – Chứa các file và thư mục cấu hình
/var/ – Đây là vị trí của những file thường xuyên thay đổi, ví dụ:
các file log và printer spool
/usr/ – Bao gồm những file và thư mục liên quan trực tiếp đến các user
của hệ thống, ví dụ: các chương trình và các thư viện hỗ trợ
/proc/ – Một hệ thống file ảo (không được lưu trữ trên đĩa) chứa thông
tin hệ thống được sử dụng bởi một số chương trình
/initrd/ – Một thư mục được dùng để mount file ảnh initrd.img và nạp
các module cần thiết trong quá trình khởi động
/tmp/ – Thư mục để chứa các file lưu trữ tạm thời
/home/ – Thư mục mặc định của các user khi được tạo ra
/opt/ – Thư mục dùng lưu các file tùy chọn của các chương trình
Mở một cửa sổ dòng lệnh (Terminal) để thao tác trên giao diện đồ họa.
Khi sử dụng hệ điều hành Linux, có nhiều khi chúng ta cần phải sử dụng đến
dòng lệnh thay vì giao diện đồ họa. Để mở một cửa sổ thao tác dòng lệnh ngay trên
giao diện đồ họa, chúng ta chọn Main Menu => System Tools => Terminal.
Chúng ta cũng có thể mở một Terminal bằng cách nhấn chuột phải trên desktop
và chọn New Terminal.
Để thoát Terminal, nhấn biểu tượng x ở góc trên bên phải của cửa sổ Terminal.
Chúng ta cũng có thể gõ lệnh exit, hoặc nhấn tổ hợp phím Ctrl + D tại dòng lệnh.
Sử dụng đĩa mềm và đĩa CD trên RH9.
Sử dụng đĩa mềm
Để sử dụng đĩa mềm trên hệ thống Linux, chúng ta phải thực hiện lệnh mount:
# mount /mnt/floppy
Sau đó truy cập vào thư mục /mnt/floppy như thể làm việc trên đĩa mềm.
Để lấy đĩa mềm ra khỏi hệ thống, chúng ta phải thực hiện lệnh sau umount:
# umount /mnt/floppy
Hướng dẫn xây dựng các server trên Red Hat Linux 9 13/71
Sử dụng đĩa CD
Để sử dụng đĩa CD trên hệ thống Linux, chúng ta phải thực hiện lệnh mount:
# mount /mnt/cdrom
Sau đó truy cập vào thư mục /mnt/cdrom như thể làm việc trên đĩa CD.
Để lấy đĩa CD ra khỏi hệ thống, chúng ta phải thực hiện lệnh sau:
# umount /mnt/cdrom
Sử dụng trình duyệt web và ứng dụng gửi nhận email.
Trình duyệt
Sau khi đã kết nối Internet, chúng ta cần có một hoặc nhiều trình duyệt để
truy cập các website trên Internet. RH9 tích hợp một số trình duyệt như Mozilla,
Galeon,
Để khởi động trình duyệt Mozilla, chọn Mozilla Web Browser launcher trên
panel hoặc chọn từ Main Menu => Internet => Mozilla Web Browser.
Để khởi động trình duyệt Galeon, chọn từ Main Menu => Internet =>
More Internet => Galeon.
Ứng dụng email
Email là phương tiện giao tiếp rất phổ biến trên Internet. Chúng ta có thể
sử dụng email với một trình email client. Email client là một ứng dụng đáp ứng các
nhu cầu về gửi, nhận và đọc mail. RH9 tích hợp một số ứng dụng email như Evolution,
Mozilla Mail.
Để khởi động Evolution, chọn từ Main Menu => Internet => Email.
Để khởi động Mozilla Mail, chọn từ Main Menu => Extras Internet =>
Mozilla Mail.
Thao tác với các file văn bản.
RH9 tích hợp một số công cụ dành cho việc quản lý văn bản. Tiêu biểu là
OpenOffice.org Suite và Text Editor (Gedit).
OpenOffice.org Suite chứa một tập các ứng dụng tương tự như Microsoft
Office, bao gồm:
OpenOffice.org Writer: tương tự như Microsoft Word.
OpenOffice.org Calc: tương tự như Microsoft Excel.
OpenOffice.org Impress tương tự như Microsoft Power Point.
Mỗi ứng dụng này có thể đọc được các file có phần mở rộng như sau:
TÊN ỨNG DỤNG PHẦN MỞ RỘNG
OpenOffice.org Writer .sxw, .sdw, .doc, .rtf, .txt, .htm/.html
OpenOffice.org Calc .sxc, .dbf, .xls, .sdc, .slk, .csv, .htm/.html
Hướng dẫn xây dựng các server trên Red Hat Linux 9 14/71
OpenOffice.org Impress .sxi, .ppt, .sxd, .sdd
OpenOffice.org Draw
.sxd, .sda; export file thành một vài định dạng ảnh,
bao gồm .jpg, .bmp, .gif, và .png
Gedit là một trình soạn thảo văn bản đơn giản có những tính năng tương tự như
Notepad của Microsoft Windows. Để mở Gedit, chọn từ Main Menu => Accessories
=> Text Editor hoặc gõ gedit từ Terminal.
Sử dụng các tiện ích nén và giải nén.
File lưu trữ (archive file) và file nén (compress file)
Trong Linux, để tăng tốc độ truyền các gói tin trên mạng và giảm dung lượng
lưu trữ trên đĩa, người ta thường dùng các file lưu trữ và nén.
Sự khác nhau giữa các file lưu trữ và nén là:
Các file lưu trữ chỉ tập hợp các file và thư mục thành một file
Các file nén làm giảm kích thước của các file lưu trữ
Cho nên, trong Linux, người ta thường kết hợp hai chức năng này thành một
(vừa lưu trữ, vừa nén).
Tạo file lưu trữ: tar (tape archive)
Tiện ích này dùng tạo các file lưu trữ cho các file và thư mục, tức là tập hợp các
file và thư mục lại thành một file với phần mở rộng là .tar.
Sau khi đã tạo xong file, chúng ta có thể dùng các tiện ích nén để giảm dung
lượng các file .tar này.
Để tạo file lưu trữ, bạn dùng tiện ích tar, cú pháp:
# tar -uf ten_file.tar ten_file1 ten_file2 ten_thumuc
Để xem các file và thư mục nào chứa trong file .tar:
# tar -tf ten_file.tar
Để trả lại các file và thư mục ban đầu được lưu trữ thành file .tar
# tar -xf ten_file.tar
Tạo file nén: gzip, bzip2
Tiện ích này làm giảm kích thước các file và thư mục (nhất là các file .tar).
Có hai tiện ích nén thường dùng trên Linux.
Tiện ích gzip
Nén:
# gzip ten_file.tar
# ls
ten_file.tar.gz
Giải nén:
# gzip -d ten_file.tar.gz
Hướng dẫn xây dựng các server trên Red Hat Linux 9 15/71
# ls
ten_file.tar
Có thể giải nén theo cách khác:
# gunzip ten_file.tar.gz
# ls
ten_file.tar
Tiện ích bzip2
Như tiện ích gzip, nhưng tuỳ trường hợp mà người ta dùng bzip2 hay gzip.
Nén:
# bzip2 ten_file.tar
# ls
ten_file.tar.bz2
Giải nén:
# bunzip ten_file.tar.bz2
# ls
ten_file.tar
Truy cập các phân vùng Windows trên cùng một ổ đĩa với Linux.
Để truy cập đến một phân vùng Windows sẵn có trên hệ thống RH9, chúng ta
thực hiện theo các bước:
1. Xác định phân vùng Windows hiện tại đang nằm ở vị trí nào.
Để thực hiện thao tác này, chúng ta sử dụng Hardware Browser (chọn từ
Main Menu => System Tools => Hardware Browser).
2. Lựa chọn Hard Drives ở panel bên trái và tìm phân vùng Windows ở
panel hiển thị bên phải. Nếu phân vùng Windows ở dạng FAT, FAT32 thì
chúng ta có thể mount được, ngược lại với NTFS. Ví dụ, phân vùng
Windows là /dev/hda1.
3. Tạo một thư mục để mount phân vùng Windows vào đó. Ví dụ
# mkdir /mnt/winpart
4. Thực hiện lệnh sau để mount phân vùng Windows vào thư mục vừa tạo:
# mount -t vfat /dev/hda1 /mnt/winpart
5. Lúc này, chúng ta có thể chuyển vào /mnt/winpart và thao tác trên các file,
thư mục của phân vùng Windows.
1.8. Một số lưu ý về việc tạo user & group
Đối với user và group, bên cạnh thao tác tạo, chúng ta còn có thể thay đổi hoặc
xóa các đối tượng này bằng các lệnh groupmod, chage và userdel, groupdel. Để tham
khảo cách sử dụng các lệnh này, chúng ta sử dụng lệnh man. Ví dụ, man userdel.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 16/71
Tổng kết chương
1. Phiên bản Linux beta đã ra đời vào năm 1991.
2. Phiên bản Linux 1.0 đã ra đời vào năm 1994.
3. Linux hỗ trợ xây dựng các Internet server tốc độ cao, hiệu quả và ổn định.
4. Linux được phân phối miễn phí theo luật bản quyền GNU General public
License của hiệp hội phần mềm miễn phí (Free Software Foundation).
Với bản quyền này, Linux được phân phối miễn phí cho mọi người.
Người dùng có thể hiệu chỉnh mã nguồn để biến Linux trở thành sản phẩm
của mình. Tuy nhiên, khi phân phối cho người khác, cần phải cung cấp cả
sản phẩm và mã nguồn.
5. Linux được chia thành 3 phần chính: Kernel, Shell Environment và
File Structure.
6. RH9 đóng gói 4 phiên bản khác nhau của mình vào trong một trình quản lý
cài đặt chung và được cung cấp trong bộ đĩa cài đặt gồm 6 đĩa CD.
7. Bốn phiên bản của RH9 là Personal Desktop, Workstation, Server và
Custom.
8. RH9 cho phép chúng ta tạo và sử dụng một số hệ thống file khác nhau, đó
là: Ext2, Ext3, Swap, Vfat,...
9. Để tạo user account, chúng ta dùng lệnh useradd.
10. Để tạo group, chúng ta dùng lệnh groupadd.
11. Để cấp/hủy quyền truy cập file/thư mục, chúng ta dùng lệnh chmod.
12. Để chia sẻ tài nguyên giữa các hệ thống Linux với nhau, chúng ta sử dụng
phương pháp Network File System.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 17/71
Chương 2. Thiết lập địa chỉ IP trên RH9
Mục tiêu của chương
Kết thúc chương này chúng ta sẽ:
Biết được một số thông tin về giao thức mạng sử dụng trên RH9
Biết được các giao thức thường được cài đặt/sử dụng trên RH9
Biết được cách gán địa chỉ IP cho các máy trong mạng RH9
Một số kiến thức liên quan
2.1. Giao thức mạng sử dụng trên RH9
Nếu say mê Internet, hẳn bạn đã nghe nói đến TCP/IP (Transmission Control
Protocol/Internet Protocol), bộ giao thức này cung cấp nền tảng phần mềm cho các hệ
thống mạng máy tính liên kết với nhau trên Internet. RH9 sử dụng bộ giao thức chuẩn
TCP/IP, bộ giao thức truyền thông Unix-Unix, thường được gọi là UUCP (Unix to
Unix Copy Protocol) - và nhiều phương thức truyền thông qua cổng tuần tự khác.
RH9 sử dụng Samba – bộ giao thức SMB miễn phí – để cho phép truy cập
file/thư mục và máy in trên máy RH9 từ máy trạm DOS, Windows 95, Windows 98,
Windows NT trên mạng cục bộ. Điều này có nghĩa là RH9 hoạt động như một File
server.
Bước đầu đến với RH9 và mạng có lẽ là kết nối một máy đơn chạy RH9 với
Internet. Điều này thực hiện khá dễ dàng nếu bạn có modem và tài khoản dial-up tới
một nhà cung cấp dịch vụ Internet (ISP) nào đó: xác lập dịch vụ PPP (Point-to-Point
Protocol) và chọn tùy chọn TCP/IP trong khi cấu hình phần nhân RH9. Trong một số
trường hợp, bộ giao thức cũ SLIP vẫn được sử dụng thay vì PPP, nhưng có nhiều nhà
cung cấp dịch vụ vẫn đưa ra loại tài khoản SLIP được triển khai trên nền phần mềm
mô phỏng PPP. Vì vậy, bạn vẫn có khả năng sử dụng PPP trên máy trạm.
Kiến thức chuẩn bị
Để bước vào các phần thực hành trong chương này, chúng ta cần chuẩn bị
những kiến thức sau:
Hiểu được cách gán địa chỉ IP trong mạng nội bộ
Nắm được các thành phần cần thiết của thao tác thiết lập địa chỉ IP cho một
máy tính chạy hệ điều hành RH9 kết nối và hoạt động thành công trong một
hệ thống mạng (địa chỉ DNS server, địa chỉ Gateway, subnet mask)
Nội dung thực hành
2.2. Thực hành thiết lập địa chỉ IP trong mạng nội bộ
Việc thiết lập địa chỉ IP trên các máy tính chạy RH9 trong một mạng nội bộ có
thể được thực hiện theo nhiều cách. Tài liệu này mô tả 2 cách phổ biến thường được sử
dụng, đó là tiện ích ifconfig và trình hỗ trợ cấu hình setup.
Để thiết lập địa chỉ IP trên máy tính RH9 với tiện ích ifconfig, chúng ta thực
hiện các bước như sau:
1. Mở một cửa sổ dòng lệnh.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 18/71
2. Nếu bạn không đăng nhập với root, gõ lệnh su – và nhập mật khẩu cho
root.
3. Gõ ifconfig theo cú pháp như sau:
ifconfig [interface] netmask
Ví dụ: để thiết lập địa chỉ IP 10.238.200.10 với netmask 255.255.255.0 cho
card ethernet thứ nhất trên máy tính chạy RH9, chúng ta gõ lệnh như sau:
ifconfig eth0 10.238.200.10 netmask 255.255.255.0
4. Nhấn phím Enter.
5. Kiểm tra lại những thiết lập này bằng cách gõ ifconfig và nhấn phím Enter.
Để thiết lập địa chỉ IP trên máy tính RH9 với trình hỗ trợ cấu hình setup,
chúng ta thực hiện các bước như sau:
1. Mở một cửa sổ dòng lệnh.
2. Nếu bạn không đăng nhập với root, gõ lệnh su – và nhập mật khẩu cho
root.
3. Gõ setup, nhấn phím Enter.
4. Trong danh sách các thành phần cấu hình, chọn Network configuration.
5. Hộp thông báo với nội dung “Would you like to set up networking?” xuất
hiện. Chọn Yes để đồng ý với việc cấu hình các tham số mạng.
6. Nhập thông tin tương ứng vào các mục:
IP address:
Netmask:
Default gateway (IP):
Primary nameserver:
7. Chọn OK để đồng ý với những thiết lập.
8. Khởi động lại dịch vụ mạng để kích hoạt những thay đổi vừa được thực
hiện bằng lệnh:
# service network restart
9. Kiểm tra lại những thiết lập này bằng cách gõ ifconfig và nhấn phím Enter.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 19/71
Tổng kết chương
1. RH9 sử dụng bộ giao thức chuẩn TCP/IP, bộ giao thức truyền thông
Unix-Unix và nhiều phương thức truyền thông qua cổng tuần tự khác.
2. RH9 sử dụng Samba để cho phép truy cập tập tin và máy in trên máy RH9
từ máy trạm DOS, Windows 95, Windows 98, Windows NT trên mạng
cục bộ.
3. TCP/IP là giao thức dựa trên các chuẩn công nghiệp, là bộ của các giao thức
cho các hệ thống mạng WAN và là giao thức chuẩn cho Internet. Đây là
giao thức mặc định của RH9.
4. Bộ giao thức TCP/IP bao gồm 6 giao thức chính và một tập các tiện ích để
cung cấp các chuẩn cho việc truyền thông giữa các máy tính trên toàn mạng.
5. Mỗi máy tính trên mạng có một địa chỉ IP duy nhất. Các máy tính sử dụng
địa chỉ IP để định danh nó với các máy tính khác và truyền thông với các
máy tính khác trên mạng. Địa chỉ IP là một số 32 bít, bao gồm 4 octect 8 bít,
được phân tách bởi các dấu chấm và thường được viết dưới dạng thập phân.
6. Việc thiết lập địa chỉ IP trên các máy tính chạy RH9 trong một mạng nội bộ
có thể được thực hiện theo nhiều cách. Tài liệu này mô tả 2 cách phổ biến
thường được sử dụng, đó là: tiện ích ifconfig và trình hỗ trợ cấu hình setup.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 20/71
Chương 3. Tập lệnh thường dùng trên RH9
Mục tiêu của chương
Kết thúc chương này chúng ta sẽ:
Nắm tổng quan về tập lệnh trên RH9
Sử dụng được một số trình soạn thảo thông dụng
Sử dụng được tập lệnh thường dùng trên RH9
Các file cấu hình và chức năng của chúng
Một số kiến thức liên quan
3.1. Giới thiệu tổng quan về tập lệnh trên RH9
RH9 có một hệ thống đồ sộ các lệnh được sử dụng để tương tác giữa người sử
dụng với hệ điều hành. Để đơn giản trong việc nắm vững và thao tác với hệ thống
lệnh, người ta phân chia tập lệnh này thành những phần như sau:
User Commands: tập lệnh sử dụng để tương tác với user
System Calls: tập lệnh sử dụng để thực hiện những thao tác với hệ thống
Library Functions: tập lệnh gọi đến thư viện hệ thống
File: tập lệnh sử dụng để tương tác với các đối tượng file, thư mục và
ứng dụng
Administration and Privileged Commands: tập lệnh quản trị hệ thống và
thiết lập quyền ưu tiên
Other: một số lệnh còn lại
Chú ý: với phiên bản RH9, hầu như tất cả các lệnh đều có giao diện đồ họa
thay thế để thực hiện những nhiệm vụ tương đương. Có nghĩa là, nếu chúng ta cần
thực hiện lệnh mkdir để tạo ra một thư mục, thì chúng ta cũng có thể sử dụng một vài
thao tác nhắp chuột trên các cửa sổ đồ họa thân thiện để thực hiện thao tác này.
Kiến thức chuẩn bị
Để bước vào các phần thực hành trong chương này, chúng ta cần chuẩn bị
những kiến thức sau:
Nắm nguyên tắc hoạt động của một lệnh trên cửa sổ dòng lệnh
Hiểu được khái niệm trình soạn thảo (Editor)
Hiểu được các nhiệm vụ trong công tác quản trị hệ thống
Hiểu được các nhiệm vụ trong công tác quản trị mạng
Biết được các file cấu hình và chức năng của chúng
Nội dung thực hành
3.2. Một số trình soạn thảo thường dùng
Hướng dẫn xây dựng các server trên Red Hat Linux 9 21/71
Trên RH9, có rất nhiều trình soạn thảo để chúng ta tương tác với các file, thư
mục và ứng dụng. Trong đó, đặc biệt phải kể đến việc chỉnh sửa, thay đổi các file cấu
hình hệ thống.
Trên cửa sổ dòng lệnh, người ta thường sử dụng một trình soạn thảo đơn giản,
gọn nhẹ nhưng đáp ứng đủ những yêu cầu của việc cấu hình hệ thống. Đó là trình soạn
thảo vi.
Sau đây là một vài thao tác phổ biến trên trình soạn thảo này:
1. Để tạo một file mới, chúng ta gõ vi tên_file. Ví dụ: vi readme. Sau đó gõ
phím i để bắt đầu soạn thảo nội dung. Khi đã thực hiện xong, nhấn phím
Esc và gõ “:qw” để lưu nội dung file và thoát khỏi trình soạn thảo.
2. Để hiệu chỉnh một file đã có, chúng ta gõ vi tên_file. Ví dụ:
vi readme. Sau đó gõ phím i để bắt đầu việc hiệu chỉnh. Khi đã thực hiện
xong, nhấn phím Esc và gõ “:qw” để lưu và thoát khỏi trình soạn thảo.
Ngoài ra, người ta còn sử dụng một số trình soạn thảo khác như Gedit,
Midnight Commander để đơn giản hóa công việc hiệu chỉnh các file cấu hình.
3.3. Tập lệnh thường dùng trên RH9
Trong tập hợp các lệnh thường dùng trên RH9, người ta phân chia thành các
phần chính sau:
1. Khởi chạy và ngưng hệ thống
Stt Lệnh Giải thích
1 shutdown -h now Shutdown hệ thống ngay lập tức và không
khởi động lại
2 halt Tương tự như lệnh 1
3 shutdown -r 5 Shutdown hệ thống trong 5 phút và khởi
động lại
4 shutdown -r now Shutdown hệ thống ngay lập tức và khởi
động lại
5 reboot Tương tự như lệnh 4
6 startx Khởi chạy giao diện đồ họa (X system)
2. Truy cập và mount các File system
Stt Lệnh Giải thích
1 mount -t iso9660
/dev/cdrom /mnt/cdrom
Mount ổ đĩa CD-ROM vào hệ thống Linux
và gọi nó là cdrom trong thư mục /mnt
2 mount -t msdos
/dev/hdd /mnt/ddrive
Mount ổ đĩa cứng “D” vào hệ thống Linux
(dạng MSDOS File system) và gọi nó là
ddrive trong thư mục /mnt
Hướng dẫn xây dựng các server trên Red Hat Linux 9 22/71
3 mount -t vfat /dev/hda1
/mnt/cdrive
Mount ổ đĩa cứng “C” vào hệ thống Linux
(dạng VFAT File system) và gọi nó là
cdrive trong thư mục /mnt
4 umount /mnt/cdrom Unmount ổ đĩa CD-ROM cdrom
Chú ý: đối với đĩa CD, chỉ khi nào thực hiện lệnh umount chúng ta mới có thể
lấy đĩa CD ra khỏi ổ CD-ROM.
3. Tìm file và văn bản
Stt Lệnh Giải thích
1 find / -name fname Bắt đầu từ thư mục root (/), tìm file có tên
“fname”
2 find / -name “*fname*” Bắt đầu từ thư mục root (/), tìm file có
chứa chuỗi “fname”
3 locate missingfilename Tìm một file có tên là missingfilename sử
dụng lệnh locate. Ở đây giả sử rằng chúng
ta đã thực hiện lệnh updatedb (4)
4 updatedb Tạo hoặc cập nhật cơ sở dữ liệu về tất cả
các file tính từ thư mục root
5 which missingfilename Hiển thị thư mục con chứa file thực thi có
tên “missingfilename”
6 grep textstringtofind /dir Bắt đầu từ thư mục /dir, tìm và liệt kê tất
cả các file có chứa chuỗi “textstringtofind”
4. Di chuyển, sao chép, xóa và xem nội dung file
Stt Lệnh Giải thích
1 ls -l Liệt kê các file trong thư mục hiện thời sử
dụng long format
2 ls -F Liệt kê các file trong thư mục hiện thời và
chỉ ra kiểu của file (file type)
3 ls -laC Liệt kê các file trong thư mục hiện thời sử
dụng long format và hiển thị theo dạng các
cột
4 rm name Loại bỏ một file hoặc thư mục có tên
“name”
5 rm -rf name Loại bỏ toàn bộ một thư mục có tên
“name”, bao gồm tất cả các file và thư
mục con của nó
Hướng dẫn xây dựng các server trên Red Hat Linux 9 23/71
6 cp filename /home/dirname Sao chép file có tên “filename” đến thư
mục “/home/dirname”
7 mv filename /home/dirname Di chuyển file có tên “filename” đến thư
mục “/home/dirname”
8 cat filetoview Hiển thị nội dung của file “filetoview”
9 man -k keyword Hiển thị các trang trợ giúp chứa từ khóa
“keyword”
10 more filetoview Hiển thị nội dung file “filetoview” theo
từng trang, và sử dụng phím spacebar để
sang trang kế tiếp
11 head filetoview Hiển thị 10 dòng đầu tiên của file
“filetoview”
12 head -20 filetoview Hiển thị 20 dòng đầu tiên của file
“filetoview”
13 tail filetoview Hiển thị 10 dòng cuối cùng của file
“filetoview”
14 tail -20 filetoview Hiển thị 20 dòng cuối cùng của file
“filetoview”
5. Cài đặt phần mềm
Stt Lệnh Giải thích
1 rpm -ihv name.rpm Cài đặt gói rpm có tên “name.rpm”
2 rpm -Uhv name.rpm Cập nhật gói rpm có tên “name.rpm”
3 rpm -e package Xóa gói rpm có tên “package”
4 rpm -l package Liệt kê các file chứa trong gói có tên
“package”
5 rpm -ql package Liệt kê các file chứa trong gói có tên
“package”. Các file này bao gồm cả số
hiệu phiên bản
6 rpm -i --force package Cài đặt lại gói rpm có tên “package” đã
từng bị xóa một số file (tức là việc xóa
không sử dụng đến lệnh rpm -e)
7 rpm –ihv *.rpm Cài đặt nhiều file .rpm phụ thuộc nhau
8 tar -zxvf archive.tar.gz
or tar -zxvf archive.tgz
Giải nén các file “archive.tar.gz” hoặc
“archive.tgz”
9 ./configure Thực hiện các cấu hình cần thiết trước khi
Hướng dẫn xây dựng các server trên Red Hat Linux 9 24/71
biên dịch mã nguồn chương trình cài đặt
6. Quản trị user
Stt Lệnh Giải thích
1 adduser accountname Tạo một user mới có tên “accountname”
2 passwd accountname Đặt mật khẩu mới cho “accountname”
3 su Chuyển sang superuser từ người dùng hiện
thời
4 exit Ngưng vai trò của superuser và trở về vai
trò của người dùng hiện thời
7. Một số phím nóng hữu ích
Stt Lệnh Giải thích
1 Control|Alt + hoặc - Tăng hoặc giảm độ phân giải màn hình.
Ví dụ, từ 640 x 480 đến 800 x 600
2 Alt | Esc Hiển thị các cửa sổ đang ở trạng thái hoạt
động
3 Shift | Control + F8 Thay đổi kích thước cửa sổ đang lựa chọn
4 Kích chuột phải trên
desktop
Hiển thị menu
5 Shift | Control Alt + r Refresh màn hình
6 Shift | Control Alt + x Khởi chạy một phiên làm việc X windows
mới
8. Các file cấu hình và chức năng của chúng
Stt Lệnh Giải thích
1 /etc/profile Biến môi trường hệ thống cho tất cả các
user
2 /etc/fstab Liệt kê các thiết bị và các mount point kết
hợp với chúng. Hiệu chỉnh file này để bổ
sung CD-ROM, các phân vùng DOS và
ổ đĩa mềm lúc hệ thống khởi động
3 etc/rc.d/rc.local Bash script thực thi lúc kết thúc tiến trình
đăng nhập vào hệ thống. Chức năng của
script này tương tự như file autoexec.bat
trong MSDOS
Hướng dẫn xây dựng các server trên Red Hat Linux 9 25/71
4 /etc/HOSTNAME Chứa trên đầy đủ của máy tính, bao gồm
cả domain
5 /etc/cron.* Có 4 thư mục tự động thực hiện tất cả các
script tại các khoảng thời gian được quy
định là giờ, ngày, tuần hay tháng
6 /etc/hosts Một danh sách các tên máy và địa chỉ IP
tương ứng
7 /etc/httpd/conf Các file cấu hình cho Apache Web server
8 /etc/inittab Chỉ định kiểu khởi động cho hệ thống
9 /etc/resolv.conf Định nghĩa địa chỉ IP cho các DNS server
10 /etc/smb.conf File cấu hình cho Samba server
11 /etc/X11/XF86Config File cấu hình cho X-Windows
Hướng dẫn xây dựng các server trên Red Hat Linux 9 26/71
Tổng kết chương
1. RH9 có một hệ thống đồ sộ các lệnh được sử dụng để tương tác giữa người
sử dụng với hệ điều hành. Để đơn giản trong việc nắm vững và thao tác với
hệ thống lệnh, người ta phân chia tập lệnh này thành những phần đặc trưng.
2. Với phiên bản RH9, hầu như tất cả các lệnh đều có giao diện đồ họa thay thế
để thực hiện những nhiệm vụ tương đương.
3. Trên RH9, có rất nhiều trình soạn thảo để chúng ta tương tác với các file,
thư mục và ứng dụng. Trong đó, đặc biệt phải kể đến việc chỉnh sửa, thay
đổi các file cấu hình hệ thống.
4. Trên cửa sổ dòng lệnh, người ta thường sử dụng vi để thực hiện những thao
tác với các file cấu hình hệ thống.
5. Tập lệnh thường dùng trên RH9 bao gồm:
a. Khởi chạy và ngưng hệ thống
b. Truy cập và mount các File system
c. Tìm file và văn bản trong file
d. Di chuyển, sao chép, xóa và xem nội dung file
e. Cài đặt phần mềm
f. Quản trị user
6. Một số phím nóng hữu ích trên RH9 giúp nhanh chóng thực hiện các thao
tác thường dùng.
7. Các file cấu hình thường tương tác và chức năng của chúng.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 27/71
Chương 4. Quản trị hệ thống RH9
Mục tiêu của chương
Kết thúc chương này chúng ta sẽ:
Hiểu được các nhiệm vụ trong việc quản trị hệ thống
Hiểu được đặc quyền của user root
Quản trị được hệ thống RH9
Một số kiến thức liên quan
4.1. Giới thiệu về các nhiệm vụ quản trị hệ thống RH9
Nhiệm vụ của một người quản trị hệ thống RH9 là bảo trì (maintenance) một hệ
thống máy tính, bao gồm cả việc cài đặt và duy trì sự hoạt động ổn định của phần cứng
và phần mềm trên hệ thống. Một người quản trị hệ thống có thể chỉ thực hiện nhiệm vụ
này trên chính máy tính riêng của mình, hoặc cũng có thể chịu trách nhiệm quản lý
một hệ thống hàng trăm user.
Trong chương này, chúng ta có dịp khảo sát những nội dung chính sau:
1. Làm việc với user root.
2. Bảo trì hệ thống (System Maintenance).
3. Quản lý user và group.
4. Thiết lập Disk Quota.
5. Phân tích hiệu suất hoạt động của hệ thống (Analyzing Performance).
6. Hiểu những nhiệm vụ bảo mật hệ thống.
7. Sử dụng các công cụ trợ giúp.
Kiến thức chuẩn bị
Để bước vào các phần thực hành trong chương này, chúng ta cần chuẩn bị
những kiến thức sau:
Đăng nhập hệ thống RH9
Thao tác được các lệnh thông dụng trên RH9
Nội dung thực hành
4.2. Quản trị hệ thống RH9
Làm việc với user root.
Để người quản trị hệ thống có thể thực hiện được các nhiệm vụ của mình, anh
ta phải có được những quyền ưu tiên (privileges) của superuser (root). Đây là những
quyền mà các user bình thường không có. Root là một user đặc biệt trên tất cả các hệ
thống Unix và Linux. User này có toàn quyền truy cập và thao tác trên hệ thống.
Vậy trong quá trình thực thi các nhiệm vụ trên hệ thống, quyền của root có thể
ảnh hưởng tới hệ thống đến mức nào? User này có thể xóa toàn bộ hệ thống với lệnh
rm –rf /. Bên cạnh quyền truy cập đến tất cả dữ liệu, user này cũng hoàn toàn có thể
Hướng dẫn xây dựng các server trên Red Hat Linux 9 28/71
thực hiện các thao tác sao lưu, phục hồi dữ liệu, bảo trì hệ thống, và các nhiệm vụ
bảo mật.
Một điểm cần chú ý là chúng ta có thể thay đổi mật khẩu của root một cách dễ
dàng chỉ với một đĩa khởi động. Các bước như sau:
1. Khởi động hệ thống với đĩa khởi động.
2. Mount vào phân vùng root.
3. Hiệu chỉnh file /etc/passwd để loại bỏ mật khẩu root.
4. Khởi động lại hệ thống từ đĩa cứng.
5. Thiết lập một mật khẩu mới cho root.
Đây sẽ là ưu điểm nếu RH9 được sử dụng với mục đích duy nhất là giảng dạy
cho người dùng Linux. Nhưng sẽ là vấn đề lớn nếu RH9 được sử dụng như một ISP tại
một vị trí không an toàn.
Bởi vì quyền được thiết lập cho root là toàn diện, cho nên để đảm bảo an toàn
cho hệ thống, tránh xảy ra những thao tác ngoài ý muốn có thể dẫn đến sự bất ổn định,
thậm chí phá hủy hệ thống, chúng ta thường đăng nhập với vai trò một user thông
thường. Tiếp đó, để thực hiện nhiệm vụ cần đến quyền của root, ta sử dụng lệnh su để
chuyển sang root và bắt đầu thực hiện các nhiệm vụ cần thiết. Sau khi hoàn thành,
chúng ta quay trở lại vai trò của user thông thường với lệnh exit.
Bảo trì hệ thống.
Để bảo trì hệ thống RH9, người quản trị hệ thống cần phải thực hiện các nhiệm
vụ sau:
Xác định được nơi để tìm kiếm thông tin khi cần
Lập các quy trình xử lý các tác vụ quản trị hệ thống. RH9 là một hệ điều
hành phức tạp. Rất nhiều file và tiến trình phụ thuộc vào các file và tiến
trình khác. Do đó, khi chuẩn bị thực hiện một thay đổi trên hệ thống,
chúng ta nên định nghĩa một quy trình thực hiện (các bước thực hiện).
Lượng thời gian dành vào việc lập kế hoạch và viết tài liệu cho nhiệm vụ
này phụ thuộc hoàn toàn vào độ phức tạp của nhiệm vụ đó, nhưng nhìn
chung chúng bao gồm những mục sau:
o Cung cấp thông tin mô tả về nhiệm vụ
o Cung cấp tài liệu về việc nhiệm vụ này sẽ ảnh hưởng đến hệ
thống như thế nào, bao gồm cả những file và tiến trình liên quan
o Lập kế hoạch sao lưu dự phòng trước khi thực hiện những thay
đổi. Thao tác này sẽ có tác dụng trong trường hợp chúng ta muốn
phục hồi lại cấu hình ban đầu của hệ thống
Quản lý user và group.
Tham khảo Chương I – Giới thiệu về Red Hat Linux 9, phần 1.4. Thực
hành tạo user & group.
Thiết lập Disk Quota.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 29/71
Mỗi user trên một mạng có thể được gán một phần nhỏ không gian lưu trữ của
mạng (không gian đĩa cứng trên các server). Nhiệm vụ này do người quản trị hệ thống
thực hiện. Thao tác này được gọi là cấp hạn ngạch đĩa cho user (disk quota).
Không gian đĩa cấp cho các đến user là được tính trên cơ sở các file và thư mục
mà user đó sở hữu. Khi tính toán không gian lưu trữ sử dụng, các file nén không được
xem xét, tức là disk quota trừ đi hạn ngạch của user dựa theo kích thước file chưa nén.
Người quản trị hệ thống có thể thực hiện các tác vụ sau: chỉ ra không gian đĩa
được cấp cho mỗi user bằng cách đặt giới hạn disk quota; chỉ ra khi nào một sự kiện
cảnh báo, để báo cho user cho biết rằng họ đang tiến gần đến giới hạn disk quota của
họ. Làm cho disk quota có hiệu lực và cấm các thao tác của user khi họ vượt quá giới
hạn disk quota hoặc cho phép họ được tiếp tục xử lý. Theo dõi một sự kiện khi ngưỡng
disk quota bị vượt.
Cấu hình Disk Quota.
Để cấu hình disk quota, chúng ta thực hiện các bước như sau:
1. Kích hoạt chức năng quota trên file system bằng cách hiệu chỉnh file cấu
hình /etc/fstab.
2. Remount file system(s).
3. Tạo file quota và sinh ra bảng chứa thông tin về dung lượng đĩa được sử
dụng.
4. Gán quota.
Mỗi bước được mô tả chi tiết như sau:
Kích hoạt chức năng quota trên file system bằng cách hiệu chỉnh file
cấu hình /etc/fstab.
Với vai trò root, bổ sung các tùy chọn usrquota và/hoặc grpquota vào
file system mà chúng ta dự định cấu hình quota. Ví dụ:
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
none /dev/pts devpts gid=5,mode=620 0 0
LABEL=/home /home ext3 defaults,usrquota,grpquota 1 2
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0
/dev/hda2 swap swap defaults 0 0
/dev/cdrom /mnt/cdrom udf,iso9660 noauto,owner,kudzu,ro 0 0
/dev/fd0 /mnt/floppy auto noauto,owner,kudzu 0 0
Trong ví dụ này, /home file system được kích hoạt cả user và group quota.
Remount file system(s).
Khởi động lại hệ thống để mount lại các thay đổi đã thiết lập trong fstab.
Tạo file quota và sinh ra bảng chứa thông tin về dung lượng đĩa được
sử dụng.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 30/71
Sau khi khởi động lại hệ thống, hệ thống đã có khả năng làm việc với disk
quota. Tuy nhiên, bản thân file system chưa hỗ trợ quota. Và bước tiếp
theo là chạy lệnh quotacheck để thực hiện thao tác này.
Lệnh quotacheck kiểm tra các file system đã kích hoạt quota và thiết lập
một bảng chứa các dung lượng đĩa hiện thời đã sử dụng trên mỗi file
system. Bảng này được sử dụng để cập nhật trạng thái dung lượng đĩa sử
dụng, đồng thời cập nhật các file disk quota.
Để tạo các file quota (aquota.user và aquota.group) trên file system,
chúng ta sử dụng tùy chọn –c trong lệnh quotacheck. Ví dụ, nếu user và
group quota đã được kích hoạt trên thư mục /home, thao tác tạo file quota
tương ứng với thư mục này sẽ là:
quotacheck -acug /home
Trong đó:
-a: chỉ định rằng tất cả các file system non-NFS đã mount trong file
/etc/mtab sẽ được kiểm tra xem đã kích hoạt quota hay chưa
-c: chỉ định rằng file quota sẽ được tạo cho mỗi file system với điều
kiện đã kích hoạt quota
-u: chỉ định việc kiểm tra user quota
-g: chỉ định việc kiểm tra group quota
Nếu tùy chọn –u được chỉ định, chỉ có file user quota được tạo. Nếu tùy
chọn –g được chỉ định, chỉ có file group quota được tạo.
Sau khi các file quota được tạo ra, chúng ta thực hiện lệnh sau để sinh ra
bảng chứa các dung lượng đĩa hiện thời đã sử dụng trên mỗi file system
với chức năng quota đã được kích hoạt:
quotacheck -avug
Trong đó:
-a: kiểm tra tất cả các file system đã kích hoạt quota và được mount
-v: hiển thị thông tin trạng thái đầy đủ của tiến trình kiểm tra quota
-u: kiểm tra thông tin user disk quota
-g: kiểm tra thông tin group disk quota
Sau khi lệnh quotacheck đã thực hiện xong, những file quota tương ứng
với các quota đã được kích hoạt (user và/hoặc group) sẽ định vị với dữ liệu
tại các quota-enabled file system, chẳng hạn như thư mục /home.
Gán quota.
Đối với mỗi User.
Bước cuối cùng là gán disk quota với lệnh edquota.
Để gán disk quota cho một user, với vai trò root chúng ta thực hiện lệnh:
edquota username
Hướng dẫn xây dựng các server trên Red Hat Linux 9 31/71
Thực hiện thao tác này tương ứng với mỗi user mà chúng ta muốn gán
disk quota. Ví dụ, nếu một quota được kích hoạt trong /etc/fstab với thư
mục /home (/dev/hda3) và lệnh edquota testuser được thực hiện, chúng ta
sẽ có được những thông tin về quota dành cho testuser như sau:
Disk quotas for user testuser (uid 501):
Filesystem blocks soft hard inodes soft hard
/dev/hda3 440436 0 0 37418 0 0
Trong đó:
Cột đầu tiên: hiển thị tên của file system có một quota đã được kích
hoạt
Cột thứ hai: hiển thị bao nhiêu block user đang sử dụng hiện tại
Hai cột tiếp theo: thiết lập soft limit và hard limit cho user
Một hard limit là dung lượng đĩa lớn nhất mà một user hoặc group có thể
sử dụng. Một khi đã đạt đến giới hạn này, user hoặc group sẽ không còn
dung lượng đĩa để tiếp tục sử dụng.
Soft limit cũng chỉ định dung lượng đĩa lớn nhất mà một user hoặc group
có thể sử dụng. Tuy nhiên, soft limit cho phép vượt quá dung lượng cho
phép trong một khoảng thời gian nào đó. Khoảng thời gian có thể được mô
tả bằng giây, phút, giờ, ngày, tuần, hoặc tháng.
Nếu tất cả các giá trị được thiết lập bằng 0, không có giới hạn nào được
thiết lập.
Để kiểm tra rằng quota tương ứng với user đã được thiết lập, sử dụng lệnh:
quota testuser
Đối với mỗi Group.
Để gán disk quota cho một group, với vai trò root chúng ta thực hiện lệnh:
edquota -g devel
Để kiểm tra rằng quota tương ứng với group đã được thiết lập, sử dụng
lệnh:
quota -g devel
Đối với mỗi File System.
Để gán disk quota cho một file system, với vai trò root chúng ta thực hiện
lệnh:
edquota -t
Quản lý Disk Quota.
1. Thông báo về Disk Quota.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 32/71
2. Giữ cho hoạt động của Quota được chính xác.
3. Kích hoạt và hủy kích hoạt Quota.
Mỗi bước được mô tả chi tiết như sau:
Thông báo về Disk Quota.
Chúng ta sử dụng tiện ích repquota để tạo một thông báo về quota. Ví dụ,
để hiển thị thông tin về thư mục /home, chúng ta thực hiện:
repquota /home
Để xem thông báo cho tất cả các quota-enabled file system, chúng ta thực
hiện:
repquota -a
Giữ cho hoạt động của Quota được chính xác.
Bất cứ khi nào hệ thống shutdown không an toàn (ví dụ: cúp điện đột
ngột), chúng ta cần thực hiện lệnh quotacheck (quotacheck -avug). Tuy
nhiên, biện pháp tốt hơn là sử dụng lệnh này theo lịch trình đã được thiết
lập với cron.
Để tìm hiểu chi tiết về cron, vui lòng tham khảo Chapter 28. Automated
Tasks trong tập tài liệu Red Hat Linux 9: Red Hat Linux
Customization Guide.
Kích hoạt và hủy kích hoạt Quota.
Để hủy kích hoạt tất cả các user và group quota, chúng ta thực hiện:
quotaoff -vaug
Để kích hoạt quota trở lại, chúng ta sử dụng lệnh quotaon với các tùy
chọn tương tự.
Để kích hoạt quota cho một file system, chẳng hạn thư mục /home, chúng
ta thực hiện:
quotaon -vug /home
Để tìm hiểu chi tiết về Disk Quota, vui lòng tham khảo Chapter 6.
Implementing Disk Quotas trong tập tài liệu Red Hat Linux 9: Red Hat Linux
Customization Guide.
Phân tích hiệu suất hoạt động của hệ thống.
Việc phân tích hiệu suất hoạt động của hệ thống là tiến trình xác định những
điểm tắt nghẽn trong hệ thống của bạn. Nó bao gồm một số các bước thực hiện. Đầu
tiên là nhìn một cách tổng thể: liệu vấn đề có liên quan đến CPU hay I/O? Hay vấn đề
liên quan đến dung lượng đĩa?... chúng ta cố gắng cô lập các nguyên nhân xuất phát từ
người sử dụng hay chương trình để tìm ra nguyên nhân chính nhằm giải quyết triệt để
vấn đề phát sinh từ hệ thống.
Dưới đây là một vài công cụ giúp chúng ta trả lời cho những câu hỏi vừa đặt ra
ở trên.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 33/71
Xem thông tin trạng thái sử dụng hiện thời của CPU với vmstat.
Vmstat là một công cụ được sử dụng để cung cấp một số dữ liệu về hệ thống,
trong đó bao gồm cả thông tin trạng thái sử dụng hiện thời của CPU. Cú pháp:
vmstat interval [count]
Trong đó, interval là số giây giữa các lần thông báo, và count là tổng số các
thông báo sẽ hiển thị. Nếu không đưa vào chỉ số count trong quá trình thực hiện lệnh,
vmstat sẽ thực hiện liên tục cho đến khi chúng ta ngưng bởi tổ hợp phím Ctrl + C
hoặc hủy tiến trình này.
Ví dụ: vmstat 5 5
Xem thông tin về bộ nhớ với free.
Free là một công cụ hữu ích để hiển thị thông tin về lượng bộ nhớ đã dùng và
chưa dùng. Cú pháp:
free
Thay đổi độ ưu tiên (priority) của tiến trình với renice.
Renice được sử dụng để thay đổi độ ưu tiên của các tiến trình đang chạy trên hệ
thống. Mặc định trên RH9, các tiến trình có giá trị nice là 0. Giá trị nice này nằm trong
khoảng từ -20 đến 20. Trong đó, tiến trình nào có giá trị nice càng thấp sẽ có độ ưu
tiên càng cao.
Chúng ta có thể xem thông tin của giá trị nice bằng lệnh nice hoặc ps –l (quan
sát giá trị nice ở cột NI).
Để thay đổi giá trị nice, chúng ta sử dụng lệnh renice. Cú pháp:
renice priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]
Trong ví dụ sau, chúng ta sẽ thay đổi giá trị nice từ 0 đến 5 cho tiến trình có
PID là 3138. Điều này có nghĩa là bất kỳ tiến trình nào có giá trị nice thấp hơn 5 sẽ
được ưu tiên thực hiện trước.
renice 5 3138
3138: old priority 0, new priority 5
Một công cụ hữu ích khác có thể giúp chúng ta giải quyết sự cố trên hệ thống
RH9 là lệnh lsof. Lệnh này có tác dụng liệt kê các file đang mở.
Hiểu những nhiệm vụ bảo mật hệ thống.
Đối với một người quản trị hệ thống, việc quan tâm đến nhiệm vụ đảm bảo sự
an toàn là cực kỳ quan trọng. Thận trọng, chú ý đến những điểm yếu có thể của hệ
thống là cần thiết, đặc biệt hơn nếu hệ thống chứa những dữ liệu quan trọng.
Có hai thao tác chính cần nhớ:
Chọn một mật khẩu tốt.
Thường xuyên cập nhật những phiên bản nâng cấp về bảo mật. Điều này
có thể thực hiện được bằng cách kiểm tra từng thời kỳ những thông tin tư
vấn về bảo mật và những phiên bản cập nhật của RH tại địa chỉ
Hướng dẫn xây dựng các server trên Red Hat Linux 9 34/71
Sử dụng các công cụ trợ giúp.
Có nhiều cách để nhận được sự trợ giúp để thực hiện các thao tác trên RH9. Sau
đây là một vài gợi ý tiêu biểu:
Sử dụng các trang trợ giúp với lệnh man
Ví dụ: man mkdir
Truy cập vào Red Hat Mailing Lists và Newsgroups
( Newsgroup là một nơi mà chúng ta có thể
download và tham khảo các bài viết được gửi lên. Khi trở thành thành
viên của một mailing list, chúng ta được phép gửi bài
Để tham khảo, tìm kiếm những thông tin chung về Linux, chúng ta nên
truy cập vào một trong các địa chỉ và
Một địa chỉ hữu ích khác mà chúng ta nên tham khảo, đó là
(Linux Documentation Project). Địa chỉ này
cung cấp mọi thứ từ thông tin chung về Linux, đến các user, group và
các dự án về phát triển Linux
Hướng dẫn xây dựng các server trên Red Hat Linux 9 35/71
Tổng kết chương
1. Nhiệm vụ của một người quản trị hệ thống RH9 là bảo trì (maintenance)
một hệ thống máy tính, bao gồm cả việc cài đặt và duy trì sự hoạt động ổn
định của phần cứng và phần mềm trên hệ thống. Một người quản trị hệ
thống có thể chỉ thực hiện nhiệm vụ này trên chính máy tính riêng của mình,
hoặc cũng có thể chịu trách nhiệm quản lý một hệ thống hàng trăm user.
2. Để người quản trị hệ thống có thể thực hiện được các nhiệm vụ của mình,
anh ta phải có được những quyền ưu tiên root. Đây là những quyền mà các
user bình thường không có. Root là một user đặc biệt trên tất cả các hệ
thống Unix và Linux. User này có toàn quyền truy cập và thao tác trên hệ
thống.
3. Một điểm cần chú ý là chúng ta có thể thay đổi mật khẩu của root một cách
dễ dàng chỉ với một đĩa khởi động.
4. Bởi vì quyền được thiết lập cho root là toàn diện, cho nên để đảm bảo an
toàn cho hệ thống, tránh xảy ra những thao tác ngoài ý muốn có thể dẫn đến
sự bất ổn định, thậm chí phá hủy hệ thống, người ta thường đăng nhập với
vai trò một user thông thường.
5. Việc quản trị hệ thống bao gồm những nhiệm vụ chính sau:
a. Bảo trì hệ thống.
b. Quản lý user và group.
c. Thiết lập Disk Quota.
d. Phân tích hiệu suất hoạt động của hệ thống.
e. Hiểu những nhiệm vụ bảo mật hệ thống.
f. Sử dụng các công cụ trợ giúp.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 36/71
Chương 5. Xây dựng DNS server trên RH9
Mục tiêu của chương
Kết thúc chương này chúng ta sẽ:
Thiết lập được các caching-only server, slave server, master server
Quản trị các record trên DNS server
Kiến thức chuẩn bị
Để bước vào các phần thực hành trong chương này, chúng ta cần chuẩn bị
những kiến thức sau:
Thực hành thiết lập địa chỉ IP trên RH9
Nội dung thực hành
5.1. Cài đặt phần mềm
Để cấu hình được DNS server trên RH9, chúng ta cần phải cài đặt các gói phần
mềm cần thiết. BIND (Berkeley Internet Name Daemon) là phần mềm được sử dụng
khá phổ biến và phân phối cùng với RH9. Số phiên bản hiện tại là 9.2.1-16.
Trong quá trình cài đặt hệ điều hành RH9, nếu bạn đã đánh dấu chọn vào mục
bind-9.2.1-16 thì phần mềm này sẽ được tự động cài đặt cùng với RH9.
Trường hợp chưa chọn trong khi cài đặt RH9, bạn có thể cập nhật sau khi quá trình cài
đặt RH9 đã hoàn thành.
5.2. Các file cấu hình
Trước khi cấu hình các server, bạn nên xem qua các file cấu hình cần thiết. Có
tất cả 5 file cấu hình. Trong đó, 3 file đầu tiên là yêu cầu bắt buộc đối với cả 3 loại
server – master, slave hoặc caching-only, và 2 file còn lại được sử dụng riêng cho
master server.
3 file đầu tiên là:
named.conf – file cấu hình của DNS server
named.ca – file chứa thông tin về tên và địa chỉ IP của các nameserver
chính trên thế giới
named.local – file chứa thông tin dùng để phân giải địa chỉ loopback
cho localhost
2 file chỉ dành riêng cho master server là:
zone – file chứa thông tin về tên, địa chỉ IP của các máy chủ và máy
trạm trong domain nội bộ. Đồng thời file này cũng chứa thông tin ánh
xạ (mapping) giữa tên và địa chỉ IP
reverse zone – file chứa thông tin ánh xạ giữa địa chỉ IP và tên máy
BIND lưu trữ các file cấu hình của mình ở hai nơi:
File /etc/named.conf – file cấu hình chính cho dịch vụ named
(named daemon)
Hướng dẫn xây dựng các server trên Red Hat Linux 9 37/71
Thư mục /var/named – thư mục lưu trữ zone, thông tin thống kê và các
file cache
5.3. Các record của file zone
Có khá nhiều loại record trong một file zone. Sau đây là một số record thường
được sử dụng:
A – Address record, dùng để chỉ định một địa chỉ IP tương ứng với một
tên máy tính
CNAME – Canonical name record, dùng để ánh xạ một tên đến một tên
máy khác. Loại record này thường được xem là một bí danh (alias)
MX – Mail eXchange record, cho biết rằng các email đã được gửi nên đi
theo hướng nào trong một không gian tên cụ thể được điều khiển bởi
zone này
NS – NameServer record, cho biết những nameserver nào có thẩm quyền
đối với một zone cụ thể
PTR – PoinTeR record, chỉ định các địa chỉ IP sẽ được phân giải thành
tên máy tương ứng
SOA – Start Of Authority record, công bố những thông tin quan trọng và
có căn cứ về một namespace cho nameserver
5.4. Cấu hình caching-only server
Trong phần này, chúng ta xây dựng một caching-only server cho domain có tên
là opentech.edu.vn. Như đã đề cập ở phần trên, chúng ta chỉ cần cấu hình trên 3 file
đối với một caching-only server. Các bước thực hiện như sau:
1. Kiểm tra lại nội dung của file /etc/named.conf. Khi chúng ta hoàn thành
việc cài đặt BIND, file /etc/named.conf cũng tự động được tạo ra và chứa
thông tin về zone dành cho localhost. Bạn phải chắc chắn rằng đã tồn tại 3
dòng dành cho 3 zone:
. (dấu chấm) – tham chiếu đến file named.ca
localhost – tham chiếu đến file localhost.zone
0.0.127.in-addr.arpa – tham chiếu đến file named.local
Và phần option với:
directory “/var/named”;
2. Kiểm tra nội dung của file localhost.zone và named.local. Hai file này
chứa thông tin về domain dành cho localhost, và thường được tạo tự động
khi cài đặt BIND. Chúng ta không nên thực hiện bất kỳ những thay đổi nào
trên 2 file này. Mục đích của domain này là nhằm phục vụ cho việc phân
giải địa chỉ loopback 127.0.0.1 ra tên máy là localhost.
3. Kiểm tra nội dung của file /etc/nsswitch.conf để đảm bảo chứa dòng thông
tin cấu hình sau:
hosts: files nisplus dns
Hướng dẫn xây dựng các server trên Red Hat Linux 9 38/71
4. Kiểm tra nội dung của file /etc/resolv.conf để đảm bảo rằng địa chỉ IP của
localhost (127.0.0.1) được liệt kê như một nameserver.
nameserver 127.0.0.1
5. Kiểm tra nội dung file /etc/host.conf để đảm bảo chứa từ khóa “bind”.
6. Khởi chạy named daemon. Đây là dịch vụ của DNS server.
# service named start
7. Chạy lệnh rndc stats tại dòng lệnh. Lệnh này ghi những thông tin thống kê
(statistic) của server vào file thống kê.
8. Chạy lệnh dig tại dòng lệnh. Dig (domain information groper) là một tiện
ích mềm dẻo được dùng để truy tìm thông tin về các DNS server. Công cụ
này tra cứu và hiển thị thông tin trả lời của các DNS server mà nó đã truy
vấn đến. Nếu giá trị của các thông tin trả về của một trong các mục
ANSWER hoặc AUTHORITY khác 0 thì chúng ta đã cấu hình
caching-only server thành công.
5.5. Cấu hình slave server
Bước kế tiếp là xây dựng một slave server cho domain opentech.edu.vn của
bạn. Các bước thực hiện tương tự như ở phần cấu hình caching-only server. Bạn chỉ
cần thực hiện một số thay đổi nhỏ trên file /etc/named.conf và bổ sung thêm 2 file
zone để hoàn thành việc cấu hình slave server.
Trên máy chủ mà bạn muốn cấu hình để trở thành slave server, mở file
/etc/named.conf và bổ sung vào đây 2 mục zone mới, một zone dùng để phân giải từ
tên máy tính ra địa chỉ IP (forward lookup), và zone còn lại dùng để phân giải địa chỉ
IP ra tên máy tính (reverse lookup).
Đối với forward lookup, chúng ta cần bổ sung các thông tin cấu hình như sau
(cần lưu ý rằng, trong ví dụ của chúng ta ở đây, master server có tên là
dns1.opentech.edu.vn và địa chỉ IP là 10.238.200.2.):
zone “opentech.edu.vn” IN {
notify no;
type slave;
file “opentech.edu.vn”;
masters {10.238.200.2; };
};
Đối với reverse lookup, chúng ta cần bổ sung các thông tin cấu hình như sau:
zone “200.238.10.in-addr.arpa” IN {
notify no;
type slave;
file “opentech.rev”;
masters {10.238.200.2; };
};
Hướng dẫn xây dựng các server trên Red Hat Linux 9 39/71
Với các thông số cấu hình như trên, thông tin mà slave server nhận từ
master server sẽ được lưu trữ tại thư mục /var/named.
Đến bước này, bạn đã hoàn thành việc cấu hình slave server. Việc bổ sung 2 file
zone sẽ được thực hiện trong phần cấu hình master server.
Chú ý: thông số notify có nhiệm vụ điều khiển việc dịch vụ named có thông
báo đến các slave server khi một zone được cập nhật hay không. Thông số này chấp
nhận các giá trị sau (mặc định là yes.):
yes – thông báo đến các slave server khi một zone được cập nhật
no – không thông báo đến các slave server khi một zone được cập nhật
5.6. Cấu hình master server
File /etc/named.conf trên máy tính được cấu hình làm master server cũng cần
có sự chỉnh sửa. Giả sử rằng bạn đã cấu hình máy tính này là một caching-only server,
khi đó bạn chỉ cần bổ sung phần sau vào file /etc/named.conf (phần cấu hình này cũng
sử dụng đến tên và địa chỉ IP đã đề cập trong phần trước.):
zone “opentech.edu.vn” IN {
notify no;
type master;
file “opentech.edu.vn”;
};
Đối với reverse lookup, chúng ta cần bổ sung các thông tin cấu hình như sau:
zone “200.238.10.in-addr.arpa” IN {
notify no;
type master;
file “opentech.rev”;
};
Lưu ý rằng chúng ta sử dụng các file zone giống nhau trên master server và
slave server. Các file zone này chỉ cần tạo ở master server bởi vì chúng sẽ được
download về slave server nhờ vào chức năng zone file transfer.
Tiếp theo, chúng ta cần tạo các file zone được /etc/named.conf tham chiếu đến.
Đầu tiên chúng ta tạo file /var/named/opentech.edu.vn với nội dung như sau:
$ORIGIN opentech.edu.vn. ;Appends the domain name to unqualified records
$TTL 86400 ;Time To Live is 1 Day
@ IN SOA dns1.opentech.edu.vn. hostmaster.opentech.edu.vn. (
2001062501 ; serial
21600 ; refresh after 6 hours
3600 ; retry after 1 hour
604800 ; expire after 1 week
86400 ) ; minimum TTL of 1 day
Hướng dẫn xây dựng các server trên Red Hat Linux 9 40/71
IN NS dns1.opentech.edu.vn.
IN NS dns2. opentech.edu.vn.
; mail.opentech.edu.vn email server is preferred to the mail2.opentech.edu.vn
email server when receiving email destined for the opentech.edu.vn domain
IN MX 10 mail. opentech.edu.vn.
IN MX 20 mail2. opentech.edu.vn.
; Requests for opentech.edu.vn are pointed to 10.238.200.6, while requests
for server1.opentech.edu.vn are pointed to 10.238.200.6.
IN A 10.238.200.6
server1 IN A 10.238.200.6
server2 IN A 10.238.200.8
dns1 IN A 10.238.200.2
dns2 IN A 10.238.200.4
ftp IN CNAME server1
mail IN CNAME server1
mail2 IN CNAME server2
www IN CNAME server2
Kế đến, chúng ta tạo file /var/named/opentech.rev với nội dung như sau:
$ORIGIN 200.238.10.in-addr.arpa.
$TTL 86400
@ IN SOA dns1.opentech.edu.vn. hostmaster.opentech.edu.vn. (
2001062501 ; serial
21600 ; refresh after 6 hours
3600 ; retry after 1 hour
604800 ; expire after 1 week
86400 ) ; minimum TTL of 1 day
IN NS dns1.opentech.edu.vn.
IN NS dns2.opentech.edu.vn.
;IP addresses 10.238.200.20 through 10.238.200.25 are pointed to
corresponding FQDNs.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 41/71
20 IN PTR alice.opentech.edu.vn.
21 IN PTR betty.opentech.edu.vn.
22 IN PTR charlie.opentech.edu.vn.
23 IN PTR doug.opentech.edu.vn.
24 IN PTR ernest.opentech.edu.vn.
25 IN PTR fanny.opentech.edu.vn.
Đến bước này, chúng ta có thể kiểm tra tính đúng đắn của các thao tác cấu hình
bằng việc khởi chạy dịch vụ named và sử dụng lệnh ping đến các tên máy đã cấu hình
ở trên. Nếu kết quả trả về là các dòng Reply thì chúng ta đã thành công. Ngược lại,
chúng ta cần rà soát lại cẩn thận các bước đã thực hiện vừa qua.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 42/71
Tổng kết chương
1. Để cấu hình được DNS server trên RH9, chúng ta cần phải cài đặt các gói
phần mềm cần thiết. BIND-9.2.1-16 là phần mềm được sử dụng khá phổ
biến và phân phối cùng với RH9.
2. BIND có thể được cài đặt cùng với RH9 hoặc bổ sung sau khi tiến trình cài
đặt hoàn thành.
3. Có 5 file cấu hình sử dụng trong khi xây dựng DNS server. Trong đó, 3 file
đầu tiên là yêu cầu bắt buộc đối với cả 3 loại server – master, slave hoặc
caching-only, và 2 file còn lại được sử dụng riêng cho master server.
4. Có khá nhiều loại record trong một file zone. Các record thường được sử
dụng là A, CNAME, MX, NS, PTR và SOA.
5. Lưu ý rằng chúng ta sử dụng các file zone giống nhau trên master server và
slave server. Các file zone này chỉ cần tạo ở master server bởi vì chúng sẽ
được download về slave server nhờ vào chức năng zone file transfer.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 43/71
Chương 6. Xây dựng Web server trên RH9
Mục tiêu của chương:
Kết thúc chương này chúng ta sẽ:
Thiết lập được Apache Web server
Quản trị được các website trên Apache Web server
Kiến thức chuẩn bị:
Để bước vào các phần thực hành trong chương này, chúng ta cần chuẩn bị
những kiến thức sau:
Thực hành thiết lập địa chỉ IP trên RH9
Nội dung thực hành:
6.1. Cài đặt phần mềm
Để cấu hình được Apache Web server trên RH9, chúng ta cần phải cài đặt các
gói phần mềm cần thiết. Httpd là phần mềm được sử dụng khá phổ biến và phân phối
cùng với RH9. Số phiên bản hiện tại là 2.0.40-21.
Trong quá trình cài đặt hệ điều hành RH9, nếu bạn đã đánh dấu chọn vào mục
httpd-2.0.40-21 thì phần mềm này sẽ được tự động cài đặt cùng với RH9.
Trường hợp chưa chọn trong khi cài đặt RH9, bạn có thể cập nhật sau khi quá trình cài
đặt RH9 đã hoàn thành.
6.2. Các file cấu hình
Tất cả các file cấu hình của Apache được đặt tại thư mục /etc/httpd, trong đó
file cấu hình chính là /etc/httpd/conf/httpd.conf.
Nơi đặt các website (các web page) của bạn.
Tất cả các thông số cấu hình (directives) dùng để định nghĩa các đặc điểm của
mỗi website được nhóm lại bên trong phần trong file httpd.conf.
Thông số cấu hình được sử dụng thường xuyên nhất trong một là:
servername: định nghĩa tên của website được quản lý bởi
container. Thông số này chỉ cần trong phần named virtual
hosting
DocumentRoot: Định nghĩa thư mục chứa các web page của website
Theo mặc định, Apache tìm kiếm trong thư mục DocumentRoot một file có tên
là index.html. Vì vậy, chẳng hạn như Web server của chúng ta có tên
www.my-site.com với thư mục DocumentRoot là /home/www/site1, khi đó Apache sẽ
hiển thị nội dung của file /home/www/site1/index.html khi chúng ta nhập
trên trình duyệt.
Có một vài công cụ xây dựng website như Microsoft FrontPage, khi tạo file sẽ
có phần mở rộng là .htm thay vì .html. Khi đó, chúng ta cần tạo một liên kết mềm có
tên là index.html liên kết đến index.htm.
Trong ví dụ này, chúng ta thực hiện như sau:
Hướng dẫn xây dựng các server trên Red Hat Linux 9 44/71
# cd /home/www/site1
# ln -s index.htm index.html
# ll index.*
-rw-rw-r-- 1 root root 48590 Jun 18 23:43 index.htm
lrwxrwxrwx 1 root root 9 Jun 21 18:05 index.html -> index.htm
Theo mặc định, Apache sẽ tiến hành tìm kiếm tất cả các website của mình trong
thư mục /var/www/html dựa vào khai báo ban đầu của thông số DocumentRoot ở đầu
file httpd.conf. Trong ví dụ này, chúng ta chỉ định thư mục /home/www nhằm mục
đích cho biết rằng chúng ta vẫn có thể đặt các website của mình ở một vị trí tùy ý trên
hệ thống.
6.3. Các hình thức cấu hình Web server
Khi thực hiện cấu hình Apache, chúng ta có thể thực hiện theo một trong hai
hình thức cấu hình Named Virtual Hosting hoặc IP-Based Virtual Hosting.
Named Virtual Hosting.
Với loại virtual hosting này, chúng ta có thể cấu hình để Web server xuất bản
(hosting) hai hay nhiều website trên một địa chỉ IP nhờ vào chức năng named
virtual hosting. Thông số NameVirtualHost trong file
/etc/httpd/conf/httpd.conf sẽ cho Apache biết rằng địa chỉ IP nào sẽ chịu trách
nhiệm thực hiện đặc điểm này.
Các container trong file này sẽ cho Apache biết nơi tìm kiếm
các web page của mỗi website. Chúng ta cũng phải chỉ định địa chỉ IP đối với
mỗi container áp dụng đặc điểm này.
IP-Based Virtual Hosting.
Loại virtual hosting thứ hai được dùng để xuất bản một website tương ứng với
một địa chỉ IP. Đối với trường hợp này, chúng ta không sử dụng thông số
NameVirtualHost đối với địa chỉ IP, và phải thiết lập duy nhất một
container đơn đối với mỗi địa chỉ IP.
Đồng thời, chúng ta cũng không cần sử dụng thông số ServerName trong
container, bởi vì chỉ có duy nhất một website tương ứng với địa
chỉ IP kèm theo nó.
6.4. Cấu hình DNS cho Web server
Trước khi đi vào phần cấu hình Web server, chúng ta cần tham khảo phần cấu
hình DNS server để bổ sung các record tương ứng dành cho tên truy cập của các
website. Yêu cầu cụ thể của phần này sẽ được trình bày trong phần tiếp sau.
6.5. Cấu hình Web server
Để nắm rõ các bước cấu hình một Web server, chúng ta tham khảo một trường
hợp cụ thể được trình bày sau đây:
Người quản trị hệ thống các website trước tiên cần tạo các mục trên
DNS server tương ứng với www.my-site.com, my-site.com, www.my-
cool-site.com và www.default-site.com để ánh xạ đến địa chỉ IP
10.238.200.8 trên Web server này. Các tên www.another-site.com và
Hướng dẫn xây dựng các server trên Red Hat Linux 9 45/71
www.test-site.com cũng phải được cấu hình để trỏ đến địa chỉ IP
10.238.200.10.
Các yêu cầu gửi đến www.my-site.com, my-site.com, và
www.my-cool-site.com phải lấy nội dung ở thư mục site1.
Các yêu cầu gửi đến www.test-site.com phải lấy nội dung ở thư mục
site2.
Named virtual hosting cho cả hai địa chỉ IP 10.238.200.8 và
10.238.200.10 đều cần phải được sử dụng vì chúng ta đã sử dụng các địa
chỉ IP đơn để xuất bản nhiều website khác nhau. Do đó, 2 thông số
NameVirtualHost dành cho 2 địa chỉ IP 10.238.200.8 và 10.238.200.10
phải được khai báo.
Các yêu cầu gửi đến www.another-site.com phải lấy nội dung ở thư mục
site3.
Dưới đây là bảng tóm tắt các yêu cầu vừa nêu ở trên.
Bảng tóm tắt yêu cầu xuất bản các website.
Domain IP address Directory Type of Virtual
Hosting
www.my-site.com
my-site.com
www.my-cool-site.com
10.238.200.8 site1 Name Based
www.test-site.com 10.238.200.10 site2 Name Based
www.another-site.com 10.238.200.10 site3 Name Based
Những yêu cầu trên đây sẽ được khai báo trong file cấu hình
/etc/httpd/conf/httpd.conf:
ServerName localhost
NameVirtualHost 10.238.200.8
NameVirtualHost 10.238.200.10
#
# Match a webpage directory with each website
#
DocumentRoot /home/www/site1
ServerName www.my-site.com
ServerAlias my-site.com, www.my-cool-site.com
Hướng dẫn xây dựng các server trên Red Hat Linux 9 46/71
DocumentRoot /home/www/site2
ServerName www.test-site.com
DocumentRoot /home/www/site3
ServerName www.another-site.com
#
# Make sure the directories specified above
# have restricted access to read-only.
#
Order allow,deny
Allow from all
AllowOverride FileInfo AuthConfig Limit
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
Order allow,deny
Allow from all
Order deny,allow
Deny from all
Những thông số cấu hình trên đây thường được đưa vào vị trí gần cuối của file
cấu hình. Riêng phần cuối cùng là những thông số cấu hình bổ sung để đảm bảo rằng
các web page mang thuộc tính chỉ đọc (ngoại trừ các web page sử dụng phương thức
POST – các web page với nút “submit”). Cần lưu ý rằng phải khởi động lại Apache
mỗi khi chúng ta chỉnh sửa file cấu hình httpd.conf để đảm bảo những thay đổi có hiệu
lực.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 47/71
Chú ý: cần phải cấu hình DNS server của chúng ta để trỏ chính xác địa chỉ IP
được sử dụng đối với mỗi website mà ta đã xuất bản.
Gợi ý: để có thể kiểm tra hoạt động của các website trước khi cấu hình
DNS server, chúng ta có thể sử dụng file hosts trên các máy trạm (lưu ý là file hosts ở
máy trạm chứ không phải trên Apache). Trên Linux, file này nằm ở thư mục /etc. Còn
trên Windows là C:\WINDOWS\system32\drivers\etc. Chúng ta cần mở file này với
một trình soạn thảo, chẳng hạn như Notepad, và bổ sung một số mục tương tự như:
10.238.200.8 www.my-site.com
6.6. Giải quyết sự cố trên Web server
Trong phần này, chúng ta sẽ duyệt qua một số lỗi thường gặp khi làm việc với
Apache Web server và phương pháp khắc phục chúng.
Server Name Errors
Tất cả các thông số ServerName phải liệt kê một domain được phân giải trong
DNS server. Nếu chúng ta không chỉ định, thông thường lỗi sau sẽ xuất hiện khi khởi
chạy httpd.
Starting httpd: httpd: Could not determine the server's fully qualified domain
name, using 127.0.0.1 for ServerName
Starting httpd: [Wed Feb 04 21:18:16 2004] [error] (EAI 2)Name or service
not known: Failed to resolve server name for 192.16.1.100 (check DNS) -- or
specify an explicit ServerName
Chúng ta có thể tránh được lỗi này bằng cách bổ sung một thông số
ServerName mặc định ngay đầu file httpd.conf với giá trị là localhost thay cho
new.host.name:80.
#ServerName new.host.name:80
ServerName localhost
File Apache Status Log
File /var/log/httpd/access_log được cập nhật mỗi khi có một yêu cầu từ trình
duyệt gửi đến và đây là một nguồn tài nguyên tốt với những thông tin chung về
website của chúng ta.
File Apache Error Log
File /var/log/httpd/error_log chứa các thông tin về lỗi xuất hiện trên website
của chúng ta. Những lỗi thông thường được tìm thấy ở đây là các yêu cầu gửi từ trình
duyệt để yêu cầu các file nhưng chúng ở trạng thái không tồn tại (don’t exist) hoặc bị
cấm (forbidden request). Lỗi khi khởi chạy Apache cũng được ghi vào đây.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 48/71
Tổng kết chương
1. Để cấu hình được Apache Web server trên RH9, chúng ta cần phải cài đặt
các gói phần mềm cần thiết. Httpd-2.0.40-21 là phần mềm được sử dụng khá
phổ biến và phân phối cùng với RH9.
2. Httpd có thể được cài đặt cùng với RH9 hoặc bổ sung sau khi tiến trình cài
đặt hoàn thành.
3. Tất cả các file cấu hình của Apache được đặt tại thư mục /etc/httpd/, trong
đó file cấu hình chính là /etc/httpd/conf/httpd.conf.
4. Theo mặc định, Apache tìm kiếm trong thư mục DocumentRoot một file có
tên là index.html.
5. Theo mặc định, Apache sẽ tiến hành tìm kiếm tất cả các website của mình
trong thư mục /var/www/html/ dựa vào khai báo ban đầu của thông số
DocumentRoot ở đầu của file httpd.conf.
6. Khi thực hiện cấu hình Apache, chúng ta có thể thực hiện theo một trong hai
hình thức cấu hình Named Virtual Hosting hoặc IP-Based Virtual Hosting.
Với Named Virtual Hosting, chúng ta có thể cấu hình để Web server xuất
bản hai hay nhiều website trên một địa chỉ IP nhờ vào chức năng named
virtual hosting. Loại virtual hosting thứ hai được dùng để xuất bản một
website tương ứng với một địa chỉ IP.
7. Trước khi cấu hình Web server, chúng ta cần bổ sung các record tương ứng
dành cho tên truy cập của các website vào DNS server.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 49/71
Chương 7. Xây dựng FTP server trên RH9
Mục tiêu của chương
Kết thúc chương này chúng ta sẽ:
Thiết lập được FTP server
Khai thác FTP server
Quản trị FTP server
Kiến thức chuẩn bị
Để bước vào các phần thực hành trong chương này, chúng ta cần chuẩn bị
những kiến thức sau:
Thực hành thiết lập địa chỉ IP trên RH9
Nội dung thực hành
7.1. Cài đặt phần mềm
Để cấu hình được FTP server trên RH9, chúng ta cần phải cài đặt các gói phần
mềm cần thiết. Vsftpd là phần mềm được sử dụng khá phổ biến và phân phối cùng với
RH9. Số phiên bản hiện tại là 1.1.3-8.
Trong quá trình cài đặt hệ điều hành RH9, nếu bạn đã đánh dấu chọn vào mục
vsftpd-1.1.3-8 thì phần mềm này sẽ được tự động cài đặt cùng với RH9.
Trường hợp chưa chọn trong khi cài đặt RH9, bạn có thể cập nhật sau khi quá trình cài
đặt RH9 đã hoàn thành.
7.2. Các file cấu hình
Trước khi cấu hình các server, bạn nên xem qua các file cấu hình cần thiết:
/etc/vsftpd/vsftpd.conf – file cấu hình chính của vsftpd server
/var/ftp/pub – thư mục lưu trữ thông tin tài nguyên của vsftpd server
/etc/vsftpd.ftpusers – file chứa những user không được phép truy cập
đến vsftpd server
/etc/vsftpd.user_list –
o Nếu userlist_deny=NO, chỉ cho phép các user trong file này
o Nếu userlist_deny=YES (mặc định), không cho phép các user
trong file này
7.3. Cấu hình FTP server
Chỉ cần theo cấu hình mặc định khi cài đặt vsftpd, chúng ta cũng đã có thể truy
cập đến FTP server:
# Example config file /etc/vsftpd.conf
#
# The default compiled in settings are very paranoid. This sample file
# loosens things up a bit, to make the ftp daemon more usable.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 50/71
#
# Allow anonymous FTP?
anonymous_enable=YES
#
# Uncomment this to allow local users to log in.
local_enable=YES
#
# Uncomment this to enable any form of FTP write command.
write_enable=YES
#
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
local_umask=022
#
# Uncomment this to allow the anonymous FTP user to upload files. This only
# has an effect if the above global write enable is activated. Also, you will
# obviously need to create a directory writable by the FTP user.
#anon_upload_enable=YES
#
# Uncomment this if you want the anonymous FTP user to be able to create
# new directories.
#anon_mkdir_write_enable=YES
#
# Activate directory messages - messages given to remote users when they
# go into a certain directory.
dirmessage_enable=YES
#
# Activate logging of uploads/downloads.
xferlog_enable=YES
#
# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=YES
#
# If you want, you can arrange for uploaded anonymous files to be owned by
# a different user. Note! Using "root" for uploaded files is not
# recommended!
#chown_uploads=YES
#chown_username=whoever
Hướng dẫn xây dựng các server trên Red Hat Linux 9 51/71
#
# You may override where the log file goes if you like. The default is shown
# below.
#xferlog_file=/var/log/vsftpd.log
#
# If you want, you can have your log file in standard ftpd xferlog format
xferlog_std_format=YES
#
# You may change the default value for timing out an idle session.
#idle_session_timeout=600
#
# You may change the default value for timing out a data connection.
#data_connection_timeout=120
#
# It is recommended that you define on your system a unique user which the
# ftp server can use as a totally isolated and unprivileged user.
#nopriv_user=ftpsecure
#
# Enable this and the server will recognise asynchronous ABOR requests. Not
# recommended for security (the code is non-trivial). Not enabling it,
# however, may confuse older FTP clients.
#async_abor_enable=YES
#
# By default the server will pretend to allow ASCII mode but in fact ignore
# the request. Turn on the below options to have the server actually do ASCII
# mangling on files when in ASCII mode.
# Beware that turning on ascii_download_enable enables malicious remote
parties
# to consume your I/O resources, by issuing the command "SIZE /big/file" in
# ASCII mode.
# These ASCII options are split into upload and download because you may
wish
# to enable ASCII uploads (to prevent uploaded scripts etc. from breaking),
# without the DoS risk of SIZE and ASCII downloads. ASCII mangling should
be
# on the client anyway..
#ascii_upload_enable=YES
#ascii_download_enable=YES
#
Hướng dẫn xây dựng các server trên Red Hat Linux 9 52/71
# You may fully customise the login banner string:
#ftpd_banner=Welcome to blah FTP service.
#
# You may specify a file of disallowed anonymous e-mail addresses.
Apparently
# useful for combatting certain DoS attacks.
#deny_email_enable=YES
# (default follows)
#banned_email_file=/etc/vsftpd.banned_emails
#
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
#chroot_list_enable=YES
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list
#
# You may activate the "-R" option to the builtin ls. This is disabled by
# default to avoid remote users being able to cause excessive I/O on large
# sites. However, some broken FTP clients such as "ncftp" and "mirror"
assume
# the presence of the "-R" option, so there is a strong case for enabling it.
#ls_recurse_enable=YES
pam_service_name=vsftpd
userlist_enable=YES
#enable for standalone mode
listen=YES
tcp_wrappers=YES
Với thông tin cấu hình như trên ở file /etc/vsftpd/vsftpd.conf, chúng ta khởi
chạy dịch vụ vsftpd bằng lệnh:
# service vsftpd start
Và mở trình duyệt để truy cập là có thể thao tác với các tài nguyên sẵn có tại
thư mục /var/ftp/pub. Ví dụ, nếu chúng ta đã cài đặt và khởi chạy vsftpd tại máy tính
có địa chỉ IP là 10.238.200.6. Khi đó, từ trình duyệt của một máy trạm trong mạng,
chúng ta có thể truy cập đến FTP server với địa chỉ: ftp://10.238.200.6.
Chú ý:
Nếu muốn vsftpd khởi chạy mỗi lần hệ điều hành khởi động, ta thực hiện:
# chkconfig --add vsftpd
Hướng dẫn xây dựng các server trên Red Hat Linux 9 53/71
Nếu muốn kiểm tra vsftpd có ở trạng thái listening hay không, ta thực hiện:
# netstat -a | grep ftp
tcp 0 0 *:ftp *:* LISTEN
7.4. Cấu hình bảo mật cho FTP server
FTP có một số vấn đề về bảo mật, tuy nhiên chúng ta có thể thực hiện theo một
vài cách thức sau để giải quyết vấn đề này.
Bổ sung user vào file /etc/vsftpd.ftpusers
Để yếu tố bảo mật được nâng cao, chúng ta có thể hạn chế quyền truy cập đến
FTP server đối với một vài user bằng cách bổ sung các user này vào file
/etc/vsftpd.ftpusers. Mục đích của vsftpd khi tạo ra file có chứa sẵn trong đó những
user hệ thống với quyền cao (privileged users) nhằm mục đích không cho phép những
user nhạy cảm này truy cập vào FTP server, vì như vậy rất dễ để người ta lợi dụng các
thông tin này để đột nhập. Do đó, khi bổ sung những user mới vào file này, chúng ta
nên giữ lại những user đã được hệ thống tạo sẵn.
Cấp quyền upload cho Anonymous
Nếu muốn người dùng được phép ghi dữ liệu lên FTP server, chúng ta nên tạo
một thư mục write-only nằm trong thư mục /var/ftp/pub. Các lệnh như sau:
# mkdir /var/ftp/pub/upload
# chmod 722 /var/ftp/pub/upload
Sử dụng SCP làm giải pháp thay thế cho FTP
Một điểm bất lợi của FTP là không mã hóa từ khóa và mật khẩu trên đường
truyền. Điều này tạo điều kiện thuận lợi cho những người lấy trộm thông tin quan
trọng để truy cập bất hợp pháp vào FTP server. Secure Copy (SCP) và Secure FTP
(SFTP) cung cấp một cơ chế mã hóa giải quyết vấn đề trên và là một sự chọn lựa tốt để
thay thế cho phương thức truyền thông thường của FTP. Tuy nhiên, SCP không hỗ trợ
người dùng anonymous.
7.5. Cấu hình mở rộng trên FTP server
Trong phần này, chúng ta thực hiện các bước can thiệp sâu hơn vào việc
cấp/hủy quyền đối với user truy cập đến FTP server. Cụ thể là cấp cho user quyền chỉ
đọc (read only) đối với một thư mục đã được chia sẻ trên FTP server.
Ở đây, anonymous không được phép truy cập, chúng ta chỉ tạo ra và cấp quyền
cho một nhóm các user (trusted users) có quyền truy cập (chỉ đọc) đến một thư mục
với mục đích download file. Các bước như sau:
1) Vô hiệu hóa anonymous.
# Allow anonymous FTP?
anonymous_enable=NO
2) Hiệu lực hóa khả năng đăng nhập cục bộ.
# Uncomment this to allow local users to log in.
local_enable=YES
3) Khởi chạy vsftpd.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 54/71
# service vsftpd start
4) Tạo một nhóm các user và chia sẻ thư mục. Trong trường hợp này, chúng ta
sử dụng nhóm ftp-users và thư mục /home/ftp-docs.
# groupadd ftp-users
# mkdir /home/ftp-docs
5) Cấp quyền truy cập đến thư mục /home/ftp-docs cho nhóm ftp-users.
# chmod 750 /home/ftp-docs
# chown root:ftp-users /home/ftp-docs
6) Thêm các user mới, và chỉ định thư mục mặc định là /home/ftp-docs.
useradd -g ftp-users -d /home/ftp-docs user1
useradd -g ftp-users -d /home/ftp-docs user2
useradd -g ftp-users -d /home/ftp-docs user3
useradd -g ftp-users -d /home/ftp-docs user4
passwd user1
passwd user2
passwd user3
passwd user4
7) Sao chép các file sẽ được các user download vào thư mục /home/ftp-docs.
8) Thay đổi quyền của các file trong thư mục /home/ftp-docs trở thành chỉ đọc
đối với nhóm.
chown root:ftp-users /home/ftp-docs/*
chmod 740 /home/ftp-docs/*
Đến bước này, các user có khả năng đăng nhập qua giao thức FTP đến server sử
dụng từ khóa và mật khẩu của họ. Nếu chắc chắn không muốn bất kỳ user nào được
phép ghi lên bất kỳ thư mục nào, chúng ta thiết lập:
write_enable = NO
Nhớ rằng, chúng ta phải khởi động lại dịch vụ vsftpd để những thay đổi cấu
hình trên có tác dung.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 55/71
Tổng kết chương
1. Để cấu hình được FTP server trên RH9, chúng ta cần phải cài đặt các gói
phần mềm cần thiết. Vsftpd-1.1.3-8 là phần mềm được sử dụng khá phổ
biến và phân phối cùng với RH9.
2. Vsftpd có thể được cài đặt cùng với RH9 hoặc bổ sung sau khi tiến trình cài
đặt hoàn thành.
3. File /etc/vsftpd/vsftpd.conf là file cấu hình chính của vsftpd server.
4. Chỉ cần theo cấu hình mặc định khi cài đặt vsftpd, chúng ta cũng đã có thể
truy cập đến FTP server.
5. FTP có một số vấn đề về bảo mật, tuy nhiên chúng ta có thể thực hiện theo
một vài cách thức sau để giải quyết vấn đề này:
a. Bổ sung user vào file /etc/vsftpd.ftpusers
b. Cấp quyền upload cho Anonymous
c. Sử dụng SCP làm giải pháp thay thế cho FTP
Hướng dẫn xây dựng các server trên Red Hat Linux 9 56/71
Chương 8. Một số mẹo vặt thường dùng trên RH9
Mục tiêu của chương
Kết thúc chương này chúng ta sẽ:
Nắm được phương pháp cài đặt bộ gõ tiếng Việt trên Fedora
Nắm được phương pháp cài đặt font Unicode trên Fedora
Nắm được phương pháp chia sẻ tài nguyên giữa Windows và Linux
Nắm được phương pháp lấy lại mật khẩu của root
Nội dung thực hành
8.1. Thực hành cài đặt bộ gõ tiếng Việt xvnkb trên Fedora (RH9)
Để cài đặt bộ gõ tiếng Việt xvnkb trên Fedora, chúng ta thực hiện các bước như
sau:
1. Tải hai gói cài đặt xvnkb-0.2.9.tar.gz và xvnkb-0.2.9-6b.FC5.i386.rpm từ
Internet. Sao chép đến thư mục /usr/local/src.
2. Giải nén gói .tar.gz
# cd /usr/local/src
# tar –xzvf xvnkb-0.2.9.tar.gz
3. Chuyển vào thư mục nguồn và dịch chương trình
# cd xvnkb-0.2.9
# ./configure
# make
Lưu ý: ở bước này có thể xuất hiện lỗi biên dịch. Tuy nhiên chúng ta có thể
đi tiếp mà không gặp trở ngại nào.
4. Tạo file locale
# ./xvnkb_localeconf vi_VN.UTF-8
5. Sao chép thư viện
# cp xvnkb.so /usr/lib
6. Cài đặt chương trình khởi chạy bộ gõ tiếng Việt
# rpm –ivh xvnkb-0.2.9-6b.FC5.i386.rpm
7. Đặt biến môi trường cho bộ gõ tiếng Việt – bổ sung 2 dòng vào file
~/.bashrc
# vi ~/.bashrc
export LD_PRELOAD=/usr/lib/xvnkb.so
export LANG=vi_VN.UTF-8
8. Khởi động lại hệ điều hành
9. Mở cửa sổ dòng lệnh để khởi động bộ gõ tiếng Việt
# xvnkb
Hướng dẫn xây dựng các server trên Red Hat Linux 9 57/71
Chú ý: với những bước hướng dẫn trên đây, chúng ta chỉ có thể gõ được
tiếng Việt đối với các trình soạn thảo được khởi động trực tiếp từ cửa sổ
dòng lệnh đã khởi động xvnkb. Nếu khởi động theo bất kỳ một cách nào
khác, bộ gõ sẽ không hoạt động được.
8.2. Thực hành cài đặt các font Unicode trên Fedora (RH9)
Để cài đặt một số font Unicode trên Fedora, chúng ta thực hiện các bước như
sau:
1. Sao chép các font Unicode từ Windows, thường được đặt trong thư mục
C:\WINDOWS\Fonts. Nhớ sử dụng tổ hợp phím Ctrl-C và Ctrl-V để tiến
hành sao chép font bởi vì với nội dung của thư mục này, Windows không
kích hoạt chức năng sao chép bằng chuột.
2. Sao chép các font đã có ở bước 1 vào thư mục /usr/local/fonts/local.
3. Cập nhật font cho hệ thống bằng lệnh fc-cache:
# fc-cache /usr/local/fonts/local
Chú ý: đối với một số ứng dụng, bạn phải khởi động lại máy tính trước khi
tiến hành thiết lập font vừa mới cài đặt cho chúng. Chẳng hạn với trình
duyệt Mozilla, sau khi cài đặt các font mới, nếu muốn thiết lập font vừa mới
cài đặt, bạn chỉ có một cách duy nhất là khởi động lại máy tính. Khi đó, bạn
mới có thể thiết lập được các font đã cài đặt trong mục Preferences... của
trình duyệt này.
8.3. Thực hành chia sẻ tài nguyên giữa Windows và Linux
Có nhiều phương pháp để chia sẻ tài nguyên giữa Windows và Linux sử dụng
Samba. Sau đây là một trong những cách đơn giản và hiệu quả giúp bạn chỉ trong vài
phút có thể hoàn thành thao tác chia sẻ tài nguyên.
1. Trên cửa sổ dòng lệnh của máy Linux (Linux1), tạo một thư mục dùng để
chứa tài nguyên chia sẻ, ví dụ /examples.
# mkdir /examples
2. Cấp quyền đọc, ghi cho thư mục này.
# cd /
# chmod 777 /examples
3. Di chuyển đến thư mục chứa file cấu hình Samba (smb.conf)
# cd /etc/Samba
Chú ý: Đường dẫn /etc/Samba được thiết lập mặc định khi cài đặt Samba
cùng với hệ điều hành Linux. Trong trường hợp chúng ta cài đặt Samba
thông qua các nguồn cài đặt được tải về từ Internet, đường dẫn này do
chúng ta chỉ định trong quá trình cài đặt Samba.
4. Để đảm bảo rằng file cấu hình ban đầu của Samba luôn luôn được giữ
nguyên vẹn, chúng ta sao chép file này đến một thư mục lưu trữ dự phòng,
ví dụ:
# cp /etc/Samba/smb.conf /temp
Hướng dẫn xây dựng các server trên Red Hat Linux 9 58/71
Trong nhiều trường hợp, sau khi đã thực hiện cấu hình chia sẻ thư mục,
chúng ta gặp sự cố và muốn quay trở lại file smb.conf ban đầu để đơn giản
cho thao tác cấu hình cũng như kiểm soát được những thay đổi. Vì vậy, việc
sao chép file cấu hình Samba đến vị trí dự phòng là điều nên làm.
5. Mở file smb.conf bằng tiện ích vi để tiến hành thay đổi.
# vi smb.conf
Để có thể hiệu chỉnh file smb.conf với trình soạn thảo vi khi đã mở file với
lệnh trên, chúng ta nhấn phím i. Sau khi soạn thảo xong, nhấn phím Esc để
thoát khỏi chế độ hiệu chỉnh của trình soạn thảo này. Cuối cùng, gõ dấu hai
chấm (:) và nhấn lần lượt hai phím wq để lưu file và thoát khỏi vi.
6. Cấu hình
Thiết lập cấu hình chung của Samba:
workgroup = HS //workgroup mà máy này sẽ kết nối
netbios name = Linux1 //tên của máy này trong workgroup
server string = Samba Server at Linux1 //chú thích cho máy Linux1
security = share //mức chia sẻ của máy Linux1
Thiết lập cấu hình cho thư mục chia sẻ (examples):
[examples]
commen = Chia se thu muc /examples //chú thích thư mục
path = /examples //chỉ định đường dẫn đến thư mục chia sẻ
read only = no //cho phép đọc và ghi
guest ok = yes //cho phép mọi người truy cập
7. Lưu và thoát khỏi vi.
Nhấn phím Esc. Gõ dấu hai chấm (:) và nhấn lần lượt hai phím wq.
8. Khởi động lại dịch vụ smb.
# service smb restart
Sau khi lệnh khởi động dịch vụ thành công, chúng ta có thể truy cập đến thư
mục chia sẻ này từ các máy trạm chạy Windows trong mạng nội bộ.
Truy cập tài nguyên chia sẻ từ Linux.
Tương tự như thao tác truy cập đến các thư mục chia sẻ trên môi trường mạng
Windows, khi truy cập đến các thư mục đã được chia sẻ trên các máy Linux, chúng ta
cũng có thể thực hiện một trong ba cách thông dụng sau:
Sử dụng hộp thoại Run, nhập tên máy và tên thư mục truy cập theo cú
pháp \\Tên_máy\Tên_Thư_mục.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 59/71
Sử dụng chức năng Map Network Drive từ menu Tools của
Windows Explorer.
8.4. Lấy lại mật khẩu root
Để lấy lại mật khẩu tài khoản cao nhất của hệ thống Linux – root account,
chúng ta thực hiện các bước như sau:
1. Từ menu khởi động, lựa chọn kernel của Linux.
2. Nhấn phím e để vào chế độ hiệu chỉnh.
3. Chọn dòng thứ hai (dòng bắt đầu với từ khóa kernel).
4. Nhấn phím e để hiệu chỉnh mục kernel đã chọn.
5. Bổ sung kí tự S (hoặc từ khóa Single) vào cuối của dòng kernel.
6. Nhấn phím Enter.
7. Nhấn phím b để khởi động Linux với chế độ single user mode.
8. Tại dấu nhắc đợi lệnh, gõ lệnh passwd để nhập lại mật khẩu mới cho root.
Hướng dẫn xây dựng các server trên Red Hat Linux 9 60/71
Tổng kết chương
1. Để cài đặt bộ gõ tiếng Việt xvnkb trên RH9, chúng ta download hai gói cài
đặt xvnkb-0.2.9.tar.gz và xvnkb-0.2.9-6b.FC5.i386.rpm từ Internet. Sau đó
thực hiện theo các hướng dẫn kèm theo để hoàn thành thao tác cài đặt bộ gõ
tiếng Việt trên Linux.
2. Để cài đặt một số fo
Các file đính kèm theo tài liệu này:
- huong_dan_xay_dung_cac_server_tren_red_hat_linux_9_nxb_hue_9199_2120886.pdf