1. Trang chủ
  2. » Luận Văn - Báo Cáo

mini project quản trị hệ thống cài đặt và cấu hình server desktop 70

37 88 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Mini Project Quản Trị Hệ Thống
Tác giả Lê Thành Sơn
Người hướng dẫn Ths. Thái Minh Tuấn
Trường học Trường Đại Học Cần Thơ
Chuyên ngành Công Nghệ Phần Mềm
Thể loại mini project
Thành phố Cần Thơ
Định dạng
Số trang 37
Dung lượng 1,79 MB

Nội dung

10% Cài đặt và cấu hình dịch vụ SSH để cho phép điều khiển từ xa Server.___12 - Chỉ có thành viên ban giám đốc và tài khoản mới có quyền điều khiển từ xa Server.. $sudo nmcli general ho

Trang 1

TRƯỜNG ĐẠI HỌC CẦN THƠ TRƯỜNG CÔNG NGHỆ THÔNG TIN && TRUYỀN THÔNG

BỘ MÔN CÔNG NGHỆ PHẦN MỀM

MINI PROJECT QUẢN TRỊ HỆ THỐNG

Mã số sinh viên: B2104821

Trang 2

- Chỉ có thành viên ban giám đốc và tài khoản <Mã số sinh viên> mới có quyền điều khiển từ xa Server Tài khoản root không được nối kết tới server từ xa. 12

- Chỉ cho phép chứng thực bằng private key, không cho phép chứng thực bằng

password Tạo private/public key cho người dùng <Mã số sinh viên> để có thể SSH tớiserver. _121.4 (10%) Tạo thư mục /data trên server và phân quyền sao cho thành viên ban giám đốc có toàn quyền (read, write và execute), các trưởng phòng có quyền read và

execute, các nhân viên không có bất cứ quyền gì Ngoài ra chỉ chủ sở hữu tập tin có quyền xóa hoặc đổi tên tập tin trong thư mục /data. 161.5 (5%) Cài đặt và cấu hình tường lửa trên Server để cho phép: _18

- Có thể truy cập các dịch vụ DNS, DHCP, SSH, Web, SAMBA trên Server Các dịch

vụ khác KHÔNG cập truy cập được. _181.6 (5%) Cài đặt và cấu hình dịch vụ DHCP trên Server để cấu hình mạng tự động chocác máy Desktop trong nhánh mạng: _21

- Địa chỉ IP của desktop: trong dãy 192.168.1.100/24 đến 192.168.1.254/24 21

Trang 3

Tên miền: gateway.lautamquoc.com < > IP: 192.168.1.1 29

1.10 (5%) Sử dụng dịch vụ cron và shell script tự động thực hiện công việc sao lưu dữliệu mỗi ngày, mỗi tuần, mỗi tháng trên Server như sau: 32+ Các thư mục cần sao lưu sao lưu: /home, /data, /etc 32+ Nơi lưu dữ liệu sao lưu: /mnt/backup _32

2 Hình thức bài báo cáo bài tập tổng hợp (30%) 36Viết báo cáo trình bày các bước thực hiện công việc 1.1 đến 1.10. 36Trình bày rõ ràng đầy đủ từng bước thực hiện và có hình ảnh minh hoạ Báo cáo ít lỗi chính tả, trình bày đẹp; có hình ảnh minh họa rõ, chi tiết, có mục lục, … _36

Trang 4

BÀI TẬP TỔNG HỢP CUỐI KỲ Môn: Quản Trị Hệ Thống Học kỳ 2 - Năm học 2023-2024

Sinh viên (làm cá nhân) hoàn thành một báo cáo bài tập tổng hợp theo mô tả

Lưu ý:

- Bài tập tổng hợp chiếm 15% điểm đánh giá môn học

- Mọi sao chép bài của nhau giữa các sinh viên sẽ nhận 0đ cho điểm của phần bài tập tổnghợp

- Thời gian nộp báo cáo dự kiến: trước khi thi cuối kỳ (tuần 19), nộp qua Google classroomcủa môn học File báo cáo phải có định dạng PDF

Mô tả bài tập tổng hợp:

Công ty Tam Quốc chuyên kinh doanh buffet lẩu cay Tứ Xuyên có nhu cầu cài đặt các dịch

vụ mạng phục vụ cho công việc của công ty như sau:

