You are on page 1of 27

ĐẠI HỌC DUY TÂN

TRƯỜNG KHOA HỌC MÁY TÍNH


KHOA KỸ THUẬT MẠNG MÁY TÍNH & TRUYỀN THÔNG
🙦🕮 🙤

ĐỒ ÁN NHÓM
MÔN HỌC: NỀN TẢNG HỆ THỐNG MÁY TÍNH

Tên đề tài:
TÌM HIỂU VỀ HỆ ĐIỀU HÀNH LINUX

GVHD : NGUYỄN KIM TUẤN

LỚP : CR 250 G

NHÓM : 14

Thành viên 1 : Nguyễn Lâm Việt Hoàng – MSSV 2545

Thành viên 2 : Nguyễn Nhật Huy – MSSV 0989

Thành viên 3 : Đoàn Văn Duy Hưng – MSSV 1174

Đà Nẵng, 11/2023
MỞ ĐẦU

Chúng ta đang được sống trong một thời đại tri thức, thời đại của sự biến đổi
và phát triển không ngừng của công nghệ. Công nghệ tạo nên cuộc sống và làm thay
đổi cuộc sống của chúng ta. Công nghệ thông tin là những nền tảng để tạo nên công
nghệ làm thay đổi cuộc sống.
Như chúng ta đã biết công nghệ thông tin làm thay đổi cuộc sống của chúng
ta rất nhiều, nó tác động và làm thay đổi về tất cả mọi mặt đời sống của chúng ta
như quản lý, điều khiển công việc, phục vụ công việc, giải trí, viễn thông, trao đổi,

Đó là những gì mà công nghệ thông tin đã mang lại cho chúng ta. Và còn
nhiều hơn nữa nền công nghệ đó đang ngày càng phát triển và hoàn thiện hơn.
Nhưng bên cạnh những lợi ích mà nó mang lại thì cũng có những khó khăn được
đặt ra đó chính là phải có những con người vận hành nền công nghệ đó, các thiệt bị
chuyên dụng hiện đại, chi phí đầu tư cho công nghệ… Tất cả những điều đó đã làm
cho việc hoách toán chi phí ứng dụng công nghệ vào sẳn xuất được khai thác và tận
dụng triệt để. Như chúng ta đã biết bên cạnh những lợi ích mà các thiết bị và phần
mềm công nghệ mang lại pục vụ cho sản xuất thì nó có giá thành và chi phí rất cao.
Vì vậy đòi hỏi người dung fcunxg như các doanh nghiệp cần có một chính sách hợp
lý để sử dụng được công nghệ. Điều đó đã tọa nên sự phát triển của cộng đồng mã
người mở để cho con người tiếp cận công nghệ một cachs thuận lợi nhất mà không
cần phải tốn nhiều chi phí nhiều cho đầu từ công nghệ.
Linux là một phần mềm hệ điều hành mã nguồn mở được cộng đồng IT thế
giới phát triển liên tục và không ngừng trên inter net, xét một cách toàn bộ thì Linux
hơn hẳn các sản phẩm trên thị trường hiện nay, bởi tính miễn phí và tính năng của
nó có rất nhiều ứng dụng phục vụ cho công việc, mỗi ứng dụng lại có rất nhiều
người viết nên do đó hiệu năng ứng dụng và sự lựa chọn cho người dung rất lớn.
Có thể thấy với hướng phát triển triển tin học ở nước ta hiện nay, đối với
người dùng thông thường việc sử dụng linux vẫn là một điều khó, nhưng với những
người nghiên cứu và tìm hiểu tin học thì việc sử dụng hệ điều hành mã nguồn mở là
điều kiện tốt để nâng cao sự hiểu biết của mình.
1. Lý do chọn đề tài
- Lý do khách quan: Hiện nay, công nghệ thông tin đang có vai trò cực kỳ quan
trọng không thể thiếu trong quá trình quản lý, điều hành các hoạt động sản xuất kinh
doanh của mỗi doanh nghiệp. Do vậy, việc xây dựng được một hệ thông mạng với
đầy đủ các dịch vụ cần thiết phục vụ kinh doanh là điều rất cần thiết. Ngoài các yếu
tố phần cứng và nguồn nhân lực quản trị thì yếu tố phần mềm cũng đóng vai trò rất
quan trọng khi xây dựng một hệ thống mạng. Nói đến phần mềm. một vấn đề lớn ở
nước ta là bản quyền, chi phí mua bản quyền các dịch vụ để hoàn tất một hệ thống
mạng là rất lớn. Để tiết kiệm một khoản chi phí lớn, người ta dần chuyển sang các
sản phẩm dịch vụ từ mã nguồn mở. Ngoài việc chạy ổn định, ít bị tấn công, có một
cộng đồng phát triển rất lớn thì ưu điểm lớn nhất và đáng quan tâm nhất của mã
nguồn mở đó là không tốn phí. Vì những lý do trên, nhóm đã thực hiện đề tài này.
- Lý do chủ quan: Nhóm chúng em thực hiện đề tài nhằm mục đích tìm hiểu rõ hơn
về kiến thức mới trong ngành Công nghệ phần mềm, có thêm những hiểu biết về hệ
điều hành mã nguồn mở, để từ đó phục vụ cho quá trình học cũng như có những lợi
ích cho công việc sau khi tốt nghiệp ra trường.
2. Mục tiêu đề tài
- Tìm hiểu về hệ điều hành mã nguồn mở Linux.
- Tìm hiểu về các bản phân phối của hệ điều hành Linux:
- Debian 12 (Bullseye)
- Ubuntu 23.04
- Red Hat Enterprise Linux 9
- CentOS Stream 9
- Fedora 37
- Tìm hiểu về một số dịch vụ mạng trên hệ điều hành Linux:
- DSN
- DHCP
- SAMBA
- FTP
- Webserver
- LDAP
-Tìm hiểu về các giai đoạn và các thế hệ phát triển của hệ điều hành Linux.
MỤC LỤC

PHẦN I: TÌM HIỂU TỔNG QUAN VỀ HỆ ĐIỀU HÀNH LINUX...................................1


