



















Preview text:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA AN TOÀN THÔNG TIN BÁO CÁO BÀI THỰC HÀNH
HỌC PHẦN: THỰC TẬP CƠ SỞ
MÃ HỌC PHẦN: INT13147
BÀI THỰC HÀNH 1.4
CÀI ĐẶT LINUX SERVER VÀ CÁC DỊCH VỤ Sinh viên thực hiện:
B22DCAT017 Nguyễn Đức Anh
Giảng viên hướng dẫn: PGS.TS. Đỗ Xuân Chợ
HỌC KỲ 2 NĂM HỌC 2024-2025 MỤC LỤC Mục l c ụ HỌC VIỆN CÔNG NGHỆ BƯU
CHÍNH VIỄN THÔNG KHOA AN TOÀN THÔNG TIN ................... 1
MỤC LỤC ................................................................................................................................................... 2
DANH MỤC CÁC HÌNH VẼ ..................................................................................................................... 5 DANH MỤC CÁC BẢNG B
IỂU ................................................................................................................ 6 DANH MỤC CÁC T Ừ VIẾT T
ẮT ............................................................................................................. 7 CHƯƠNG 1.
GIỚI THIỆU CHUNG VỀ BÀI THỰC HÀNH ................................................................ 8
1.2 Mục đích . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Tìm hiểu lý thuyết . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
CHƯƠNG 2. NỘ IDUNG THỰC HÀNH ............................................................................................. 11
2.1 Chuẩn bị môi trường . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2 Các bước thực hiện . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
TÀI LIỆU THAM KHẢO ......................................................................................................................... 27 2
1.1.1 Tổng quan về Ubuntu Server
Ubuntu Server là một phiên bản chuyên biệt của hệ điều hành Ubuntu, được thiết kế tối
ưu cho máy chủ. Nó cung cấp đầy đủ các công cụ và tính năng cần thiết để triển khai các
dịch vụ quan trọng như web server, database server, file server, email server, và nhiều ứng
dụng khác. Ubuntu Server không có giao diện đồ họa mặc định, giúp tiết kiệm tài nguyên
và cải thiện hiệu suất cho các tác vụ máy chủ.
Hình 1 Giao diện làm việc của Ubuntu Server
Các đặc điểm chính của Ubuntu Server:
- Miễn phí & mã nguồn mở: Ubuntu Server dựa trên Linux và hoàn toàn miễ n phí.
- Hiệu suất cao: Được tối ưu hóa để chạy trên nhiều loại phần cứng, từ server doanh nghiệp đến cloud.
- Bảo mật cao: Cập nhật thường xuyên, hỗ trợ SELinux, AppArmor, tường lửa UFW
- Hỗ trợ rộng rãi: Chạy được trên nhiều nền tảng như Bare Metal, Virtual Machine,
Cloud (AWS, Azure, Google Cloud). 3
- Dễ dàng cài đặt và quản lý: Có công cụ như Netplan (cấu hình mạng), Snap (quản
lý gói), OpenSSH (kết nối từ xa).
Ứng dụng của Ubuntu Server: - Web Server: Apache, Nginx.
- Database Server: MySQL, PostgreSQL, MongoDB. - File Server: Samba, NFS.
- Email Server: Postfix, Exim.
- Container & Virtualization: Docker, Kubernetes, KVM. 4 -
DANH MỤC CÁC HÌNH VẼ Hình 1 Giao diện v làm iệc của
Ubuntu Server ............................................................................................ 3 Hình 2 Cấu hình máy
ảo Ubuntu Server .................................................................................................... 11
Hình 3 Tùy chọn ngôn ngữ ......................................................................................................................... 12
Hình 5 Tùy chọn cài đặt SSH ..................................................................................................................... 13
Hình 6 Quá trình cài đặt ............................................................................................................................ 13
Hình 7 Yêu cầu đăng nhập sau khi cài đặt thành công .............................................................................. 14
Hình 8 Máy trạm Windows ........................................................................................................................ 14
Hình 9 Update và Upgrade các gói cài đặt ............................................................................................... 15
Hình 10 Trạng thái của dịch vụ SSH ......................................................................................................... 16
Hình 11 Trang chủ của PuTTY .................................................................................................................. 17 Hình 12 Địa chỉ
IP của máy chủ Ubuntu ................................................................................................... 17 Hình 13 Thiết lập kết nối đến
máy chủ ...................................................................................................... 18 Hình 14 Đăng nhập
vào máy chủ............................................................................................................... 18 Hình 15 Kết nối
đến máy chủ thành công .................................................................................................. 19 Hình 16 Cài đặt
dịch vụ Samba ................................................................................................................. 19
Hình 17 Tạo các thư mục,
users và cấp quyền truy cập ............................................................................ 20
Hình 18 Cấu hình file smb.conf và khởi động lại dịch vụ .......................................................................... 21
Hình 19 Truy cập file sambashare trên máy trạm Windows ...................................................................... 21 Hình 20 Yêu cầu tên đăng
nhập và mật khẩu ............................................................................................. 22
Hình 22 Tạo file txt với nội dung bất kì ..................................................................................................... 22 Hình 22 Đ ã có thể đọc được fi ở
le máy chủ Ubuntu .................................................................................. 23 Hình 23 Cài đặt
dịch vụ SELinux .............................................................................................................. 24
Hình 24 Cài đặt SELinux thành công và reboot lại c
máy hủ ..................................................................... 25
Hình 25 Kiểm tra trạng thái dịch vụ .......................................................................................................... 25
Hình 26 Thêm cổng dịch vụ và kiểm tra thành công .................................................................................. 26 5
DANH MỤC CÁC BẢNG BIỂU
Bảng 1. So sánh máy chủ Ubuntu và máy trạm Ubuntu .................................................................... 6 6 DANH MỤ
C CÁC TỪ VIẾT TẮT
Từ viết tắt Thuật ngữ tiếng Anh/Giải thích Thuật ngữ tiếng Việt/Giải thích APT Advanced Package Tool
Hệ thống quản lý gói phần mềm
Công cụ tường lửa đơn giản dành UFW Uncomplicated Firewal cho Linux
Tiêu chuẩn về cấu trúc hệ thống tệp FHS Filesystem Hierarchy Standard trên Linux GUI Graphical User Interface
Giao diện đồ họa người dùng CLI Command-Line Interface Giao diện dòng lệnh LTS Long Term Support
Phiên bản hỗ trợ dài hạn SSH Secure Shel
Giao thức mạng bảo mật NFS Network File System
Giao thức chia s ẻtệp qua mạng 7
CHƯƠNG 1. GIỚI THIỆU CHUNG VỀ BÀI THỰC HÀNH
1.2 Mục đích
Rèn luyện kỹ năng cài đặt và quản trị HĐH máy chủ Linux server với các dịch vụ c ơ bản
1.3 Tìm hiểu lý thuyết
1.3.1 So sánh với máy trạ m Ubuntu Điểm giống nhau:
- Cả hai đều sử dụng nhân (kernel) Linux giống nhau, đảm bảo tính ổn định, bảo mật và hiệu suất cao.
- Cả hai phiên bản đều sử dụng trình quản lý gói APT (Advanced Package Tool) để
cài đặt và quản lý phần mềm từ kho Ubuntu repositories. Ngoài ra, đều có thể sử
dụng Snap để cài đặt các ứng dụng độc lập.
- Cả hai phiên bản đều tuân theo tiêu chuẩn hệ thống tệp của Linux (FHS – Filesystem
Hierarchy Standard), với các thư mục như: /home, /etc, /var, /usr.
- Cả hai đều hỗ trợ các cơ chế bảo mật như: UFW, AppArmor & SELinux, sudo, OpenSSH
- Hỗ trợ phần cứng đa dạng
- Chu kỳ cập nhật và hỗ trợ giống nhau
- Có thể chuyển đổi linh hoạt
- Cộng đồng và tài liệu hỗ tr ợ phong phú Điểm khác nhau:
Bảng 1. So sánh máy chủ Ubuntu và máy trạ m Ubuntu Tiêu chí
Máy chủ Ubuntu
Máy trạm Ubuntu Giao diện
Không có giao diện đồ họa mặc
Có giao diện đồ họa (GUI) mặc
định (chỉ có dòng lệnh - CLI) định như GNOME
Mục đích sử Chạy dịch vụ mạng, ứng dụng
Dùng cho công việc cá nhân, văn dụng
server như web server, database, file phòng, lập trình, giải trí... server. . Hiệu suất
Tối ưu cho hiệu suất, độ ổn định và
Tập trung vào trải nghiệm người
bảo mật cao, ít dịch vụ nền không
dùng, có nhiều ứng dụng chạy cần thiết nền Phần cứng
Có thể chạy trên phần cứng mạnh
Cần phần cứng hỗ trợ đồ họa tốt yêu cầu
(server chuyên dụng) hoặc nhẹ (máy để chạy GUI mượt mà ảo, Raspberry Pi) 8 Hỗ trợ phần
Chủ yếu hỗ trợ các phần mềm máy
Hỗ trợ nhiều ứng dụng desktop mềm
chủ như Apache, MySQL, Docker,
như trình duyệt, bộ Office, media OpenSSH. . player. . Cập nhật &
Cập nhật ít hơn nhưng ổn định, có
Cập nhật thường xuyên hơn, có bảo trì
thể dùng phiên bản LTS lâu dài
thể gặp thay đổi giao diện hoặc tính năng Cấu hình &
Chủ yếu sử dụng dòng lệnh (SSH,
Có thể cấu hình bằng GUI hoặc quản lý terminal) dòng lệnh Bảo mật
Mặc định có các cơ chế bảo mật
Bảo mật thấp hơn một chút do
chặt chẽ hơn, ít cài sẵn ứng dụng
nhiều phần mềm chạy nền, có không cần thiế GUI
1.3.2 Dịch vụ chia sẻ file Samba
Samba là một ứng ụng chạy trên Unix và nó mô phỏng một hệ thống Windows. Samba
cho phép một hệ thống Unix gia nhập vào “Network neighborhood” và người dùng
Windows có thể truy cập tài nguyên trên Unix.
Samba thực hiện được nhờ vào sự mô phỏng giao thức CIFS hay” Common Internet
File System” và giao thức truyền tin SMB hay “Server Message Block”
Nói gọn lại samba là một phần mệ miễn phí chủ yếu sử dụng để chia sẻ file giữa các
nền tảng khác nhau như Windows và Linux bằng cách sử dụng giao thức SMB/CIFS.
Samba bao gồm 2 chương trính chính và một số công cụ hỗ trợ. Hai chương trình chính là. •
smbd : dịch vụ tệp và máy in, xác thực phân quyền truy cập tài nguyên.
• nmdb : Phân giải tên và thông báo cá dịch vụ ra bên ngoài
Một sô công cụ hỗ trợ samba là.
• smbclient: có chức năng tương tự NFS, kết nối từ hệ thống unix tới smb share của
một hệ thống windows để truyền tệp, gửi tệp. •
nmblookup: Phân giải tên NetBIOS. để tìm địa chỉ IP tương ứng và các thông tin của máy chạy Windows
• swat : cho phép cấu hình samba qua giao diện web.
Các chức năng chính của Samba: 9
- Chia s ẻtệp và thư mục :Samba cho phép người dùng chia s ẻtệp và thư mụ ct ừ máy
chủ của họ với các máy tính khác trong mạng.
- Tương thích đa nền tảng: Samba hỗ trợ tương thích giữa các hệ điều hành
Linux/Unix và Windows, giúp các máy tính chạy các hệ điều hành này có thể truy
cập và chia sẻ tệp một cách dễ dàng.
- Quản lý người dùng và quyền truy cập: Samba cung cấp các công cụ để quản lý
người dùng và nhóm người dùng, cũng như cấp quyền truy cập vào các tệp và thư mục được chia sẻ.
- Bảo mật: Samba cung cấp các tính năng bảo mật như mã hóa dữ liệu, xác thực người
dùng và kiểm soát truy cập để bảo vệ dữ liệu được chia sẻ trong mạng.
1.3.3 Tìm hiểu về SELinux
SELinux (Security-Enhanced Linux) là một hệ thống bảo mật được tích hợp sâu vào hệ
điều hành Linux. Nó được phát triển bởi Cục Tình báo Quốc phòng Hoa Kỳ (NSA) và được
phát hành dưới giấy phép mã nguồn mở. SELinux cung cấp một cơ chế kiểm soát truy cập
dựa trên chính sách bảo mật để giữ cho hệ thống an toàn và đảm bảo tính toàn vẹn của dữ liệu.
SELinux sử dụng một loạt các chính sách bảo mậ tđể kiểm soát các hành động của các
quy trình và người dùng trong hệ thống. Các chính sách này xác định quyền truy cập của
các quy trình đối với các tài nguyên trong hệ thống như file, ổ đĩa và cổng kết nối mạng. Nó
cũng theo dõi các hoạt động của các quy trình để phát hiện các hành vi đáng ngờ và ngăn
chặn các cuộc tấn công từ các hacker hoặc phần mềm độc hại.
Tuy nhiên, SELinux cũng có thể làm cho việc cấu hình và quản lý hệ thống trở nên
phức tạp hơn đối với người quản trị hệ thống không có kinh nghiệm trong việc sử dụng SELinux.
SELinux có ba chế độ hoạt động chính: Enforcing, Permissive và Disabled. Mỗi chế độ
có mục đích và tác động khác nhau đến việc kiểm soát truy cập của hệ thống.
Các chức năng chính của SELinux:
- Kiểm soát quyền truy cập: Hạn chế tiến trình và người dùng chỉ được phép thực hiện
những thao tác nhất định theo chính sách bảo mật
- Bảo vệ hệ thống khỏi tấn công: Ngăn chặn việc leo thang đặc quyền khi hệ thống bị xâm nhập.
- Giới hạn hoạt động của dịch vụ: Đảm bảo dịch vụ như web server, database chỉ có
quyền truy cập cần thiết, giảm thiểu rủi ro bị khai thác. 10
CHƯƠNG 2. NỘI DUNG THỰC HÀNH
2.1 Chuẩn bị môi trường
- File cài đặt Ubuntu Server 20.04 định dạng iso.
- File cài dặt máy trạm Windows 10 định dạng iso.
- Phần mềm ảo hóa, chẳng hạn: VMWare Workstation.
2.2 Các bước thực hiện
2.2.1 Cài đặt môi trường máy ảo Cài đặt Ubuntu Server:
- Khởi động phần mềm VMware Workstation
- Chọn File -> New Virtual Machine (hoặc ấn tổ hợp phím Ctrl + N) để thiết lập máy ảo mới
- Chọn cách cài đặt Typical -> Next > chọn Instal er disc image file (iso) và chọn
đường dẫn file iso cài Ubuntu server đã chuẩn bị
- Tiếp tục nhấn Next cho đến khi hoàn thành Hình 2 Cấ
u hình máy ảo Ubuntu Server
Quá trình cài đặt Ubuntu Server có thể có nhiều dịch vụ yêu cầu quá trình cấu hình và
tải xuống, ta có thể trực tiếp tải xuống dịch vụ hoặc cứ bấm “Done” để thiết lập mặc định
và tiến hành cài đặt các dịch vụ đó sau.
Các dịch vụ khi cài đặt Ubuntu Server thường bao gồm: 11 - Ngôn ngữ - Ngôn ngữ bàn phím
- Phiên bản Ubuntu Server ( đầy đủ - tối ưu) - Kết nối mạng - u hình proxy
- Cấu hình Alternative mirror - Tùy chọn cập nhật
- Tùy chọn phân vùng bộ nhớ - Thông tin profile - Kết nối SSH
- Hệ thống gói phần mềm Snap
Dưới đây là một số dịch vụ khi cài đặt Ubuntu Server.
Hình 3 Tùy chọn ngôn ngữ
Hình 4 Cài đặt tài khoản và mật khẩu 12
Hình 5 Tùy chọn cài đặt SSH
Hình 6 Quá trình cài đặt 13
Hình 7 Yêu cầu đăng nhập sau khi cài đặt thành công
Việc cài đặt máy trạm Windows làm tương tự như các bài thực hành trước đó. Hình 8 Máy trạm Windows 14
2.2.2 Cài đặt dịch vụ Open SSH
Để đảm bảo trong quá trình sử dụng, các gói cài đặt mặc định của Ubuntu hoạt động
hiệu quả, ta chạy 2 lệnh “sudo apt update” và “sudo apt upgrade” trước.
Hình 9 Update và Upgrade các gói cài đặ t
Nếu đã cấu hình và tải dịch vụ Open SSH trong bước cài đặt Ubuntu, ta có thể bỏ qua
bước này. Nếu chưa chạy lệnh “sudo apt install openssh-server” để tiến hành cài đặt dịch vụ này. 15
Kiểm tra trạng thái của dịch vụ đã cài đặt thành công hay chưa bằng lệnh “sudo
systemctl status ssh”. Trạng thái “active (running)” hiện dòng chữ màu xanh tức là dịch vụ đang chạy thành công.
Hình 10 Trạng thái của dịch vụ SSH 16
Mở máy trạm Windows và tìm kiếm “PuTTY” trên thanh tìm kiếm. Tải ứng dụng tương
ứng từ trang chủ và khởi động.
Hình 11 Trang chủ của PuTTY
Kiểm tra địa chỉ IP của máy chủ Ubuntu bằng lệnh “ifconfig”, biết được địa chỉ IP là “192.168.182.130”
Hình 12 Địa chỉ IP của máy chủ Ubuntu 17
Nhập địa chỉ IP của máy chủ vào ứng dụng PuTTY, cổng 22, kết nối SSH và nhấn Open.
Hình 13 Thiết lập kết nối đến máy chủ
Ứng dụng sẽ yêu cầu tên đăng nhập và mật khẩu của máy chủ.
Hình 14 Đăng nhập vào máy chủ 18
Kiểm tra kết nối thành công bằng lệnh “whoami”.
Hình 15 Kết nối đến máy chủ thành công
2.2.3 Cài đặt và cấu hình dịch vụ chia sẻ file Samba
Tiến hành cài đặt dịch vụ Samba bằng lệnh “sudo apt-get instal samba”
Có thể kiểm tra bằng lệnh “sudo systemctl status smbd”
Hình 16 Cài đặt dịch vụ Samba 19
Sau khi cài đặt dịch vụ xong ta sẽ tạo các users, th
ư mục để tiến hành chia sẻ file:
- Tạo thư mục tên “sambashare” với lệnh “mkdir sambashare”
- Tạo user tên “nguyenducanh” với lệnh “sudo useradd nguyenducanh”
- Đặt mật khẩu cho user với lệnh “sudo smbpasswd -a nguyenducanh” - Cấp quyền truy cậ
p cho user với lệnh “sudo chmod 777 /home /anhnd /sambashare” Hình 17 Tạ
o các thư mục, users và cấp quyền truy cập
Tiếp theo, ta cấu hình cho Samba với lệnh “sudo nano /etc/samba/smb.conf”.
Sử dụng bàn phím để di chuyển xuống phần như hình bên dưới và cấu hình cho thực sambashare.
- path = /home/nguyenducanh/sambashare: Đường dẫn đến thư mục chia sẻ.
- valid user = nguyenducanh: Chỉ người dùng nguyenducanh mới có quyền truy cập.
- read list = nguyenducanh: Người dùng nguyenducanh có quyền đọc.
- write list = nguyenducanh: Người dùng nguyenducanh có quyền ghi.
- browseable = yes: Thư mục này hiển thị trong danh sách chia s ẻ mạng.
- read only = no: Thư mục này không bị giới hạn chỉ đọc, tức là có thể ghi dữ liệu vào.
Lưu file smb.conf và chạy lệnh “sudo service smbd start” để khởi động lại dịch vụ. 20