Trang 6

1 Cài đặt và cấu hình Server/Desktop (70%)

Trang 7

Host name Server Host name Desktop

Hệ điều hành

CentOS 9

Hệ điều hành Lubuntu 22.04,

hoặc bất kỳ hệ điềuhành khác

CPU/RAM/DISK 1core/2G/10G

Hoặc tùy chỉnh theocấu hình máy củasinh viên

CPU/RAM/DISK 1core/2G/20G

Hoặc tùy chỉnh theocấu hình máy của sinhviên

Network NAT Network

Subnet mask 255.255.255.0 Subnet mask

- Trong quá trình cài hệ điều hành CentOS 9 Stream, tạo 1 tài khoản với username là

<Mã số sinh viên>; firstname và lastname là họ tên của sinh viên Cấp quyền quản trị(sudo) cho tài khoản Sử dụng tài khoản vừa tạo để thực hiện bài tập tổng hợp (khôngdùng tài khoản root)

- Tắt dịch vụ tường lửa trên Server

SERVER:

Trang 8

+ Đổi tên hostname: Lệnh:

$sudo nmcli general hostname

+ Xem lại cấu hình:

$nmcli -f ipv4.addresses,ipv4.gateway,ipv4.dns con show enp0s3

+ Cập nhật lại các thay đổi:

$nmcli con down enp0s3, $nmcli con up enp0s3

DESKTOP:

+ Đổi tên hostname:

Trang 9

$sudo nmcli general hostname

Ta sẽ cấu hình máy ảo Ubuntu với các thông số như sau:

• Hostname: desktop

• IP, Subnet mask, gateway, DNS : Automatic (DHCP)

+ Đầu tiên để cấu hình động cho Desktop, ta phải cài đặt dịch vụ DHCP Server trên máy Server(làm câu 1.6 trước)

+ Sau khi cài đặt dịch vụ DHCP, tiếp theo từ máy ảo Desktop ta vào Settings > Network > Wired

> IPv4 > IPv4 Method: Automatic (DHCP)

+ Kiểm tra IP, Subnetmask, gateway, DNS:

Trang 10

+ Ping từ desktop đến server, từ desktop đến internet:

+ Ping từ server đến desktop, từ server đến internet:

Trang 11

1.2 (10%) Để quản lý các bộ phận và người dùng trong công ty, hãy tạo các nhóm người dùng (group) và người dùng (user) trên server như sau Cấp quyền sudo cho người dùng Gia Cát Lượng.

STT Họ Tên Nhóm Username Password Mô tả

1 Lưu Bị bangiamdoc bi.luu luubi Giám đốc

2 Gia Cát Lượng bangiamdoc luong.giacat giacatluong Phó giám đốc

3 Quan Vũ hanhchanh vu.quan quanvu Trưởng phòng

4 Trương Phi hanhchanh phi.truong truongphi Nhân viên

5 Triệu Vân banhang van.trieu trieuvan Trưởng phòng

6 Mã Siêu banhang sieu.ma masieu Nhân viên

7 Hoàng Trung banhang trung.hoang hoangtrung Nhân viên+ Để tạo một user mới ta dùng lệnh:

$sudo adduser

+ Để tạo mật khẩu cho usename vừa tạo ta dùng lệnh:

$sudo passwd

Trang 12

+ Để tạo nhóm người dùng ta dùng lệnh:

$sudo groupadd

+ Để thêm các user vào 1 nhóm ta dùng lệnh:

$sudo usermod -aG

+ Cấp quyền sudo cho người dùng luong.giacat:

Trang 13

• Ta sẽ không cấp quyền sudo trực tiếp cho người dùng luong.giacat, mà ta sẽ thêmngười dùng này nhóm có quyền sudo Ở đây, ta sẽ thêm người dùng luong.giacat vàonhóm wheel

• Lệnh để thêm một người dùng vào nhóm: $sudo usermod -aG

1.3 (10%) Cài đặt và cấu hình dịch vụ SSH để cho phép điều khiển từ xa Server

- Chỉ có thành viên ban giám đốc và tài khoản <Mã số sinh viên> mới có quyền điều khiển từ xa Server Tài khoản root không được nối kết tới server

$sudo dnf install openssh-server -y