1.1. Tổng quan về hệ điều hành Linux..........................................................................1
1.1.1. Khái niệm về hệ điều hành Linux...................................................................1
1.1.2. Lịch sử phát triển của hệ điều hành Linux......................................................1
1.2. Ưu và Nhươc điểm của hệ điều hành Linux..........................................................2
1.2.1. Ưu điểm của hệ điều hành Linux....................................................................2
1.2.2. Nhược điểm của hệ điều hành Linux..............................................................3
1.3. Các bản phân phối của Linux.................................................................................4
1.4. Tính năng và Ứng dụng của hệ điều hành Linux...................................................6
1.4.1. Các tính năng của hệ điều hành Linux............................................................6
1.4.2. Các ứng dụng của hệ điều hành Linux.............................................................7
1.5. Lợi ích của hệ điều hành Linux..............................................................................7
PHẦN II: TÌM HIỂU MỐT SỐ DỊCH VỤ MẠNG TRÊN LINUX....................................9
2.1. Dịch vụ mạng DNS trên hệ điều hành Linux.........................................................9
2.1.1. Giới thiệu chung về DNS................................................................................9
2.1.2. Cấu hình dịch vụ mạng DNS trên hệ điều hành Linux...................................9
2.2. Dịch vụ mạng DHCP trên hệ điều hành Linux....................................................11
2.2.1. Giới thiệu chung về DHCP...........................................................................11
2.2.2. Cấu hình dịch vụ mạng DHCP trên hệ điều hành Linux...............................11
2.3. Dịch vụ mạng SAMBA trên hệ điều hành Linux.................................................13
2.3.1. Giới thiệu chung về SAMBA........................................................................13
2.3.2. Cấu hình dịch vụ mạng SAMBA trên hệ điều hành Linux...........................13
2.4. Dịch vụ mạng FTP trên hệ điều hành Linux........................................................15
2.4.1. Giới thiệu chung về FTP...............................................................................15
2.4.2. Cấu hình dịch vụ mạng FTP trên hệ điều hành Linux..................................15
2.5. Dịch vụ mạng Webserver trên hệ điều hành Linux..............................................17
2.5.1. Giới thiệu chung về Webserver.....................................................................17
2.5.2. Cấu hình dịch vụ mạng Webserver trên hệ điều hành Linux........................17
2.6. Dịch vụ mạng LDAP trên hệ điều hành Linux....................................................19
2.6.1. Giới thiệu chung về LDAP...........................................................................19
2.6.2. Cấu hình dịch vụ mạng LDAP trên hệ điều hành Linux...............................19
PHẦN III: TÌM HIỂU CÁC THẾ HỆ CỦA HỆ ĐIỀU HÀNH LINUX............................21
3.1. Giai đoạn phát triển của hệ điều hành Linux............................................................21
3.2 Các thế hệ của hệ điều hành Linux...........................................................................21
PHẦN I: TÌM HIỂU TỔNG QUAN VỀ HỆ ĐIỀU HÀNH LINUX
1.1. Tổng quan về hệ điều hành Linux.
1.1.1 Khái niệm về hệ điều hành Linux
Hệ điều hành Linux là một hệ điều hành mã nguồn mở dựa trên Unix. Nó
được phát triển bởi Linus Torvalds và cộng đồng của ông từ năm 1991. Linux được
sử dụng rộng rãi trên các máy chủ, máy trạm, thiết bị nhúng và thiết bị di động.
Linux là một hệ điều hành đa nhiệm, đa người dùng. Nó cung cấp một môi trường
cho các ứng dụng chạy và tương tác với nhau. Linux cũng cung cấp các dịch vụ cơ
bản như quản lý tập tin, quản lý thiết bị, và quản lý tài nguyên.
1.1.2. Lịch sử phát triển của Linux.
Linux là một HĐH dạng UNIX (Unix-like Operating System) chạy trên máy
PC với bộ điều khiển trung tâm (CPU) Intel 80386 trở lên, hay các bộ vi xử lý trung
tâm tương thích AMD, Cyrix. Linux ngày nay còn có thể chạy trên các máy
Macintosh hoặc SUN Sparc. Linux được viết lại toàn bộ từ con số không, tức là
không sử dụng một dòng lệnh nào của Unix để tránh vấn đề bản quyền của Unix.
Tuy nhiên hoạt động của Linux hoàn toàn dựa trên nguyên tắc của hệ điều hành
Unix. Vì vậy nếu một người nắm được Linux, thì sẽ nắm được UNIX. Giữa các hệ
thống Unix sự khác nhau cũng không kém gì giữa Unix và Linux. Năm 1991 Linus
Torvalds, sinh viên của đại học tổng hợp Helsinki, Phần lan, bắt đầu xem xét Minix,
một phiên bản của Unix làm ra với mục đích nghiên cứu cách tạo ra một hệ điều
hành Unix chạy trên máy PC với bộ vi xử lý Intel 80386. Ngày 25/8/1991, Linus
cho ra version 0.01 và thông báo trên comp.os.minix của Internet về dự định của
mình về Linux. Tháng 01/1992, Linus cho ra version 0.12 với shell và C compiler.
Linus không cần Minix nữa để recompile HDH của mình. Linus đặt tên HDH của
mình là Linux.Năm 1994, phiên bản chính thức 1.0 được phát hành. Quá trình phát
triển của Linux được tăng tốc bởi sự giúp đỡ của chương trình GNU (GNU‟s Not
Unix), đó là chương trình phát triển các Unix có khả năng chạy trên nhiều platform.
Phiên bản mới nhất của Linux kernel là 2.6.25, có khả năng điều khiển các máy đa
bộ vi xử lý (hiện tại Linux hỗ trợ máy tính có tối đa 16 CPUs). Linux kernel 2.6.25
cũng đồng thời nâng cấp hệ thống file Ext4 (phiên bản cũ là Ext3), giúp hỗ trợ dung
lượng block lớn hơn - từ 4K lên 64K và rất nhiều các tính năng khác. Quản trị hệ
điều hành Linux Các phiên bản của Hệ điều hành Linux được xác định bởi hệ thống
số dạng X.YY.ZZ. Nếu YY là số chẵn thì phiên bản ổn định, YY là số lẻ thì phiên
bản thử nghiệm.

1|Page
1.2. Ưu và Nhươc điểm của hệ điều hành Linux.
1.2.1. Ưu điểm.
 Kinh tế: Đó là một đặc điểm không thể bỏ qua của Linux. Tuy nhiên đối với
Linux đó vẫn chưa là tất cả. Hệ điều hành này còn rất nhiều ưu điểm khác mà
không một hệ điều hành nào có. Chính những đặc điểm này mới là nguyên
nhân khiến cho Linux ngày càng trở nên phổ biến không chỉ ở Việt Nam mà
cả ở trên thế giới.
 Linh hoạt, uyển chuyển: Linux là một Hệ điều hành mã nguồn mở nên chúng
ta có thể tùy ý sửa chữa theo như mình thích (tất nhiên là trong khả năng
kiến thức của mỗi người). Chúng ta có thể chỉnh sửa Linux và các ứng dụng
trên đó sao cho phù hợp với mình nhất. Mặt khác do Linux được một cộng
đồng rất lớn những người làm phần mềm cùng phát triển trên các môi
trường, hoàn cảnh khác nhau nên tìm một phiên bản phù hợp với yêu cầu của
mỗi người sẽ không phải là một vấn đề quá khó khăn. Tính linh hoạt của
Linux còn được thể hiện ở chỗ nó tương thích được với rất nhiều môi trường.
Hiện tại, ngoài Linux dành cho server, PC…nhân Linux còn được nhúng vào
các thiết bị điều khiển như máy tính palm, robot…Phạm vi ứng dụng của
Linux được xem là rất rộng rãi.
 Độ an toàn cao: Trước hết, trong Linux có một cơ cấu phân quyền hết sức rõ
ràng. Chỉ có "root" (người dùng tối cao) mới có quyền cài đặt và thay đổi hệ
thống. Ngoài ra Linux cũng có cơ chế để một người dùng bình thường có thể
tạm thời chuyển sang quyền "root" để thực hiện một số thao tác. Điều này
giúp cho hệ thống có thể chạy ổn định và tránh phải những sai sót dẫn đến đổ
vỡ hệ thống
Hệ điều hành Windows gần đây, cơ chế phân quyền này cũng đã bước đầu được áp
dụng, nhưng so với Linux thì vẫn kém chặt chẽ hơn). Ngoài ra chính tính chất "mở"
cũng tạo nên sự an toàn của Linux. Nếu như một lỗ hổng nào đó trên Linux được
phát hiện thì nó sẽ được cả cộng đồng mã nguồn mở cùng sửa và thường thì chỉ sau
24h sẽ có thể cho ra bản sửa lỗi. Mặt khác đối với những Hệ điều hành mã nguồn
đóng như Windows, chúng ta không thể biết được người ta viết gì, và viết ra sao mà
chỉ biết được chúng chạy như thế nào. Vì vậy nếu như Windows có chứa những
đoạn mã cho phép tạo những "back door" để xâm nhập vào hệ thống của chúng ta
thì chúng ta cũng không thể biết được. Đối với người dùng bình thường như chúng

2|Page
ta vấn đề này có vẻ như không quan trọng nhưng đối với một hệ thống tầm cỡ như
hệ thống quốc phòng thì vấn đề như thế này lại mang tính sống còn. Các nhân viên
an ninh không được phép để lộ một kẽ hở nào, dù là nhỏ nhất vì nó liên quan đến an
ninh của cả một quốc gia. Và một lần nữa các phần mềm mã nguồn mở nói chung
và Linux nói riêng lại là sự lựa chọn số 1. Trong Linux mọi thứ đều công khai,
người quản trị có thể tìm hiểu tới mọi ngõ ngách của hệ điều hành. Điều đó cũng có
nghĩa là độ an toàn được nâng cao.
 Thích hợp cho quản trị mạng: Được thiết kế ngay từ đầu cho chế độ đa người
dùng, Linux được xem là một hệ điều hành mạng rất giá trị. Nếu như
Windows tỏ ra là một Hệ điều hành thích hợp với máy tính Desktop thì
Linux lại là hệ điều hành thống trị đối với các Server. Đó là do Linux có rất
nhiều ưu điểm thỏa mãn đòi hỏi của một hệ điều hành mạng: tính bảo mật
cao, chạy ổn định, các cơ chế chia sẻ tài nguyên tốt…..Giao thức TCP/IP mà
chúng ta vẫn thấy ngày nay chính là một giao thức truyền tin của Linux (sau
này mới được đưa vào Windows).
 Chạy thống nhất trên các hệ thống phần cứng: Dù cho có rất nhiều phiên bản
Linux được các nhà phân phối khác nhau ban hành nhưng nhìn chung đều
chạy khá ổn định trên mọi thiết bị phần cứng, từ Intel 486 đến những máy
Core 2 Duo, từ những máy có dung lượng RAM chỉ 4MB
Hệ điều hành Linux những máy có cấu hình cực mạnh (tất nhiên là tốc độ sẽ khác
nhau nhưng về nguyên tắc vẫn có thể chạy được). Nguyên nhân là Linux được rất
nhiều lập trình viên ở nhiều môi trường khác nhau cùng phát triển (không như
Windows chỉ do Microsoft phát triển) và chúng ta sẽ bắt gặp nhiều người có "cùng
cảnh ngộ" như mình và dễ dàng tìm được các driver tương ứng với thiết bị của
mình. Tính chất này hoàn toàn trái ngược với Windows. Mỗi khi có một phiên bản
Windows mới ra đời thì bao giờ kèm theo đó cũng là một cơn khát về phần cứng vì
hệ điều hành mới thường không hỗ trợ các thiết bị quá cũ.
1.2.2. Nhược điểm
Dù cho hiện nay Linux đang có tốc độ phát triển nhanh hơn hẳn Windows
nhưng khách quan mà nói so với Windows, Linux vẫn chưa thể đến với người sử
dụng cuối. Đó là do Linux vẫn còn có những nhược điểm cố hữu:
 Đòi hỏi người dùng phải thành thạo: Trước kia việc sử dụng và cấu hình
Linux được xem là một công việc chỉ dành cho những kĩ thuật viên CNTT.
Hầu như mọi công việc đều thực hiện trên các dòng lệnh và phải cấu hình

3|Page
nhờ sửa trực tiếp các file. Mặc dù trong những phiên bản gần đây, các Hệ
điều hành Linux đã có những cải tiến đáng kể, nhưng so với Windows tính
thân thiện của Linux vẫn còn là một vấn đề lớn. Đây là một trong những
nguyên nhân chủ yếu khiến Linux mặc dù có rất nhiều đặc tính kỹ thuật tốt
nhưng vẫn chưa đến được với người dùng cuối.
 Tính tiêu chuẩn hóa: Linux được phát hành miễn phí nên bất cứ ai cũng có
thể tự mình đóng gói, phân phối theo những cách riêng. Hiện tại có khá
nhiều bản Linux phát triển từ một nhân ban đầu cùng tồn tại như: RedHat,
SuSE, Knoppix….. Người dùng phải tự so sánh xem bản nào là phù hợp với
mình. Điều này có thể gây khó khăn cho người dùng, nhất là những người
còn có kiến thức về tin học hạn chế.
 Số lượng các ứng dụng chất lượng cao trên Linux còn hạn chế.
Quản trị hệ điều hành Linux Mặc dù Windows có sản phẩm nào thì Linux cũng gần
như có phần mềm tương tự, (VD: OpenOffice trên Linux tương tự như MSOffice,
hay GIMP tương tự như Photoshop...). Tuy nhiên chất lượng những sản phẩm này
là chưa thể so sánh được với các sản phẩm viết cho Windows.
 Phần cứng: một số nhà sản xuất phần cứng không có driver hỗ trợ Linux: Do
hiện nay Linux chưa phổ biến bằng Windows nên nhiều nhà sản xuất không
hỗ trợ các driver chạy trên Linux. Tuy nhiên chúng ta vẫn có thể tìm thấy các
driver này trên internet do cộng đồng mã nguồn mở viết. Trên cơ sở nhìn
nhận một cách khách quan các ưu, nhược điểm của Hệ điều hành Linux cũng
như xem xét xu hướng phát triển tin học ở nước ta có thể thấy, Đối với người
dùng thông thường việc chuyển từ Windows sang Linux trong ngày một
ngày hai là chưa thể. Tuy nhiên đối với những người làm tin học, đặc biệt là
đối với sinh viên, việc tìm hiểu và nghiên cứu Linux và phần mềm mã nguồn
mở là một điều kiện rất tốt để nâng cao hiểu biết của mình. Linux dẫu sao
vẫn là một hệ điều hành rất có giá trị: chi phí thấp, linh hoạt, ổn đinh, và bảo
mật cao.
1.3. Các bản phân phối của Linux
Các bản phân phối linux hiện nay Hiện nay linux có nhiều bản phân phối
khác nhau, một phần là bởi vì tính chất nguồn mở của nó. Sau đây là một số bản
phân phối chủ yếu:
Ubuntu 23.04

4|Page
 Ubuntu 23.04 là bản phân phối Linux mới nhất của Canonical, được phát
hành vào ngày 20 tháng 4 năm 2023. Đây là bản cập nhật thứ hai cho Ubuntu
23.0, được phát hành vào ngày 20 tháng 1 năm 2023.
 Ubuntu 23.04 có một số tính năng mới, bao gồm:
GNOME 43, phiên bản mới nhất của môi trường máy tính để bàn
GNOME.
Linux Kernel 5.19, phiên bản mới nhất của nhân Linux.
Nhiều cải tiến về hiệu suất và bảo mật.
 Ubuntu 23.04 được hỗ trợ trong 9 tháng, đến ngày 18 tháng 1 năm 2024.
Debian 12 (Bullseye)
 Debian 12 là bản phân phối Linux mới nhất của Debian Project, được phát
hành vào ngày 18 tháng 8 năm 2022. Đây là bản cập nhật thứ hai cho Debian
11 (Bullseye), được phát hành vào ngày 14 tháng 8 năm 2021.
 Debian 12 có một số tính năng mới, bao gồm:
GNOME 42, phiên bản mới nhất của môi trường máy tính để bàn
GNOME.
Linux Kernel 5.18, phiên bản mới nhất của nhân Linux.
Nhiều cải tiến về hiệu suất và bảo mật.
 Debian 12 được hỗ trợ trong 3 năm, đến ngày 18 tháng 8 năm 2025.
Red Hat Enterprise Linux 9
 Red Hat Enterprise Linux 9 là bản phân phối Linux mới nhất của Red Hat,
được phát hành vào ngày 17 tháng 8 năm 2022. Đây là bản cập nhật thứ hai
cho Red Hat Enterprise Linux 8, được phát hành vào ngày 27 tháng 5 năm
2019.
 Red Hat Enterprise Linux 9 có một số tính năng mới, bao gồm:
GNOME 42, phiên bản mới nhất của môi trường máy tính để bàn
GNOME.
Linux Kernel 5.18, phiên bản mới nhất của nhân Linux.
Nhiều cải tiến về hiệu suất và bảo mật.
 Red Hat Enterprise Linux 9 được hỗ trợ trong 5 năm, đến ngày 17 tháng 8
năm 2027.
CentOS Stream 9

5|Page
 CentOS Stream 9 là bản phân phối Linux mới nhất của CentOS Project, được
phát hành vào ngày 17 tháng 8 năm 2022. Đây là bản cập nhật thứ hai cho
CentOS Stream 8, được phát hành vào ngày 27 tháng 5 năm 2019.
 CentOS Stream 9 là bản phân phối Linux dựa trên Red Hat Enterprise Linux
9. Nó được thiết kế để trở thành một nền tảng ổn định và đáng tin cậy cho
các doanh nghiệp và tổ chức.
 CentOS Stream 9 được hỗ trợ trong 5 năm, đến ngày 17 tháng 8 năm 2027.
Fedora 37
 Fedora 37 là bản phân phối Linux mới nhất của Fedora Project, được phát
hành vào ngày 20 tháng 7 năm 2023. Đây là bản cập nhật thứ hai cho Fedora
36, được phát hành vào ngày 20 tháng 7 năm 2022.
 Fedora 37 có một số tính năng mới, bao gồm:
GNOME 43, phiên bản mới nhất của môi trường máy tính để bàn
GNOME.
Linux Kernel 5.19, phiên bản mới nhất của nhân Linux.
Nhiều cải tiến về hiệu suất và bảo mật.
 Fedora 37 được hỗ trợ trong 12 tháng, đến ngày 20 tháng 7 năm 2024.
Ngoài các bản phân phối Linux được đề cập ở trên, còn có nhiều bản phân phối
Linux khác có sẵn. Một số bản phân phối Linux phổ biến khác bao gồm:
 Arch Linux
 Gentoo Linux
 Manjaro Linux
 OpenSUSE
 Zorin OS
Khi lựa chọn một bản phân phối Linux, bạn cần cân nhắc các yếu tố sau:
- Mức độ kinh nghiệm: Một số bản phân phối Linux được thiết kế cho người dùng
mới, trong khi những bản phân phối khác được thiết kế cho người dùng nâng cao.
- Mục đích sử dụng.
1.4. Tính năng và Ứng dụng của hệ điều hành Linux
1.4.1. Các tính năng của Linux
Linux là một hệ điều hành mã nguồn mở, đa nhiệm và đa người dùng. Nó
được phát triển bởi Linus Torvalds và cộng đồng của ông từ năm 1991. Linux được
sử dụng rộng rãi trên các máy chủ, máy trạm, thiết bị nhúng và thiết bị di động.
Linux có nhiều tính năng nổi bật, bao gồm:

6|Page
- Miễn phí: Linux là một hệ điều hành mã nguồn mở, có nghĩa là mã nguồn
của nó có sẵn cho bất kỳ ai để xem, sử dụng và sửa đổi. Điều này cho phép
cộng đồng phát triển và cải thiện Linux một cách nhanh chóng và hiệu quả.
- Đa nhiệm: Linux có thể chạy nhiều chương trình cùng một lúc. Điều này làm
cho nó trở thành một lựa chọn tuyệt vời cho các máy tính cần chạy nhiều ứng
dụng cùng lúc, chẳng hạn như máy chủ web và máy trạm.
- Đa người dùng: Linux có thể được sử dụng bởi nhiều người dùng cùng một
lúc. Điều này làm cho nó trở thành một lựa chọn tuyệt vời cho các môi
trường công cộng, chẳng hạn như trường học và thư viện.
- Ổn định: Linux được biết đến với độ ổn định cao. Điều này làm cho nó trở
thành một lựa chọn tuyệt vời cho các ứng dụng quan trọng, chẳng hạn như hệ
thống máy chủ.
- Hiệu suất: Linux có thể được cấu hình để hoạt động hiệu quả trên nhiều loại
phần cứng. Điều này làm cho nó trở thành một lựa chọn tuyệt vời cho các
máy tính có cấu hình thấp.
- Bảo mật: Linux được thiết kế với tính bảo mật cao. Điều này làm cho nó trở
thành một lựa chọn tuyệt vời cho các môi trường nhạy cảm, chẳng hạn như
ngân hàng và chính phủ.
1.4.2. Các ứng dụng của Linux:
Linux được sử dụng rộng rãi trong nhiều lĩnh vực, bao gồm:
- Máy chủ: Linux là hệ điều hành phổ biến nhất cho máy chủ. Nó được sử
dụng để chạy các ứng dụng web, email, cơ sở dữ liệu và nhiều ứng dụng
khác.
- Máy trạm: Linux là một lựa chọn phổ biến cho máy trạm. Nó được sử dụng
cho các tác vụ như lập trình, thiết kế đồ họa và chỉnh sửa video.
- Thiết bị nhúng: Linux được sử dụng trong nhiều thiết bị nhúng, chẳng hạn
như máy tính bảng, điện thoại thông minh và thiết bị IoT.
- Thiết bị di động: Linux là hệ điều hành phổ biến thứ hai cho thiết bị di động.
Nó được sử dụng trong các thiết bị như điện thoại thông minh, máy tính bảng
và máy tính xách tay.
1.5. Lợi ích của hệ điều hành Linux
Linux có nhiều lợi ích, bao gồm:

7|Page
- Miễn phí: Linux là một hệ điều hành mã nguồn mở, có nghĩa là mã nguồn
của nó có sẵn cho bất kỳ ai để xem, sử dụng và sửa đổi. Điều này cho phép
cộng đồng phát triển và cải thiện Linux một cách nhanh chóng và hiệu quả.
- Đa nhiệm: Linux có thể chạy nhiều chương trình cùng một lúc. Điều này làm
cho nó trở thành một lựa chọn tuyệt vời cho các máy tính cần chạy nhiều ứng
dụng cùng lúc, chẳng hạn như máy chủ web và máy trạm.
- Đa người dùng: Linux có thể được sử dụng bởi nhiều người dùng cùng một
lúc. Điều này làm cho nó trở thành một lựa chọn tuyệt vời cho các môi
trường công cộng, chẳng hạn như trường học và thư viện.
- Ổn định: Linux được biết đến với độ ổn định cao. Điều này làm cho nó trở
thành một lựa chọn tuyệt vời cho các ứng dụng quan trọng, chẳng hạn như hệ
thống máy chủ.
- Hiệu suất: Linux có thể được cấu hình để hoạt động hiệu quả trên nhiều loại
phần cứng. Điều này làm cho nó trở thành một lựa chọn tuyệt vời cho các
máy tính có cấu hình thấp.
- Bảo mật: Linux được thiết kế với tính bảo mật cao. Điều này làm cho nó trở
thành một lựa chọn tuyệt vời cho các môi trường nhạy cảm, chẳng hạn như
ngân hàng và chính phủ.
Dưới đây là một số lợi ích cụ thể của Linux:
Lợi ích cho cá nhân
- Miễn phí: Linux là một lựa chọn tuyệt vời cho những người muốn sử dụng
hệ điều hành mạnh mẽ và ổn định mà không phải trả tiền.
- Linh hoạt: Linux có thể được tùy chỉnh để phù hợp với nhu cầu của người
dùng.
- An toàn: Linux được thiết kế với tính bảo mật cao, giúp bảo vệ dữ liệu cá
nhân khỏi các mối đe dọa bảo mật.
Lợi ích cho doanh nghiệp
- Ổn định: Linux là một lựa chọn tuyệt vời cho các doanh nghiệp cần một hệ
điều hành ổn định để chạy các ứng dụng quan trọng.
- Hiệu quả: Linux có thể được cấu hình để hoạt động hiệu quả trên phần cứng
máy chủ, giúp tiết kiệm chi phí cho doanh nghiệp.
- Bảo mật: Linux được thiết kế với tính bảo mật cao, giúp bảo vệ dữ liệu
doanh nghiệp khỏi các mối đe dọa bảo mật.
Lợi ích cho các nhà phát triển

8|Page
- Mở rộng: Linux có một cộng đồng phát triển lớn và năng động, cung cấp
nhiều công cụ và tài nguyên cho các nhà phát triển.
- Tùy chỉnh: Linux có thể được tùy chỉnh để phù hợp với nhu cầu của các nhà
phát triển.
- Tính linh hoạt: Linux có thể được sử dụng để phát triển nhiều loại ứng dụng,
từ ứng dụng web đến ứng dụng di động.
Nhìn chung, Linux là một hệ điều hành mạnh mẽ và linh hoạt có thể mang lại nhiều
lợi ích cho cá nhân, doanh nghiệp và các nhà phát triển.

PHẦN II: TÌM HIỂU MỘT SỐ DỊCH VỤ MẠNG TRÊN LINUX

2.1. Dịch vụ mạng DNS trên hệ điều hành Linux