+ Khởi động và cho phép dịch vụ SSH tự động thực thi khi khởi động hệ điều hành:

$sudo systemctl start sshd

$sudo systemctl enable sshd

+ Kiểm tra trạng thái dịch vụ SSH:

$sudo systemctl status sshd

Trang 14

Cấu hình SSH cho phép (hoặc chặn) nhóm (hoặc người) dùng điều khiển server từ xa:

Note 1: nhóm truongphong đã tạo gồm 2 người dùng là Zoro và Sanji

Note 2: AllowGroups và AllowUsers trong file sshd_config

 AllowGroups: nếu sau này muốn thêm người dùng khác có quyền điều khiển server từ

xa thì chỉ cần thêm người dùng này vào nhóm, không cần phải mở file cấu hìnhsshd_config như AllowUsers

 AllowUsers: nếu muốn thêm người dùng khác có quyền điều khiển server từ xa thìphải mở file cấu hình sshd_config và thêm user này vào

- Tiến hành cấu hình SSH server:

1 Mở file config SSH: $sudo nano /etc/ssh/sshd_config

2 Cho phép nhóm bangiamdoc, b2104821 điều khiển server từ xa, thêm dòng này:AllowGroups bangiamdoc “Enter” AllowUsers b2104821

3 Chặn tài khoản root điều khiển server từ xa: tìm đến dòng “#PermitRootLogin yes”,

bỏ ghi chú dấu “#” và thay “yes” thành “no” Nếu không có dòng “#PermitRootLogin”

mà chỉ có dòng “#PermitRootLogin prohibit-password” thì ta thêm dòng

“PermitRootLogin no”

4 Khởi động lại dịch vụ SSH:

$sudo systemctl restart sshd

Trang 15

5 Kiểm tra kết quả:

-Kết nối bằng tài khoan root thất bại

-Kết nối thành công bằng tài khoản b2104821

-Kết nối thành công bằng tài khoản thuộc bangiamdoc

Chỉ cho chứng thực bằng private key, tạo private/public key cho người dùng b2104821

+ Kết nối desktop đến server bằng người dùng b2104821:

+ Tạo keygen SSH:

$ssh-keygen

Trang 16

+ Nhận được tập tin chứa private key (dùng cho b2104821) và tập tin chứa public key (dùngcho server)

+ Đổi tên tập tin chứa public key thành tên khác và nằm trong thư mục ssh/, ví dụ như:security_keys

+ Phân quyền lại cho tập tin chứa public key

$chmod 600 ssh/security_keys

+ Tắt chức năng chứng thực bằng password và mở chứng thực bằng public key:

$sudo nano /etc/ssh/sshd_config

Trang 17

Tìm đến dòng PubkeyAuthentication và PasswordAuthentication ta thay đổi như sau:

+ Tạo thư mục /data:

Trang 18

$sudo mkdir /data

+ Để phân quyền như yêu cầu, ta sử dụng kỹ thuật ACL (Access Control List) kết hợp stickybit

+ Phân quyền cho thành viên ban giám đốc có toàn quyền (read write execute) trên thư mục/data: Ta dùng lệnh:

$sudo setfacl -m g:bangiamdoc:rwx /data

+ Phân quyền cho trưởng phòng quyền read và execute, các nhân viên không có bất cứ quyềngì: Ta có các lệnh để tạo nhóm và phân quyền trên nhóm như sau:

$sudo groupadd truongphong

$sudo usermod -aG truongphong vu.quan

$sudo usermod -aG truongphong van.trieu

$sudo setfacl -m g:hanhchanh: - /data

$sudo setfacl -m g:banhang: - /data

$sudo setfacl -m g:truongphong:r-x /data

+ Chủ sở hữu tập tin mới có quyền xóa hoặc đổi tên tập tin:

$sudo chmod +t /data

Trang 19

1.5 (5%) Cài đặt và cấu hình tường lửa trên Server để cho phép:

- Có thể truy cập các dịch vụ DNS, DHCP, SSH, Web, SAMBA trên Server Các dịch vụ khác KHÔNG cập truy cập được.

+ Khởi động tường lửa firewalld

$sudo systemctl start firewalld

+ Tạo zone mới có tên là tamquoc

$sudo firewall-cmd –permanent new-zone=tamquoc

+ Khởi động lại tường lửa để áp dụng zone mới vừa tạo ra

$sudo systemctl restart firewalld

+ Kiểm tra các rule của zone tamquoc:

Trang 20

$sudo firewall-cmd list-all zone=tamquoc

+ Cho phép các dịch vụ DNS, DHCP, SSH, Web, SAMBA hoạt động trên zone tamquoc

$sudo firewall-cmd permanent zone=daihaitrinh add-service=dns

$sudo firewall-cmd permanent zone=daihaitrinh add-service=dhcp

$sudo firewall-cmd permanent zone=daihaitrinh add-service=ssh

$sudo firewall-cmd permanent zone=daihaitrinh add-service=http

$sudo firewall-cmd permanent zone=daihaitrinh add-service=https

$sudo firewall-cmd permanent zone=daihaitrinh add-service=samba

Trang 21

+ Thêm rule chỉ cho phép máy desktop SSH đến server

$sudo firewall-cmd permanent zone=tamquoc add-rich-rule='rule family=ipv4source address=192.168.1.100/32 port port=22 protocol=tcp accept'

+ Khởi động lại tường lửa, chuyển giao diện mạng sang zone daiahitrinh và kiểm tra các rule

đã thiết lập trên zone

$sudo systemctl restart firewalld

$sudo firewall-cmd permanent zone=daihaitrinh –change interface=enp0s3

$sudo firewall-cmd list-all zone=tamquoc

+ Kiểm tra kết quả

Trang 22

1.6 (5%) Cài đặt và cấu hình dịch vụ DHCP trên Server để cấu hình mạng tự động cho các máy Desktop trong nhánh mạng:

- Địa chỉ IP của desktop: trong dãy 192.168.1.100/24 đến 192.168.1.254/24

- Địa chỉ gateway: 192.168.1.1

- DNS server: 192.168.1.2 và 8.8.8.8

$sudo dnf -y install dhcp-server

Cấu hình DHCP:

+ Mở tập tin để tiến hành cấu hình: $sudo nano /etc/dhcp/dhcpd.conf

+ Nội dung file cấu hình như sau:

+ Khởi động dịch vụ DHCP, cho phép DHCP tự chạy mỗi khi máy khởi động

$sudo systemctl start dhcpd $sudo systemctl enable dhcpd

Trang 23

+ Kiểm tra trạng thái dịch vụ DHCP Server:

$sudo systemctl status dhcpd

1.7 (5%) Cài đặt và cấu hình dịch vụ máy chủ Web trên Server sử dụng Docker Tạo một trang web cho công ty có tên miền lautamquoc.com với nội dung trang chủ giới thiệu về các thành viên trong công ty.

+ Chuẩn bị trang web (trangchu.html) được đặt trong thư mục ~/myweb, với nội dung trangchủ giới thiệu về các thành viên trong công ty

+ Tiến hành tải, chạy và đăng nhập docker

Trang 24

1 Gỡ bỏ PodMan do sẽ đụng độ với Docker:

$sudo dnf -y remove podman runc

2 Cài đặt công cụ yum-utils:

$sudo dnf install -y yum-utils

3 Thêm địa chỉ repo của Docker vào công cụ yum:

https://download.docker.com/linux/centos/docker-ce.repo

4 Cài đặt Docker: $sudo dnf install docker-ce -y

5 Thêm người dùng hiện tại vào nhóm docker:

$sudo usermod -aG docker $USER

6 Login lại vào shell:

Trang 25

$su - $USER

7 Chạy dịch vụ Docker và cho phép Docker khởi động cùng hệ thống:

$sudo systemctl start docker

$sudo systemctl enable docker

8 Đăng nhập vào Docker:

$docker login -u

9 Kiểm tra Docker đã hoạt động tốt chưa:

$docker run hello-world

Trang 26

+ Triển khai dịch vụ web:

Kiểm tra thông tin các image httpd có trên docker hub:

$docker search httpd

Tạo container từ image httpd:

$docker run -d -it -p 8080:80 name lautamquoc httpd

Trang 27

Sao chép thư mục ~/myweb chứa nội dung gioithieu.html vào thư mục gốc của dịch vụ webtrên Docker container

$docker cp myweb/ Stawhat:/usr/local/apache2/htdocs/