2.1.1 Giới thiệu chung về DNS
DNS (Domain Name System) là một hệ thống phân giải tên miền, dịch tên
miền thành địa chỉ IP và ngược lại. DNS là một dịch vụ mạng quan trọng, giúp
người dùng dễ dàng truy cập các trang web và ứng dụng bằng tên miền thay vì phải
nhớ địa chỉ IP.Trên hệ điều hành Linux, dịch vụ mạng DNS được cung cấp bởi gói
phần mềm bind. Phiên bản mới nhất của bind là bind9.
Quy trình phân giải tên miền:
Khi một máy khách muốn truy cập một trang web hoặc ứng dụng, nó sẽ gửi
một truy vấn DNS đến máy chủ DNS. Máy chủ DNS sẽ tìm kiếm thông tin về trang
web hoặc ứng dụng đó trong cơ sở dữ liệu của mình. Nếu tìm thấy, máy chủ DNS
sẽ trả về địa chỉ IP của trang web hoặc ứng dụng đó cho máy khách.
Nếu máy chủ DNS không tìm thấy thông tin về trang web hoặc ứng dụng đó trong
cơ sở dữ liệu của mình, nó sẽ gửi truy vấn đến một máy chủ DNS khác. Quá trình
này sẽ tiếp tục cho đến khi tìm thấy thông tin cần thiết.
2.1.2. Cấu hình dịch vụ mạng DNS trên hệ điều hành Linux
Để cấu hình dịch vụ mạng DNS trên hệ điều hành Linux, bạn cần chỉnh sửa tập tin
cấu hình named.conf. Tập tin này nằm trong thư mục /etc/bind.
Tập tin named.conf có cấu trúc như sau:
options {
...
};
zone "example.com" {

9|Page
...
};
- Phần options chứa các tùy chọn cấu hình chung cho dịch vụ mạng DNS.
- Phần zone chứa cấu hình cho một miền cụ thể.
Các tùy chọn cấu hình chung cho dịch vụ mạng DNS bao gồm:
- allow-transfer: Cho phép các máy chủ DNS khác truy cập cơ sở dữ liệu
DNS.
- allow-recursion: Cho phép các máy khách DNS khác yêu cầu truy vấn ngược
từ máy chủ DNS.
- listen-on: Chỉ định các giao diện mạng mà máy chủ DNS sẽ lắng nghe.
- max-transfer-time-in: Thời gian tối đa mà một máy chủ DNS khác có thể yêu
cầu truy cập cơ sở dữ liệu DNS.
- recursion: Cho phép máy chủ DNS trả lời các truy vấn ngược.
- server-id: ID của máy chủ DNS.
- version: Phiên bản của dịch vụ mạng DNS.
Cấu hình cho một miền cụ thể bao gồm các thông tin sau:
- type: Loại miền. Các loại miền phổ biến bao gồm master, slave và stub.
- file: Đường dẫn đến tập tin chứa thông tin về miền.
- allow-update: Cho phép các máy chủ DNS khác cập nhật thông tin về miền.
- masters: Danh sách các máy chủ DNS chính cho miền.
- slaves: Danh sách các máy chủ DNS phụ cho miền.
Lưu ý khi cấu hình dịch vụ mạng DNS trên hệ điều hành Linux
Khi cấu hình dịch vụ mạng DNS trên hệ điều hành Linux, bạn cần lưu ý các điểm
sau:
- Tên miền phải được viết theo đúng quy tắc.
- Địa chỉ IP phải được viết theo đúng định dạng.
- Các thông tin cấu hình phải chính xác.
Để khởi động dịch vụ mạng DNS, bạn sử dụng lệnh sau:
 systemctl start named
Để dừng dịch vụ mạng DNS, bạn sử dụng lệnh sau:
 systemctl stop named
Để kiểm tra trạng thái của dịch vụ mạng DNS, bạn sử dụng lệnh sau:
 systemctl status named
Một số câu lệnh hữu ích cho dịch vụ mạng DNS

10 | P a g e
Một số câu lệnh hữu ích cho dịch vụ mạng DNS bao gồm:
- named-checkconf: Kiểm tra tính hợp lệ của tập tin cấu hình named.conf.
- named-checkzone: Kiểm tra tính hợp lệ của một miền cụ thể.
- named-debugging: Bật chế độ gỡ lỗi cho dịch vụ mạng DNS.
Kết luận: Dịch vụ mạng DNS là một dịch vụ mạng quan trọng, giúp người dùng dễ
dàng truy cập các trang web và ứng dụng bằng tên miền. Trên hệ điều hành Linux,
dịch vụ mạng DNS được cung cấp bởi gói phần mềm bind.

2.2. Dịch vụ DHCP trên hệ điều hành Linux


2.2.1. Giới thiệu chung về DHCP
DHCP (Dynamic Host Configuration Protocol) là một giao thức mạng cho
phép các máy khách tự động nhận được địa chỉ IP, subnet mask, router và các thông
tin cấu hình mạng khác từ máy chủ DHCP.
Trên hệ điều hành Linux, dịch vụ mạng DHCP được cung cấp bởi gói phần mềm
dhcpd. Phiên bản mới nhất của dhcpd là dhcpd-4.4.3.
Hệ thống DHCP bao gồm hai thành phần chính:
- Máy chủ DHCP: Máy chủ DHCP là máy chủ cung cấp thông tin cấu hình
mạng cho các máy khách.
- Máy khách DHCP: Máy khách DHCP là máy tính nhận thông tin cấu hình
mạng từ máy chủ DHCP.
Quy trình hoạt động của DHCP
Khi một máy khách DHCP khởi động, nó sẽ gửi một yêu cầu
DHCPDISCOVER đến mạng. Máy chủ DHCP nhận được yêu cầu này sẽ gửi một
phản hồi DHCPOFFER cho máy khách. Máy khách sẽ chọn một trong các phản hồi
DHCPOFFER và gửi một yêu cầu DHCPREQUEST đến máy chủ DHCP. Máy chủ
DHCP nhận được yêu cầu này sẽ gửi một phản hồi DHCPACK cho máy khách.
2.2.2. Các loại máy chủ DHCP
Có hai loại máy chủ DHCP chính:
- Máy chủ DHCP tĩnh: Máy chủ DHCP tĩnh là máy chủ lưu trữ thông tin cấu
hình mạng cố định cho các máy khách.
- Máy chủ DHCP động: Máy chủ DHCP động là máy chủ cấp phát địa chỉ IP
động cho các máy khách.

11 | P a g e
Các thông tin cấu hình DHCP bao gồm:
- Địa chỉ IP: Địa chỉ IP là một địa chỉ duy nhất trên mạng để nhận dạng một
máy tính.
- Subnet mask: Subnet mask là một giá trị được sử dụng để phân biệt giữa các
mạng khác nhau trên cùng một mạng con.
- Router: Router là một thiết bị chuyển mạch mạng giúp kết nối các mạng
khác nhau.
- DNS server: DNS server là một máy chủ phân giải tên miền, dịch tên miền
thành địa chỉ IP và ngược lại.
- Domain name: Domain name là tên miền của một máy tính hoặc mạng.
- Lease time: Lease time là thời gian mà máy khách được phép sử dụng địa chỉ
IP được cấp phát.
Để cấu hình dịch vụ mạng DHCP trên hệ điều hành Linux, bạn cần chỉnh sửa tập tin
cấu hình dhcpd.conf. Tập tin này nằm trong thư mục /etc/dhcp.
Tập tin dhcpd.conf có cấu trúc như sau:
option domain-name "example.com";

subnet 192.168.1.0 netmask 255.255.255.0 {


range 192.168.1.10 192.168.1.254;
default-lease-time 3600;
max-lease-time 7200;
}
- Phần option domain-name chỉ định tên miền của máy chủ DHCP.
- Phần subnet chỉ định thông tin về một mạng con.
- Phần range chỉ định phạm vi địa chỉ IP được cấp phát cho các máy khách.
- Phần default-lease-time chỉ định thời gian mặc định mà máy khách được
phép sử dụng địa chỉ IP được cấp phát.
- Phần max-lease-time chỉ định thời gian tối đa mà máy khách được phép sử
dụng địa chỉ IP được cấp phát.
Lưu ý khi cấu hình dịch vụ mạng DHCP trên Linux
Khi cấu hình dịch vụ mạng DHCP trên hệ điều hành Linux, bạn cần lưu ý các điểm
sau:
- Tên miền phải được viết theo đúng quy tắc.
- Địa chỉ IP và subnet mask phải là địa chỉ IP và subnet mask hợp lệ.

12 | P a g e
- Phạm vi địa chỉ IP phải nằm trong phạm vi địa chỉ IP của mạng con.
- Thời gian cấp phát địa chỉ IP phải phù hợp với nhu cầu sử dụng.
Để khởi động dịch vụ mạng DHCP, bạn sử dụng lệnh sau:
 systemctl start dhcpd