+ Trên máy desktop, vào địa chỉ 192.168.1.2:8080/myweb/trangchu.html tiến hành kiểmchứng trang web vừa tạo:

1.8 (5%) Cài đặt và cấu hình dịch vụ SAMBA trên Server Cấu hình chỉ cho phép:

- Thành viên ban giám đốc và trưởng phòng có thể truy cập vào thư mục /data trên Server.

- Tất cả người dùng có thể truy cập vào thư mục cá nhân của họ (/home/<username>) trên Server.

- Trên Desktop tạo ổ cứng ảo nối kết tới dịch vụ SAMBA trên Server.

+ Cài dặt dịch vụ Samba:

$sudo dnf íntall -y samba

Trang 28

+ Tạo thư mục cần chia sẻ và phân quyền:

$sudo mkdir lecturers /data

$sudo chown :lecturers /data

$sudo chown -R 775 /data

+ Cấu hình dịch vụ Samba:

$sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.orig

$sudo nano /etc/samba/smb.conf

#Thêm đoạn cấu hình bên dưới vào cuối tập tin

Trang 29

valid users = @lecturers

+ Thêm người dùng cho dịch vụ Samba:

$sudo smbpasswd -a bi.luu,

#Đặt mật khẩu Samba cho người dung

+ Cấu hình SELINUX cho phép Samba

$sudo setsebool -P samba_export_all_rw on

$sudo setsebool -P samba_enable_home_dirs on

+ Tắt tường lửa:

$sudo systemctl stop firewalld

Trang 30

+Khởi động cho phép Samba tự động thực thi khi khởi động hệ điều hành:

$sudo systemctl start smb

$sudo systemctl enable smb

+ Trên File Explorer của máy Desktop, chọn tính năng “Add a network location” đểnối kết tới Samba server sử dụng địa chỉ \\<IP máy CentOS>\data

1.9 (5%) Cài đặt và cấu hình dịch vụ DNS trên Server để phân giải tên miền

lautamquoc.com

Tên miền: www.lautamquoc.com < > IP: 192.168.1.2 (Server IP) Tên miền: gateway.lautamquoc.com < > IP: 192.168.1.1

+ Cài đặt BIND và các công cụ cần thiết:

$sudo dnf install bind bind-utils -y

+ Cấu hình DNS server:

$sudo nano /etc/named.conf

Trang 31

+ Tạo tập tin cấu hình phân giải xuôi:

$sudo cp /var/named/named.localhost /var/named/forward.lautamquoc

$sudo chgrp named /var/named/forward.lautamquoc

$sudo nano /var/named/forward.lautamquoc

Trang 32

+ Tạo tập tin cấu hình phân giải ngược:

$sudo cp /var/named/forward.lautamquoc /var/named/reverse.lautamquoc

$sudo chgrp named /var/named/reverse.lautamquoc

$sudo nano /var/named/reverse.lautamquoc

Trang 34

1.10 (5%) Sử dụng dịch vụ cron và shell script tự động thực hiện công việc sao lưu dữ liệu mỗi ngày, mỗi tuần, mỗi tháng trên Server như sau:

+ Các thư mục cần sao lưu sao lưu: /home, /data, /etc

+ Nơi lưu dữ liệu sao lưu: /mnt/backup

- Sao lưu mỗi ngày: thực hiện vào lúc 23:59 từ thứ 2 đến thứ 7, dữ liệu sẽ được nén lại

và lưu với tên như sau: backup_<thứ> (ví dụ: backup_monday)

- Sao lưu mỗi tuần: thực hiện vào lúc 23:59 ngày chủ nhật hàng tuần, dữ liệu sẽ đượcnén lại và lưu với tên như sau: backup_week<thứ tự tuần> (ví dụ: backup_week1)

- Sao lưu mỗi tháng: thực hiện vào lúc 23:59 ngày 1 hằng tháng, dữ liệu sẽ được nénlại và lưu với tên backup_month1 nếu là tháng lẻ, backup_month2 nếu là tháng chẵn

+ Tạo file script backup_day

$sudo nano backup_day.sh

+ Tạo file script backup_week

$sudo nano backup_week.sh

Trang 35

+ Tạo file script backup_moth

$sudo nano backup_moth.sh

+ Lên lịch bằng Crontab:

$export EDITOR=nano

Ngày đăng: 20/04/2024, 06:14

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w