Để dừng dịch vụ mạng DHCP, bạn sử dụng lệnh sau:
 systemctl stop dhcpd
Để kiểm tra trạng thái của dịch vụ mạng DHCP, bạn sử dụng lệnh sau:
 systemctl status dhcpd
Một số dòng lệnh hữu ích cho dịch vụ mạng DHCP
Dưới đây là một số câu lệnh hữu ích cho dịch vụ mạng DHCP trên hệ điều hành
Linux:
- systemctl start dhcpd: Khởi động dịch vụ mạng DHCP.
- systemctl stop dhcpd: Dừng dịch vụ mạng DHCP.
- systemctl restart dhcpd: Khởi động lại dịch vụ mạng DHCP.
- systemctl enable dhcpd: Bật dịch vụ mạng DHCP khi khởi động hệ thống.
- systemctl disable dhcpd: Tắt dịch vụ mạng DHCP khi khởi động hệ thống.
Kết luận: DHCP là một dịch vụ mạng quan trọng, giúp tự động hóa việc cấp phát
địa chỉ IP và các thông tin cấu hình mạng khác cho các máy khách. Trên hệ điều
hành Linux, dịch vụ mạng DHCP được cung cấp bởi gói phần mềm dhcpd. Để cấu
hình dịch vụ mạng DHCP, bạn cần chỉnh sửa tập tin cấu hình dhcpd.conf.
2.3. Dịch vụ mạng SAMBA trên hệ điều hành Linux
2.3.1. Giới thiệu chung về SAMBA
SAMBA là một ứng dụng máy chủ mạng cho phép chia sẻ tệp, máy in và các
tài nguyên khác giữa các máy tính chạy các hệ điều hành khác nhau. SAMBA được
sử dụng phổ biến để kết nối các máy tính chạy Windows với các máy tính chạy
Linux.
SAMBA là viết tắt của SMB Server, nơi SMB là Server Message Block, một giao
thức mạng được sử dụng để chia sẻ tệp và máy in.
SAMBA được phát triển bởi Andrew Tridgell và được phát hành lần đầu tiên vào
năm 1992. SAMBA là một phần mềm mã nguồn mở và miễn phí.
2.3.2. Cấu hình dịch vụ mạng SAMBA trên hệ điều hành Linux
Để cấu hình dịch vụ mạng SAMBA trên hệ điều hành Linux, bạn cần chỉnh sửa tập
tin cấu hình smb.conf. Tập tin này nằm trong thư mục /etc/samba.
Tập tin smb.conf có cấu trúc như sau:

13 | P a g e
[global]
# Global settings
workgroup = WORKGROUP
server string = Samba Server
netbios name = SERVER
security = user
# Share definitions
[share]
path = /share
available = yes
valid users = @users
- Phần global chứa các tùy chọn cấu hình chung cho dịch vụ mạng SAMBA.
- Phần share chứa cấu hình cho một phân vùng chia sẻ.
Các tùy chọn cấu hình chung cho dịch vụ mạng SAMBA bao gồm:
- workgroup: Tên miền của mạng.
- server string: Tên máy chủ.
- netbios name: Tên máy chủ NetBIOS.
- security: Chế độ bảo mật.
Để cấu hình dịch vụ mạng SAMBA cho một miền cụ thể, bạn cần thêm phần
[domain] vào tập tin cấu hình smb.conf.
Phần domain chứa các tùy chọn cấu hình cho miền đó.
- security: Chế độ bảo mật cho miền.
- netbios name: Tên máy chủ NetBIOS cho miền.
- preferred master: Cấu hình máy chủ chính cho miền.
- domain master: Cấu hình máy chủ phụ cho miền.
- domain logons: Cấu hình cho phép người dùng đăng nhập vào miền.
Để khởi động dịch vụ mạng SAMBA, bạn sử dụng lệnh sau:
 systemctl start smb
Để dừng dịch vụ mạng SAMBA, bạn sử dụng lệnh sau:
 systemctl stop smb
Để kiểm tra trạng thái của dịch vụ mạng DHCP, bạn sử dụng lệnh sau:
 systemctl status smb
Một số câu lệnh hữu ích cho dịch vụ mạng SAMBA

14 | P a g e
Ngoài các lệnh đã đề cập ở trên, bạn cũng có thể sử dụng các lệnh sau để quản lý
dịch vụ mạng SAMBA:
- smbpasswd: Thay đổi mật khẩu người dùng Samba.
- testparm: Kiểm tra tính hợp lệ của tập tin cấu hình smb.conf.
- smbstatus: Hiển thị trạng thái của dịch vụ mạng SAMBA.
- nmblookup: Tìm kiếm máy tính trên mạng.
Kết luận
SAMBA là một dịch vụ mạng quan trọng, giúp chia sẻ tệp, máy in và các tài nguyên
khác giữa các máy tính chạy các hệ điều hành khác nhau.
Trên hệ điều hành Linux, dịch vụ mạng SAMBA được cung cấp bởi gói phần mềm
samba. Để cấu hình dịch vụ mạng SAMBA, bạn cần chỉnh sửa tập tin cấu hình
smb.conf.
2.4. Dịch vụ FTP trên hệ điều hành Linux
2.4.1. Giới thiệu chung về FTP (cơ sở lý thuyết)
FTP là viết tắt của File Transfer Protocol, là một giao thức mạng được sử
dụng để truyền file giữa các máy tính trên mạng. FTP sử dụng mô hình client-
server, trong đó máy tính cung cấp dịch vụ được gọi là server FTP, còn máy tính
yêu cầu dịch vụ được gọi là client FTP.
Tính năng chính của FTP:
- Truyền file theo hướng giao tiếp hai chiều:
Client FTP có thể tải file từ server FTP.
Server FTP có thể tải file từ client FTP.
- FTP sử dụng hệ thống bảo mật người dùng và mật khẩu để kiểm soát truy
cập.
- FTP hỗ trợ truyền file theo nhiều giao thức khác nhau, bao gồm ASCII,
binary, và UTF-8.
2.4.2. Cấu hình dịch vụ mạng FTP trên hệ điều hành Linux
Để cấu hình dịch vụ mạng FTP trên hệ điều hành Linux, chúng ta cần thực hiện các
bước sau:
1. Cài đặt gói phần mềm FTP.
2. Chỉnh sửa tệp cấu hình của dịch vụ FTP.
3. Khởi động dịch vụ FTP.
Để cài đặt gói phần mềm FTP, chúng ta sử dụng lệnh sau:
 sudo apt-get install vsftpd

15 | P a g e
Chỉnh sửa tệp cấu hình của dịch vụ FTP
Tệp cấu hình của dịch vụ FTP là /etc/vsftpd.conf. Chúng ta có thể sử dụng trình
soạn thảo văn bản để chỉnh sửa tệp này.
Dưới đây là một số tùy chọn cấu hình chung cho dịch vụ mạng FTP:
- anonymous_enable: Tùy chọn này cho phép truy cập FTP cho người dùng ẩn
danh.
- local_enable: Tùy chọn này cho phép truy cập FTP cho người dùng địa
phương.
- userlist_enable: Tùy chọn này cho phép xác định người dùng được phép truy
cập FTP.
- userlist_deny: Tùy chọn này cho phép xác định người dùng bị cấm truy cập
FTP.
- chroot_local_user: Tùy chọn này cho phép giới hạn quyền truy cập của
người dùng địa phương trong thư mục gốc của họ.
- chroot_list_enable: Tùy chọn này cho phép xác định người dùng địa phương
được giới hạn trong một thư mục cụ thể.
- allow_writeable_chroot: Tùy chọn này cho phép người dùng địa phương ghi
vào thư mục gốc của họ.
- anon_root: Thư mục gốc cho người dùng ẩn danh.
- local_root: Thư mục gốc cho người dùng địa phương.
- listen_address: Địa chỉ IP mà dịch vụ FTP sẽ lắng nghe.
- port: Cổng mà dịch vụ FTP sẽ lắng nghe.
Để cấu hình dịch vụ FTP cho một miền cụ thể, chúng ta có thể sử dụng tùy chọn
chroot_list_enable. Tùy chọn này cho phép chúng ta xác định các miền được giới
hạn trong một thư mục cụ thể.
Ví dụ, để giới hạn miền example.com trong thư mục /var/ftp/example.com, chúng ta
sử dụng lệnh sau:
 chroot_list_enable=yes
 chroot_list_file=/etc/vsftpd.chroot_list
Thêm dòng sau vào tệp /etc/vsftpd.chroot_list:
 example.com
Để khởi động dịch vụ FTP, chúng ta sử dụng lệnh sau:
 sudo service vsftpd start
Để dừng dịch vụ FTP, chúng ta sử dụng lệnh sau:

16 | P a g e
 sudo service vsftpd stop
Để kiểm tra trạng thái của dịch vụ mạng DHCP, bạn sử dụng lệnh sau:
 sudo service vsftpd status
Kết luận
FTP là một dịch vụ mạng quan trọng được sử dụng để truyền file giữa các máy tính
trên mạng. Việc cấu hình dịch vụ mạng FTP trên hệ điều hành Linux tương đối đơn
giản. Bằng cách hiểu các tùy chọn cấu hình cơ bản, chúng ta có thể thiết lập dịch vụ
FTP phù hợp với nhu cầu của mình.

2.5. Dịch vụ Webserver trên hệ điều hành Linux


2.5.1 Giới thiệu chung về Webserver
Webserver là một chương trình máy tính chạy trên máy chủ web và cung cấp
các trang web cho người dùng internet. Webserver nhận các yêu cầu từ trình duyệt
web và trả về các trang web tương ứng.
Tính năng chính của Webserver:
- Cung cấp các trang web cho người dùng internet.
- Giải mã các yêu cầu HTTP từ trình duyệt web.
- Trả về các trang web tương ứng cho trình duyệt web.
- Hỗ trợ nhiều giao thức khác nhau, bao gồm HTTP, HTTPS, và FTP.
2.5.2 Cấu hình dịch vụ mạng Webserver trên hệ điều hành Linux
Để cấu hình dịch vụ mạng Webserver trên hệ điều hành Linux, chúng ta cần thực
hiện các bước sau:
1. Cài đặt gói phần mềm Webserver.
2. Chỉnh sửa tệp cấu hình của dịch vụ Webserver.
3. Khởi động dịch vụ Webserver.
Cài đặt gói phần mềm Webserver
Để cài đặt gói phần mềm Webserver, chúng ta sử dụng lệnh sau:
sudo apt-get install apache2
Chỉnh sửa tệp cấu hình của dịch vụ Webserver
Tệp cấu hình của dịch vụ Webserver là /etc/apache2/apache2.conf. Chúng ta có thể
sử dụng trình soạn thảo văn bản để chỉnh sửa tệp này.
Dưới đây là một số tùy chọn cấu hình chung cho dịch vụ mạng Webserver:
- ServerName: Tên miền hoặc địa chỉ IP của máy chủ web.

17 | P a g e
- ServerAdmin: Địa chỉ email của quản trị viên máy chủ web.
- DocumentRoot: Thư mục gốc chứa các trang web.
- DirectoryIndex: Tên của tập tin index trong thư mục gốc.
- ErrorLog: Tệp nhật ký lỗi của máy chủ web.
- CustomLog: Tệp nhật ký truy cập của máy chủ web.
Để cấu hình dịch vụ Webserver cho một miền cụ thể, chúng ta có thể sử dụng các
tệp cấu hình bổ sung. Tệp cấu hình bổ sung thường có đuôi là .conf và được đặt
trong thư mục /etc/apache2/sites-available.
Ví dụ, để cấu hình dịch vụ Webserver cho miền example.com, chúng ta có thể tạo
tệp example.com.conf với nội dung sau:
<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/example.com
</VirtualHost>
Tiếp theo, chúng ta kích hoạt tệp cấu hình này bằng lệnh sau:
 sudo a2ensite example.com.conf
Để khởi động dịch vụ Webserver, chúng ta sử dụng lệnh sau:
 sudo service apache2 start
Để dừng dịch vụ Webserver, chúng ta sử dụng lệnh sau:
 sudo service apache2 stop
Để kiểm tra trạng thái của dịch vụ mạng Webserver, bạn sử dụng lệnh sau:
 sudo service apache2 status
Thêm một số tùy chọn cấu hình nâng cao
Ngoài các tùy chọn cấu hình chung, dịch vụ Webserver còn hỗ trợ nhiều tùy chọn
cấu hình nâng cao. Một số tùy chọn cấu hình nâng cao phổ biến bao gồm:
- Điều khiển quyền truy cập: Tùy chọn này cho phép chúng ta kiểm soát quyền
truy cập vào các trang web.
- Bảo mật: Tùy chọn này cho phép chúng ta tăng cường bảo mật cho máy chủ
web.
- Tối ưu hóa hiệu suất: Tùy chọn này cho phép chúng ta tối ưu hóa hiệu suất
của máy chủ web.
- Để tìm hiểu thêm về các tùy chọn cấu hình nâng cao của dịch vụ Webserver,
chúng ta có thể tham khảo tài liệu hướng dẫn của dịch vụ Webserver.
Kết luận

18 | P a g e
Webserver là một dịch vụ mạng quan trọng được sử dụng để cung cấp các trang
web cho người dùng internet. Việc cấu hình dịch vụ mạng Webserver trên hệ điều
hành Linux tương đối đơn giản. Bằng cách hiểu các tùy chọn cấu hình cơ bản,
chúng ta có thể thiết lập dịch vụ Webserver phù hợp với nhu cầu của mình.

2.6. Dịch vụ LDAP trên hệ điều hành Linux


2.6.1. Giới thiệu chung về LDAP
LDAP là viết tắt của Lightweight Directory Access Protocol, là một giao
thức mạng được sử dụng để truy cập và quản lý các thư mục. LDAP sử dụng mô
hình client-server, trong đó máy tính cung cấp dịch vụ được gọi là server LDAP,
còn máy tính yêu cầu dịch vụ được gọi là client LDAP.
Tính năng chính của LDAP:
- Truy cập và quản lý các thư mục một cách tập trung.
- Hỗ trợ nhiều giao thức khác nhau, bao gồm LDAP, LDAPS, và LDAP over
SSL.
- Sử dụng mô hình phân cấp để tổ chức dữ liệu.
2.6.2. Cấu hình dịch vụ mạng LDAP trên hệ điều hành Linux
Để cấu hình dịch vụ mạng LDAP trên hệ điều hành Linux, chúng ta cần thực hiện
các bước sau:
1. Cài đặt gói phần mềm LDAP.
2. Chỉnh sửa tệp cấu hình của dịch vụ LDAP.
3. Khởi động dịch vụ LDAP.
Cài đặt gói phần mềm LDAP
Để cài đặt gói phần mềm LDAP, chúng ta sử dụng lệnh sau:
 sudo apt-get install slapd
Chỉnh sửa tệp cấu hình của dịch vụ LDAP
Tệp cấu hình của dịch vụ LDAP là /etc/ldap/slapd.conf. Chúng ta có thể sử dụng
trình soạn thảo văn bản để chỉnh sửa tệp này.
Dưới đây là một số tùy chọn cấu hình chung cho dịch vụ mạng LDAP:

19 | P a g e
- database: Loại cơ sở dữ liệu được sử dụng để lưu trữ dữ liệu LDAP.
- suffix: Định danh của thư mục LDAP.
- rootdn: Tên người dùng có quyền truy cập đầy đủ vào thư mục LDAP.
- rootpw: Mật khẩu của người dùng rootdn.
Để cấu hình dịch vụ LDAP cho một miền cụ thể, chúng ta có thể sử dụng các tệp
cấu hình bổ sung. Tệp cấu hình bổ sung thường có đuôi là .ldif và được đặt trong
thư mục /etc/ldap/schema.
Ví dụ, để cấu hình dịch vụ LDAP cho miền example.com, chúng ta có thể tạo tệp
example.com.ldif với nội dung sau:
dn: ou=people,dc=example,dc=com
objectclass: organizationalUnit
ou: people
dn: uid=admin,ou=people,dc=example,dc=com
objectclass: inetOrgPerson
objectclass: posixAccount
uid: admin
cn: Admin
sn: Admin
mail: admin@example.com
uidNumber: 1000
gidNumber: 1000
homeDirectory: /home/admin
Tiếp theo, chúng ta nhập tệp cấu hình này vào cơ sở dữ liệu LDAP bằng lệnh sau:
 sudo ldapadd -x -D "cn=admin,dc=example,dc=com" -w admin -f
example.com.ldif
Để khởi động dịch vụ LDAP, chúng ta sử dụng lệnh sau:
 sudo service slapd start
Để dừng dịch vụ LDAP, chúng ta sử dụng lệnh sau:
 sudo service slapd stop
Để kiểm tra trạng thái của dịch vụ mạng Webserver, bạn sử dụng lệnh sau:
 sudo service slapd status
Thêm một số tùy chọn cấu hình nâng cao
Ngoài các tùy chọn cấu hình chung, dịch vụ LDAP còn hỗ trợ nhiều tùy chọn cấu
hình nâng cao. Một số tùy chọn cấu hình nâng cao phổ biến bao gồm:

20 | P a g e
- Bảo mật: Tùy chọn này cho phép chúng ta tăng cường bảo mật cho dịch vụ
LDAP.
- Tối ưu hóa hiệu suất: Tùy chọn này cho phép chúng ta tối ưu hóa hiệu suất
của dịch vụ LDAP.
Kết luận
LDAP là một dịch vụ mạng quan trọng được sử dụng để truy cập và quản lý các thư
mục. Việc cấu hình dịch vụ mạng LDAP trên hệ điều hành Linux tương đối đơn
giản. Bằng cách hiểu các tùy chọn cấu hình cơ bản, chúng ta có thể thiết lập dịch vụ
LDAP phù hợp với nhu cầu của mình.

PHẦN III: TÌM HIỂU CÁC THẾ HỆ CỦA HỆ ĐIỀU HÀNH LINUX

3.1 Giai đoạn phát triển của hệ điều hành Linux


Hệ điều hành Linux được phát triển từ năm 1991 bởi Linus Torvalds, một sinh
viên đại học Helsinki ở Phần Lan 1. Từ đó, các kết quả của nhân Linux đã được
tăng trưởng liên tục trong suốt lịch sử của nó. Dưới đây là một số giai đoạn phát
triển của Linux:
- Năm 1991: Linus Torvalds phát hành phiên bản đầu tiên của nhân Linux.
- Năm 1992: Cộng đồng Linux được thành lập.
- Năm 1993: Các bản phân phối Linux đầu tiên được phát hành.
- Năm 1994: Phiên bản Linux 1.0 được phát hành.
- Năm 1996: Công ty Red Hat được thành lập và phát hành Red Hat Linux.
- Năm 2000: Công ty IBM công bố sẽ đầu tư 1 tỷ USD vào Linux.
- Năm 2003: Công ty Novell mua lại SUSE Linux.
- Năm 2005: Công ty Red Hat phát hành Red Hat Enterprise Linux 4.
- Năm 2007: Công ty Canonical phát hành Ubuntu 7.04.
- Năm 2011: Công ty Red Hat phát hành Red Hat Enterprise Linux 6.
- Năm 2015: Công ty Red Hat phát hành Red Hat Enterprise Linux 7.
(Thông tin tìm hiểu cho đến năm 2015)
3.2 Các thế hệ của hệ điều hành Linux
 Thế hệ 0.01 - 0.12 (1991 - 1992)
- Thế hệ đầu tiên của Linux được phát triển bởi Linus Torvalds, một sinh
viên đại học tại Phần Lan. Torvalds bắt đầu phát triển Linux như một dự

21 | P a g e
án cá nhân, nhưng nó nhanh chóng thu hút được sự chú ý của cộng đồng
mã nguồn mở.
- Các phiên bản đầu tiên của Linux còn rất thô sơ và không có nhiều tính
năng. Chúng chỉ có thể chạy trên một số loại phần cứng nhất định và
không có nhiều ứng dụng có sẵn.
- Tuy nhiên, các phiên bản này đã đặt nền móng cho sự phát triển của
Linux trong những năm tiếp theo.
 Thế hệ 0.13 - 1.0 (1992 - 1994)
- Các phiên bản này đã được cải thiện đáng kể so với các phiên bản trước.
Chúng đã thêm nhiều tính năng mới, bao gồm hỗ trợ mạng, hỗ trợ thiết bị
SCSI và hỗ trợ đa xử lý.
- Các phiên bản này đã giúp Linux trở nên phổ biến hơn, đặc biệt là trong
lĩnh vực máy chủ.
 Thế hệ 1.1 - 2.0 (1994 - 1996)
- Các phiên bản này tiếp tục cải thiện tính năng và khả năng của Linux.
Chúng đã thêm hỗ trợ cho các thiết bị mới, bao gồm USB và Wi-Fi.
- Các phiên bản này đã giúp Linux trở nên phổ biến hơn trong lĩnh vực
máy tính cá nhân.
 Thế hệ 2.1 - 2.6 (1996 - 2003)
- Các phiên bản này đã mang lại một số thay đổi lớn cho Linux. Chúng đã
giới thiệu một nhân Linux mới, có tên là 2.6. Nhân 2.6 nhanh hơn, ổn
định hơn và có nhiều tính năng hơn nhân 1.x.
- Các phiên bản này đã giúp Linux trở nên phổ biến hơn trong nhiều lĩnh
vực, bao gồm điện toán đám mây và thiết bị di động.
 Thế hệ 2.7 - 3.x (2003 - 2011)
- Các phiên bản này tiếp tục cải thiện tính năng và khả năng của Linux.
Chúng đã thêm hỗ trợ cho các công nghệ mới, bao gồm IPv6 và 64-bit.
- Các phiên bản này đã giúp Linux trở nên phổ biến hơn trong lĩnh vực
doanh nghiệp.
 Thế hệ 4.0 - 5.x (2011 - nay)
- Các phiên bản này đã mang lại một số thay đổi lớn cho Linux. Chúng đã
giới thiệu một nhân Linux mới, có tên là 4.0. Nhân 4.0 nhanh hơn, ổn
định hơn và có nhiều tính năng hơn nhân 2.x.

22 | P a g e
- Các phiên bản này đã giúp Linux trở nên phổ biến hơn trong lĩnh vực
IoT.
Chi tiết hơn về các thế hệ Linux
 Thế hệ 0.01 - 0.12
- Các phiên bản đầu tiên của Linux được phát triển bởi Linus Torvalds.
Chúng được viết bằng ngôn ngữ C và được biên dịch thành mã máy.
- Các phiên bản này chỉ có thể chạy trên một số loại phần cứng nhất định,
bao gồm Intel 80386 và 80486.
- Các phiên bản này không có nhiều tính năng. Chúng chỉ có thể chạy một
số lệnh cơ bản, chẳng hạn như ls, pwd và cat.
 Thế hệ 0.13 - 1.0
- Các phiên bản này đã được cải thiện đáng kể so với các phiên bản trước.
Chúng đã thêm nhiều tính năng mới, bao gồm:
o Hỗ trợ mạng
o Hỗ trợ thiết bị SCSI
o Hỗ trợ đa xử lý
- Các phiên bản này đã giúp Linux trở nên phổ biến hơn, đặc biệt là trong
lĩnh vực máy chủ.
 Thế hệ 1.1 - 2.0
- Các phiên bản này tiếp tục cải thiện tính năng và khả năng của Linux.
Chúng đã thêm hỗ trợ cho các thiết bị mới, bao gồm USB và Wi-Fi.
- Các phiên bản này đã giúp Linux trở nên phổ biến hơn trong lĩnh vực
máy tính cá nhân.
 Thế hệ 2.1 - 2.6
- Các phiên bản này đã mang lại một số thay đổi lớn cho Linux. Chúng đã giới
thiệu một nhân Linux mới, có tên là 2.6. Nhân 2.6 nhanh hơn, ổn định hơn và
có nhiều tính năng hơn nhân 1.x.
Linux đã phát triển đáng kể trong những năm qua. Từ những phiên bản đầu tiên còn
rất thô sơ, Linux đã trở thành một hệ điều hành mạnh mẽ và linh hoạt được sử dụng
rộng rãi trong nhiều lĩnh vực. Mỗi thế hệ Linux đều mang một ý nghĩa quan trọng
trong sự phát triển của hệ điều hành này.

23 | P a g e

You might also like