66
Khoa CNTT – MH/MĐ……………………………………….. 1 MÔN HỌC/MÔĐUN: Qun TrMng Linux TÀI LIU THC HÀNH STT BÀI HC NI DUNG THC HÀNH NG DNG THC T1 BÀI HC 1 Knăng đạt được Nhn biết HDH Linux và vic cài đặt HDH này. Các chế độ hot động ca HDH Linux Biết cách recovery password root bmt. BÀI TP 01 Tình hung 1 Mô tni dung: Bn là mt nhân viên IT ca công ty LHV, hin ti công ty bạn đang sử dng HDH Windows Server cho toàn bhthng server ca bn. Mt vấn đề đặt ra là để sdng HDH Windows thì công ty bn phi trtin bn quyn, vic thanh tra bn quyn phn mềm đang được các cơ quan chức năng tiến hành và yêu cầu không được sdng phn mm bt hp pháp, nhưng giám đốc ca bn không mun trtin cho vic mua bn quyn HDH Windows, và ông ta yêu cu bn tìm mt HDH hành thay thế HDH Windows. Bạn được biết rng HDH Linux là min phí và bạn đã chọn nó để trin khai cho hthng ca mình. Trước khi bn trin khai hthng bn phải cài đặt được HDH Linux lên các server ca công ty bn. Yêu cu thc hiện: Trước tiên cài đặt HDH Linux bn phải xác định được HDH Linux nào là ổn định, được htrtt và phù hp cho vic trin khai trên các server ng dụng. Được bi ết HDH Linux CentOS ca hãng RedHat là HDH tt hin nay. Yêu cu bn trin khai HDH CentOS cho hthng server ca công ty bn. Hướng dn thc hin “step by step”: 1. Chun bđĩa DVD để cài đặt CentOS và đĩa cài đặt (mua hoc download ti website www.centos.org ) 2. Kim tra cu hình máy (CPU, RAM,NIC,HDD) 3. Tiến hành cài đặt (xem video demo) Cài đặt HDH Linux. Khc phc scbmt password root Tình hung 2 Mô tni dung: Bn là nhân viên IT ca công ty LHV, công ty bn đang viết mt phn mm y tế (phn mềm này được viết bng ngôn ngPHP). Bphn sale(bán hàng) sdng các laptop dùng HDH Windows Vista có bn quyền cài đặt phn mm y tế để demo sn phẩm đến khách hàng( các bnh vin và phòng mạch ), nhưng được biết phn mm này chy trên HDH Windows chậm hơn trên HDH Linux. Để làm cho phn mm ca mình được tối ưu khi demo với khách hàng Project Management yêu cu

FIT - GTTH Quan Tri Mang Linux _version 2

Embed Size (px)

Citation preview

Khoa CNTT – MH/MĐ……………………………………….. 1

MÔN HỌC/MÔĐUN: Quản Trị Mạng Linux

TÀI LIỆU THỰC HÀNH

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

1

BÀI HỌC 1

Kỹ năng đạt được

Nhận biết HDH Linux và việc cài đặt HDH này.

Các chế độ hoạt động của HDH Linux

Biết cách recovery password root bị mất.

BÀI TẬP 01

Tình huống 1

Mô tả nội dung: Bạn là một nhân viên IT của công ty LHV, hiện tại công ty bạn đang sử dụng HDH Windows Server cho toàn bộ hệ thống server của bạn. Một vấn đề đặt ra là để sử dụng HDH Windows thì công ty bạn phải trả tiền bản quyền, việc thanh tra bản quyền phần mềm đang được các cơ quan chức năng tiến hành và yêu cầu không được sử dụng phần mềm bất hợp pháp, nhưng giám đốc của bạn không muốn trả tiền cho việc mua bản quyền HDH Windows, và ông ta yêu cầu bạn tìm một HDH hành thay thế HDH Windows. Bạn được biết rằng HDH Linux là miễn phí và bạn đã chọn nó để triển khai cho hệ thống của mình. Trước khi bạn triển khai hệ thống bạn phải cài đặt được HDH Linux lên các server của công ty bạn.

Yêu cầu thực hiện: Trước tiên cài đặt HDH Linux bạn phải xác định được HDH Linux nào là ổn định, được hỗ trợ tốt và phù hợp cho việc triển khai trên các server ứng dụng. Được biết HDH Linux CentOS của hãng RedHat là HDH tốt hiện nay. Yêu cầu bạn triển khai HDH CentOS cho hệ thống server của công ty bạn.

Hướng dẫn thực hiện “step by step”:

1. Chuẩn bị ổ đĩa DVD để cài đặt CentOS và đĩa cài đặt (mua hoặc download tại website www.centos.org)

2. Kiểm tra cấu hình máy (CPU, RAM,NIC,HDD)

3. Tiến hành cài đặt (xem video demo)

Cài đặt HDH Linux.

Khắc phục sự cố bị mất password root

Tình huống 2

Mô tả nội dung: Bạn là nhân viên IT của công ty LHV, công ty bạn đang viết một phần mềm y tế (phần mềm này được viết bằng ngôn ngữ PHP). Bộ phận sale(bán hàng) sử dụng các laptop dùng HDH Windows Vista có bản quyền cài đặt phần mềm y tế để demo sản phẩm đến khách hàng( các bệnh viện và phòng mạch ), nhưng được biết phần mềm này chạy trên HDH Windows chậm hơn trên HDH Linux. Để làm cho phần mềm của mình được tối ưu khi demo với khách hàng Project Management yêu cầu

Khoa CNTT – MH/MĐ……………………………………….. 2

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

bạn cài đặt HDH Linux (Fedora) lên các laptop của những nhân viên sale mà không làm mất HDH Windows Vista họ đang sử

dụng. Các laptop này có cấu hình cao (CPU core2dual 2.8Ghz, RAM 4GB, HDD 350GB)

Yêu cầu thực hiện: Cài đặt HDH Windows Vista (XP) và Linux (Fedora) trên cùng một máy tính

Gợi ý thực hiện:

1. Backup toàn bộ data trên các máy laptop trên.

2. Dùng chương trình Hiren boot tạo một partion mới (Free) với dung lượng trên 10GB, partion này chúng ta không cần định dạng, khi tạo partion này không được làm ảnh hưởng tới HDH đang sử dụng.

3. Chèn đĩa cài đặt HDH Fedora và tiến hành cài đặt

4. Quá trình cài đặt bắt đầu chúng ta tiến hành bình thường cho đến khi yêu cầu chọn ổ đĩa để cài đặt HDH xuất hiện, chọn “create custom layout”

5. Chọn partion Free và tiến hành phân chia (/boot, /, swap).

6. Chọn HDH sẽ boot mặc định.

7. Tiến hành những thao tác còn lại cho đến khi hoàn tất quá trình cài đặt HDH Linux

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………..

……………………………………………………………………………………………………………………………………………………………….

……………………………………………………………………………………………………………………………………………………………….

……………………………………………………………………………………………………………………………………………………………….

……………………………………………………………………………………………………………………………………………………………….

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….………

2 BÀI TẬP 02

Tình huống 1

Mô tả nội dung: Bạn là IT của công ty LHV , bạn tiếp quản hệ thống server của công ty từ người quản trị trước, nhưng anh ta

Khoa CNTT – MH/MĐ……………………………………….. 3

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

quên không cung cấp cho bạn password root của samba server. Bạn login vào samba server để kiểm tra log của server nhưng bạn không có password root. Làm cách nào bạn có thể login vào samba sever bằng account root.

Yêu cầu thực hiện: Recovery password root của samba server (HDH CentOS)

Hướng dẫn thực hiện “step by step”:

1. Restart lại HDH

2. Khi boot loader menu xuất hiện, nhấn một phím bất kì menu chọn HDH sẽ xuất hiện.

3. Nhấn phím “e” để edit command boot

Khoa CNTT – MH/MĐ……………………………………….. 4

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

4. Thêm số “1” vào cuối dòng lệnh

5. Nhấn Enter để quay lại menu chọn HDH và nhấn “b” để reboot lại HDH, đợi quá trình boot hoàn tất, chúng ta sẽ thấy dấu

nhắc sh-2.05# xuất hiện, lúc này chúng ta đang ở trong chế độ single mode (Runlevel 1). => Đổi password root:

sh-2.05# passwd root

Nhập password mới, nhập confirm password mới

6. Sau khi change xong password => reboot lại HDH sh-2.05#init 6

Tình huống 2

Mô tả nội dung: Máy tính bạn đang sử dụng HDH Linux Fedora, bạn cho môt người nào đó sử dụng máy tính của bạn. Khi anh ta trả lại máy tính cho bạn thì bạn không thể login vào HDH bằng account root. Bạn làm cách nào để lấy lại password root.

Yêu cầu thực hiện: Recovery password root của HDH Fedora

Gợi ý thực hiện:

1. Khởi động lại HDH

2. Khi boot loader menu xuất hiện, nhấn một phím bất kì menu chọn HDH sẽ xuất hiện.

3. Nhấn phím “e” để edit command boot

Khoa CNTT – MH/MĐ……………………………………….. 5

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

4. Thêm số “1” vào cuối dòng lệnh

5. Nhấn Enter để quay lại menu chọn HDH và nhấn “b” để reboot lại HDH ở chế độ level 1 và tiến hành đổi password

6. Reboot lại HDH

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………….

….……………………………………………………………………………………………………………………………………………………………..

….……………………………………………………………………………………………………………………………………………………………..

….……………………………………………………………………………………………………………………………………………………………..

….……………………………………………………………………………………………………………………………………………………………..

….……………………………………………………………………………………………………………………………………………………………..

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….………

3

Kỹ năng đạt được

Quản trị hệ thống tập tin

Các chuẩn chuyển hướng

BÀI TẬP 03

Tình huống 1

Mô tả nội dung: Bạn là người mới làm quen với HDH Linux, trước tiên bạn phải thành thạo việc “Quản trị hệ thống tập tin” trên HDH Linux.

Yêu cầu thực hiện: Nắm vững chức năng và cách sử dụng các lệnh được giới thiệu trong slide bài giảng

Hướng dẫn thực hiện “step by step”:

1. Dựa vào slide bài giảng, thực hành các lệnh đã giới thiệu.

2. Dùng lệnh “man” để tìm trợ giúp khi sử dụng các lệnh trên.

Cú pháp:

#man lenh

Quản trị HDH Linux

Khoa CNTT – MH/MĐ……………………………………….. 6

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Ví dụ:

Tình huống 2

Mô tả tình huống: Bạn là admin của file server. Bạn được yêu cầu gán cho group ketoan chỉ được phép sử dụng tối đa 5GB dung lượng đĩa cứng, cảnh báo ở mức 4,5GB, sau thời gian cảnh báo 8 ngày thì dữ liệu sẽ bị xóa nếu còn vi phạm. Những user khác

Khoa CNTT – MH/MĐ……………………………………….. 7

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

chỉ được phép tối đa 20 file và thư mục, cảnh báo ở mức 15, sau thời gian 10 ngày thì dữ liệu sẽ tự động xóa nếu còn vi phạm.

Yêu cầu thực hiện: Cấu hình quota

Hướng dẫn thực hiện:

Edit file /etc/fstab: #vi /etc/fstab

Cấu hình quota:

1. Tạo file aquota.user trong thư mục /home, dùng để cấu hình xem mỗi người dùng được bao nhiêu không gian trên ổ cứng.

#touch /home/aquota.user

#touch /home/aquota.group

#chmod 600 /home/aquota.*

2. Tạo bản quota

#quotacheck -avugm

3. Phân quota cho user

#edquota –u User

4. Phân quota cho group

#edquota –g Group

5. Gán thời gian cho quota vựơt quá soft limit sẽ bị xóa data

#edquota -t

Khoa CNTT – MH/MĐ……………………………………….. 8

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Tình huống 3

Mô tả nội dung: Bạn là IT của công ty LHV, số lượng nhân viên của LHV hiện tại là 100 người, vì vậy partion lưu trữ data của samba server của không còn đủ dung lượng để đáp ứng như cầu lưu trữ dữ liệu của nhân viên, bạn được yêu cầu tăng kích thước lưu trữ của samba server.

Yêu cầu thực hiện: Add thêm một đĩa cứng vào partion lưu trữ dữ liệu.

Hướng dẫn thực hiện “step by step”:

1. Kiểm tra dung lượng data trên các partion

Nhìn hình trên chúng ta thấy partion /var (/dev/hda2) dùng 99% là partion cần được mở rộng.

2. Gán HDD vào máy tính sau đó kiểm tra các HDD, partion hiện tại và HDD mới gắn vào.

Khoa CNTT – MH/MĐ……………………………………….. 9

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Chúng ta thấy hda là HDD hiện tại chứa OS và các thành phần hệ thống, gốm các partion hda1->hda6, hdb là HDD mà chúng ta vừa thêm vào.

3. Add filesystem đến hdb

Khoa CNTT – MH/MĐ……………………………………….. 10

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Khoa CNTT – MH/MĐ……………………………………….. 11

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

4. Tạo partion mới với cho hdb

W là thực hiện lệnh tạo partion cho hdb, q thoát khỏi lệnh.

5. Kiểm tra partion mới tạo

Partion mới tạo có tên là hdb1

6. Format partion mới với filesystem ext3

7. Tạo điểm mount cho partion vừa tạo

Khoa CNTT – MH/MĐ……………………………………….. 12

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Edit file /etc/fstab để mount vào hệ thống

Đọc file /etc/fstab: #mount –a

Truy cập partion mới /mnt/hdb1

8. Di chuyển data từ /var đến partion mới hdb1 và backup data trên nó

9. Khởi động lại hệ thống ở chế độ single-mode dùng lệnh: #init 1

10. Rename transactions trong /var

sh-2.05b# mv /var/transactions /var/transactions-save 11. Tạo transactions mới để mount partion mới

sh-2.05b# mkdir /var/transactions 12. copy nội dung của /var/transaction-save đến /mnt/hdb1

sh-2.05b# cp -a /var/transactions-save/* /mnt/hdb1 13. Umount /dev/hdb1 : #umount /mnt/hdb1

14. Edit file /etc/fstab với nội dung như sau:

Thực hiện moun6: #mount -a

15. Thoát khỏi chế độ single-mode : #init 6

Khoa CNTT – MH/MĐ……………………………………….. 13

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………….

…..……………………………………………………………………………………………………………………………………………………………

…..……………………………………………………………………………………………………………………………………………………………

…………………………………………………………………………………………………………………………………...

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….…………

4

BÀI HỌC 2

Kỹ năng đạt được

Cấu hình mạng

Quản lí tiến trình

Thao tác với trình soạn thảo vi

BÀI TẬP 04

Tình huống 1

Mô tả nội dung: Bạn là IT của công ty LHV. Các developer thường xuyên remote đến các server test Linux để build sản phẩm, Họ gặp khó khăn trong việc sử dụng lệnh để làm việc. Họ yêu cầu bạn bằng cách nào cho họ remote đến các server test Linux và làm việc với nó bằng giao diện đồ hoạ (Guide mode) để họ dễ dàng làm việc với nó.

Yêu cầu thực hiện: Cấu hình remote bằng VNC.

Hướng dẫn thực hiện “step by step”:

1. Cài đặt VNC server: #yum install vnc-server vnc

2. Tiến hành cấu hình:

Edit file /etc/sysconfig/vncservers

Có thể tạo ra nhiều instance VNC cho các user khác nhau như ví dụ sau:

Sử dụng trình soạn thảo vi để thao tác trên file của Linux

Quản lí các tiến trình

Khoa CNTT – MH/MĐ……………………………………….. 14

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

3. Đặt password cho các user remote bằng VNC:

4. Khởi động VNC server với các tuỳ chọn

5. Chỉnh độ phân giải của màn hình

Edit file ~/.vnc/xstartup theo như sau

Khoa CNTT – MH/MĐ……………………………………….. 15

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

6. Dùng VNC Viewer để kết nối đến các server

Tình huống 2

Mô tả tình huống: Công ty LHV có một chi nhánh ở TP.HCM, hiện tại họ mở thêm một chi nhánh ở Hà Nội. Bạn được công ty LHV thuê làm administrator cho cty LHV. Hiện tại mỗi chi nhánh đều có cho mình một mạng riêng, vì vậy việc chia sẻ data gặp nhiều khó khăn. Bạn được yêu cầu kết nối hai mạng của 2 chi nhánh Hà Nội và Hồ Chí Minh để đáp ứng yêu cầu công việc của công ty cả 2 chi nhánh có thể truy xuất data lẫn nhau. Sở đồ kết nối mạng giữa 2 chi nhánh như hình vẽ.

Dùng máy tính chạy HDH Linux làm Router

Khoa CNTT – MH/MĐ……………………………………….. 16

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Yêu cầu thực hiện: Cấu hình định tuyến trên các Router HÀ NỘI và Router HỒ CHÍ MINH

Gợi ý thực hiện:

Bước 1: Trên mỗi router tiến hành định tuyến cho 3 mạng

Bước 2: Bật chức năng IP FORWARD : echo 1 > /proc/sys/net/ipv4/ip_forward

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………….

…..…………………………………………………………………………………………………………………………………………………………….

Khoa CNTT – MH/MĐ……………………………………….. 17

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….…………

Tình huống 3

Mô tả tình huống: Công ty bạn thuê đặt mail server tại ISP, Giám đốc yêu cầu bạn xem lại log mail xem trong 1h qua có ai gởi mail từ địa chỉ [email protected] đến email của giám đốc không. Bạn dùng ssh để remote đến mail server. Yêu cầu khi bạn thực hiện truy cập ssh đến mail server phải được chứng thực bằng Key và phải mã hoá đường truyền.

Yêu cầu thực hiện: Cấu hình SSH trên Linux chấp nhận các truy cập được chứng thực thông qua key nhằm tăng tính bảo mật.

Gợi ý thực hiện:

A) Trên máy mail server mà chúng ta sẽ truy cập bằng ssh

1. Tạo một cặp key bằng lệnh:

: t là kiểu thuật toán mã hóa

: b là kích thước của khóa

Sau khi tạo ssh keygen trong thư mục /root/.ssh/ sẽ xuất hiện 2 file id_rsa và id_rsa.pub

2. Đổi public key id_rsa.pub trong thư mục home directory của user, ví dụ ở đây là user root: ~/.ssh/ thành authorized_keys

3. Set permission cho authorized_keys là: 600

4. Edit file /etc/ssh/sshd.conf

Cấu hình cho truy cập từ xa qua ssh

Khoa CNTT – MH/MĐ……………………………………….. 18

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys PasswordAuthentication no <-- bỏ chứng thực bằng password

5. Restart lại sshd

B) Trên máy client (máy sẽ remote ssh vào máy mail)

1. Copy file id_rsa trên máy mail server bỏ vào thư mục /root/.ssh/

2. Set permission cho id_rsa là: 600

3. Tiến hành dùng ssh truy cập vào mail server

Đối với máy client là máy windows, chúng ta dùng puty để import key id_rsa vào puty

Khoa CNTT – MH/MĐ……………………………………….. 19

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Sau đó chọn đường dẫn lưu file private key(id_rsa) mà ta đã lưu ở windows client.

Nhập password mà ta đã tạo ra trong quá trình tạo key cho user.

Khoa CNTT – MH/MĐ……………………………………….. 20

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Xuất hiện thông báo import key thành công.Bấm "Save private key" với tên là sshkey.ppk

Khoa CNTT – MH/MĐ……………………………………….. 21

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Mở PuTTY và chuyển tới trường Auth và chọn file sshkey.ppk mà ta đã lưu ở trên

Khoa CNTT – MH/MĐ……………………………………….. 22

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Tiếp theo, ta quay lại trường Session và nhập vào IP của ssh server.Nhập vào user mà ta đã cấu hình chứng thực bằng Keys Authentication.

Khoa CNTT – MH/MĐ……………………………………….. 23

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Chú ý:

+ Nếu tạo ssh key gen trên server thì chúng ta copy private key đến cho client.

+ Nếu tạo ssh key trên client thì chúng ta copy public key đến cho server

+ Quyền hạn của public key là 644 và private là 600

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………….

…..…………………………………………………………………………………………………………………………………………………………….

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….…………

Nhận biết và viết được shell script trên Linux

BÀI TẬP 05

Tình huống 1

Mô tả tình huống: Bạn là quản trị hệ thống linux. Bạn muốn biết hiện tại bạn đang login với user nào, ngày tháng bao nhiêu, số user hiện tại đang login vào hệ thống của bạn.

Yêu cầu thực hiện: Viết một đoạn shell script để tự động hóa quá trình trên.

Hướng dẫn thực hiện: Sau đây là đoạn shell script:

#!/bin/sh

clear #xóa màn hình

echo “Xin chào $USER” # Thông báo user đang chạy shell script

echo “Hôm nay là ngày: ”; date # Cho biết ngày, giờ hiện tại

echo “Số user đang login vào hệ thống: ”; who |wc –l # Đếm số user hiện đang login vào hệ thống

echo “Lịch”

cal # Hiện bản lịch calendar

Khoa CNTT – MH/MĐ……………………………………….. 24

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

exit 0 #Kết thúc shell

Tình huống 2

Mô tả tình huống: Bạn là quản trị hệ thống linux. Bạn được yêu cầu monitor space của HDD, nếu dung space vượt quá dung lượng mà bạn cho phép (ví dụ 90%) thì hệ thống sẽ tự động gởi mail cảnh báo cho admin.

Yêu cầu thực hiện: Viết một shell script để thực hiện quá trình này tự động hóa.

Hướng dẫn thực hiện: Sau đây là shell script

#!/bin/sh #Set dung lượng cho phép, nếu vượt quá dung lượng này sẽ gởi messages cảnh báo. Alert=14 #Email sẽ được hệ thống gởi cảnh báo Email=”[email protected]” df -H |grep -vE 'Filesystem|tmpfs|cdrom' |awk '{print $5 " " $1}'|while read output; do echo $output usep=$(echo $output| awk '{print $1}' | cut -d '%' -f1) partition=$(echo $output| awk '{print $2}') if [ $usep -ge $Alert ]; then echo "Running out of space \"$partition ($usep%)\" on $(hostname) as on $(date)" mail -s "Alert: out of disk space $usep%" $Email fi done

Khoa CNTT – MH/MĐ……………………………………….. 25

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

5

BÀI HỌC 3

Kỹ năng đạt được

Cài đặt và cấu hình DHCP trong Linux

Cài đặt và cấu hình DNS trong Linux

BÀI TẬP 06

Tình huống 1

Mô tả tình huống: Công ty bạn có 100 PC được kết nối mạng nội bộ của công ty, để các PC được kết nối mạng thì mối PC phải có địa chỉ IP. Việc gán địa chỉ IP bằng cách thủ công(đến từng máy cấu hình) rất mất thời gian dễ trùng IP và không tối ưu, Administrator không thể quản lí được việc cấp phát IP. Bạn làm cách nào để gán IP một cách tự động đến 100 PC trong công ty của bạn. Hiện tại công ty dùng HDH Linux cho các server.

Yếu cầu thực hiện: Triển khai dịch vụ cấp phát IP động DHCP server trên HDH Linux.

Hướng dẫn thực hiện “step by step”:

1. Gán địa chỉ IP tĩnh cho máy làm DHCP Server

2. Cài đặt DHCP Server: #yum install dhcp

3. Cấu hình DHCP Server

Tạo file cấu hình dhcpd.conf bằng cách copy file dhcpd.conf. sample trong thư mục

/usr/share/doc/dhcp-<version-number>/dhcpd.conf.sample

#cp /usr/share/doc/dhcp-<version-number>/dhcpd.conf.sample \ /etc/dhcpd.conf

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

Xây dựng hệ thống cấp phát IP động DHCP trên Linux

Khoa CNTT – MH/MĐ……………………………………….. 26

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

ddns-update-style interim;

ignore client-updates;

subnet 192.168.1.0 netmask 255.255.255.0 {

# --- Dãy địa chỉ IP dành riêng cho quá trình boot

range dynamic-bootp 192.168.1.200 192.168.1.254;

# --- Dãy địa chi dùng để cấp phát IP

range 192.168.1.2 192.168.1.100;

# --- default gateway

option routers 192.168.1.1;

option subnet-mask 255.255.255.0;

# --- DNS server

option domain-name-servers 208.67.222.222;

# --- Thời gian cho phép một client được lưu giữ IP

default-lease-time 21600;

max-lease-time 43200;

Khoa CNTT – MH/MĐ……………………………………….. 27

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

# --- Gán địa chỉ IP cho một client cố định dựa vào địa chỉ MAC

host dhcp_test {

hardware ethernet 00:26:B9:00:21:5C;

fixed-address 192.168.1.254;

}

}

Tạo một file dùng để lưu trữ các thông tin mà DHCP server cho client thuê IP

#touch /var/lib/dhcp/dhcpd.leases

Khởi động dịch vụ DHCP server: #/etc/init.d/dhcpd start

Tình huống 2

Mô tả nội dung: Bạn là admin của công ty LHV, công ty có một DHCP server dùng để cung cấp dịch vụ DHCP cho toàn công ty. Hiện tại công ty được chia làm 2 văn phòng với hai lớp mạng khác nhau. Để gán IP cho các client bạn dùng dịch vụ DHCP, nhưng bạn không đủ điều kiện để xây dựng DHCP cho riêng mạng này. Bạn tận dụng DHCP hiện tại của mạng cũ để cung cấp DHCP cho mạng này. Làm cách nào bạn dùng DHCP server đang chạy để cung cấp IP cho mạng mới này. Sơ đồ mạng hiện tại của công ty:

Cấu hình DHCP Relay Agent trên Linux

Khoa CNTT – MH/MĐ……………………………………….. 28

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Yêu cầu thực hiện: Triển khai dịch vụ DHCP Relay Agent

Gợi ý thực hiện:

+ Cấu hình DHCP trên DHCP server cho 2 subnet (10.0.60.0/24 và 172.16.1.0/24)

Khoa CNTT – MH/MĐ……………………………………….. 29

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

+ File cấu hình DHCP server cho 2 subnet như sau:

ddns-update-style interim;

ignore client-updates;

subnet 10.0.60.0 netmask 255.255.255.0 {

range dynamic-bootp 10.0.60.200 10.0.60.254;

range 10.0.60.2 10.0.60.100;

option routers 10.0.60.1;

option subnet-mask 255.255.255.0;

option domain-name-servers 208.67.222.222;

default-lease-time 21600;

max-lease-time 43200;

host dhcp_test {

hardware ethernet 00:26:B9:00:21:5C;

fixed-address 10.0.60.254;

}

}

subnet 172.16.1.0 netmask 255.255.255.0 {

Khoa CNTT – MH/MĐ……………………………………….. 30

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

range dynamic-bootp 172.16.1.200 172.16.1.254;

range 172.16.1.2 172.16.1.100;

option routers 172.16.1.1;

option subnet-mask 255.255.255.0;

option domain-name-servers 208.67.222.222;

default-lease-time 21600;

max-lease-time 43200;

host dhcp_test {

hardware ethernet 00:26:B9:00:21:5C;

fixed-address 172.16.1.254;

}

}

+ Cấu hình cho máy DHCP Relay Agent forward các request của client đến DHCP server

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………….

……………………………………………………………………………………………………………………………………………………………………..

……………………………………………………………………………………………………………………………………………………………………..

……………………………………………………………………………………………………………………………………………………………………..

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….…………

Khoa CNTT – MH/MĐ……………………………………….. 31

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

BÀI TẬP 07

Tình huống 1

Mô tả tình huống: Bạn là Administrator của công ty LHV, công ty mua domain lhv.com.vn. Hiện tại công ty có các server public ra ngoài internet gồm: Web Server có IP address 192.168.1.2 được public với tên www.lhv.com.vn và lhv.com.vn, Mail Server có IP address 192.168.1.3 được public với tên mail.lhv.com.vn, LDAP Server có IP address 192.168.1.4 được public với tên ldap.lhv.com.vn, FTP Server 192.168.1.5 được public với tên ftp.lhv.com.vn , và một server dùng cho các dịch vụ khác có tên Data server 192.168.1.6 dùng public các svn, bugzilla, twiki, web testing. Làm cách nào cho các user khi truy cập đến các dịch vụ bằng các tên như trên.

Yếu cầu thực hiện: Triển khai DNS server phân giải tên miền lhv.com.vn để phân giải tên miền cho các dịch vụ trên, DNS server có IP address 192.168.1.1

Hướng dẫn thực hiện “step by step”:

1. Gán IP tĩnh cho DNS server

2. Edit file /etc/resolve.conf trỏ địa chỉ IP của servername về IP của máy (192.168.1.1)

3. Tiến hành cấu hình DNS server: Cài đặt BIND, Caching-nameserver, bind-utils

#yum install bind caching-nameserver bind-utils

Cấu hình DNS:

Bước 1: Tạo file cấu hình named.conf nằm trong /etc

# cp /etc/named.rfc1912.zones /etc/named.conf

Edit file named.conf, thêm vào các thông tin như sau:

options {

Xây dựng hệ thống phân giải tên miền DNS Server trên Linux

Khoa CNTT – MH/MĐ……………………………………….. 32

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

directory "/var/named/";

};

zone “lhv.com.vn" IN{

type master;

file “db.lhv.com.vn";

};

zone "1.168.192.in-addr.arpa" IN {

type master;

file " db.192.168.1";

};

Lưu file named.conf và gán permisson

#chown root:named /etc/named.conf

=============================================

Bước 2: Tiếp theo ta tạo hai file cho quá trình phân giải DNS

Khoa CNTT – MH/MĐ……………………………………….. 33

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Tạo hai file “db.lhv.com.vn” và “db.192.168.1” trong thư mục /var/named

Nội dung file “db.lhv.com.vn”

@ IN SOA dns1.lhv.com.vn. admin.mail.lhv.com.vn. (

2010070704 ; serial

86400 ; refresh

7200 ; retry

2592000 ; expire

345600 ) ; TTL

; Name Server (NS) records.

NS dns1.lhv.com.vn.

; Mail Exchange (MX) records.

MX 0 mail.lhv.com.vn.

; Address (A) records.

dns1 A 192.168.1.1

www A 192.168.1.2

Khoa CNTT – MH/MĐ……………………………………….. 34

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

mail A 192.168.1.3

ldap A 192.168.1.4

ftp A 192.168.1.5

Data A 192.168.1.6

; Aliases in Canonical Name (CNAME) records.

svn CNAME data

bugzilla CNAME data

twiki CNAME data

Web CNAME data

Nội dung file “db.192.168.1”

@ IN SOA dns1.lhv.com.vn. admin.mail.lhv.com.vn. (

2010070704 ; serial

86400 ; refresh

7200 ; retry

2592000 ; expire

345600 ) ; TTL

; Name Server (NS) records.

Khoa CNTT – MH/MĐ……………………………………….. 35

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

NS dns1.lhv.com.vn.

; Addresses Point to Canonical Names (PTR) for Reverse lookups

1 PTR dns1.lhv.com.vn.

2 PTR www.lhv.com.vn.

3 PTR mail.lhv.com.vn.

4 PTR ldap.lhv.com.vn.

5 PTR ftp.lhv.com.vn.

6 PTR svn.lhv.com.vn.

6 PTR bugzilla.lhv.com.vn.

6 PTR twiki.lhv.com.vn.

6 PTR web.lhv.com.vn.

Lưu 2 file vừa tạo

Gán quyền cho thư mục /var/named

#chown named:named /var/named

Quá trình cấu hình DNS server đã hoàn tất

Khởi động DNS server:

#/etc/init.d/named start|restart|stop

Khoa CNTT – MH/MĐ……………………………………….. 36

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Kiểm tra tình trạng của DNS

#service named status

Tình huống 2

Mô tả tính huống: Công ty bạn vừa mua thêm một domain có tên luhoanviet.com.vn để phân giải thêm cho các dịch vụ đang chạy.

Yếu cầu thực hiện: Triển khai thêm một tên miền mới trên DNS server hiện tại dùng để phân giải cho các dịch vụ đang chạy với các tên tương ứng như Tình huống 1.

Gợi ý thực hiện:

1. Thêm zone “luhoanviet.com.vn” vào file /etc/named.conf

2. Tạo 2 file phân giải từ tên sang IP và từ IP sang tên

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………….

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….…………

Khoa CNTT – MH/MĐ……………………………………….. 37

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

BÀI HỌC 4

Kỹ năng đạt được

Cài đặt và cấu hình Samba và NFS

BÀI TẬP 08

Mô tả tình huống: Công ty bạn dùng server Linux (mail, web, ftp,….), các client dùng windows có bản quyền. Bạn được yêu cầu dựng một file server cho công ty để mọi người có thể lưu data phục vụ cho công việc. Làm cách nào để bạn dựng một file server chia sẻ data giữa windows và Linux.

Yêu cầu thực hiện: Cài đặt và cấu hình file server với dịch vụ samba

Hướng dẫn thực hiện “step by step”:

1. Cài đặt samba: #yum install samba

2. Disable selinux và iptables

+ Với selinux edit file /etc/selinux/config đổi dòng SELINUX=enforcing thành SELINUX=disabled

+ Với iptables #/etc/init.d/iptables stop

3. Edit file /etc/samba/smb.conf theo nội dung sau:

Xây dựng hệ thống chia sẻ file giữa Linux và Windows, Linux với Linux

Xây dựng hệ thống đồng bộ dữ

Khoa CNTT – MH/MĐ……………………………………….. 38

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

liệu NFS

Khoa CNTT – MH/MĐ……………………………………….. 39

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

4. Tạo thư mục chia sẻ

#mkdir /data

#chmod 777 /data

5. Tạo Linux user và add user này thành samba user

6. Khởi động samba: #/etc/init.d/smb start

7. Quản lí samba với SWAT

Cài đặt SWAT: #yum install samba-swat

Cấu hình SWAT: Edit file /etc/xinetd.d/swat như sau

Khởi động swat: #/etc/init.d/xinetd start

Dùng browse kết nối đến Samba server: http://ip:901

Khoa CNTT – MH/MĐ……………………………………….. 40

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Tình huống 2

Mô tả tình huống: Hiện tại công ty bạn có hai server dành cho các developer dùng để build sản phẩm web service. Server thứ nhất được dùng để sync dữ liệu từ chi nhánh của công cty về cho các team làm việc tại văn phòng chính, server này các developer không có bất kì quyền truy cập nào vào nó. Server thứ hai các developer có quyền truy cập để lấy dữ liệu được sync từ server thứ nhất. Làm cách nào bạn có thể đồng bộ dữ liệu được sync từ chi nhánh về server thứ nhất đến server thứ hai để cho các developer có thể đảm bảo công việc của mình.

Yêu cầu thực hiện: Triển khai NFS trên hai server trên. Server thứ nhất là NFS server, server thứ hai là NFS client

Gợi ý thực hiện:

1. Cài đặt NFS trên server thứ nhất: #yum install system-config-nfs

2. Tạo thư mục dùng để lưu trữ dữ liệu được sync từ chi nhánh và chia sẻ dữ liệu với server thứ hai: #mkdir /mnt/data

3. Cấu hình NFS Server: Edit file /etc/exports với nội dung như sau: /mnt/data IP_client(rw,sync) 4. Export thư mục share: #export –a

5. Khởi động các dịch vụ NFS server: nfs, nfslock, portmap

6. Kiểm tra hoạt động NFS: #rpcinfo –p localhost

7. Cài đặt NFS trên server thứ hai: #yum install system-config-nfs

8. Tạo thư mục dùng để mount thư mục data của server thứ nhất: #mkdir /mnt/data

9. Cấu hình NFS Client: Edit file /etc/fstab và thêm dòng sau vào cuối file

IP_NFS_Server:/data /mnt/share nfs soft 0 0

10. Thực hiện mount thư mục chia sẻ data: #mount –a hoặc #mount –t nfs IP_NFS_Server:/data/mnt/share

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………….

…..……………………………………………………………………………………………………………………………………………………………

………………………………………………………………………………………………………………………………………………………………..

………………………………………………………………………………………………………………………………………………………………..

Khoa CNTT – MH/MĐ……………………………………….. 41

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

BÀI HỌC 5

Kỹ năng đạt được

Cài đặt và cấu hình Apache Web Server

Cài đặt và cấu hình VSFTP FTP Server

...

BÀI TẬP 09

Tình huống 1

Mô tả tình huống: Công ty bạn muốn dùng web để quảng bá hình ảnh của công ty ra bên ngoài. Giám đốc yêu cầu bạn setup một web server trên Linux để public website này. Tên Website public là www.lhv.com.vn

Yêu cầu thực hiện: Cài đặt và cấu hình Apache web server .

Hướng dẫn thực hiện “step by step”:

1. Cài đặt apache httpd:

#yum install httpd

2. Cấu hình apache Web server

Bước 1: Edit file cấu hình httpd.conf nằm trong thư mục /etc/httpd/conf/ theo như sau:

Listen 192.168.1.2:80 #địa chỉ IP của card mạng sẽ lắng nghe các request

ServerName www.lhv.com.vn:80 #tên FQDN hoặc địa chỉ IP của máy

ServerAdmin [email protected]

DirectoryIndex file index của website

Bước 2: Copy source website vào thư mục /var/www/html/ và gán permission cho thư mục website với quyền 755 và thuộc sở hữu của apache

#chmod –R 755 website

#chown –R apache:apache website

3. Khởi động apache: #/etc/init.d/httpd start

Triển khai Web Server Apache trên Linux

Khoa CNTT – MH/MĐ……………………………………….. 42

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Tình huống 2

Mô tả tình huống: Công ty bạn vừa mua thêm một domain luhoanviet.com.vn, giám đốc yêu cầu bạn public website của công ty với cả 2 tên mới và cũ (www.lhv.com.vn, www.luhoanviet.com.vn )

Yêu cầu thực hiện: Sử dụng chức năng VirtualHost để cấu hình website public với 2 domain trên

Gợi ý thực hiện: Dựa vào slide bài giảng cấu hình VirtualHost

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………….

Hosting nhiều website trên một web server

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….…………

BÀI TẬP 10

Tình huống 1

Mô tả tình huống: Công ty bạn hiện tại đang có hệ thống file server nội bộ lưu trữ các sản phẩm phần mềm của công ty. Công ty muốn public các sản phẩm ra ngoài cho mọi người sử dụng để quảng bá về sản phẩm của mình, một yêu cầu đặt ra là bạn public file server này ra ngoài internet cho mọi người download các sản phẩm của công ty.

Yêu cầu thực hiện: Triển khai FTP Server trên Linux với phần mềm VsFTPD

Hướng dẫn thực hiện “step by step”:

Khoa CNTT – MH/MĐ……………………………………….. 43

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

1. Cài đặt VsFTPD: #yum install vsftpd

2. Cấu hình VsFTPD:

Edit file /etc/vsftpd/vsftpd.conf như sau:

# Cho phép anonymous được phép truy cập FTP Server

anon_anonymous=YES

# Thay đổi thư mục gốc mặc định của FTP Server thành /data/ftp

anon_root=/data/ftp

Restart vsftpd: /etc/init.d/vsftpd start

Tình huống 2

Mô tả tình huống: Công ty bạn có một file server dùng để lưu trữ các thông tin nội bộ, chỉ cho phép các user là nhân viên của công ty access để lấy dữ liệu. Công ty muốn public file Server này ra internet để cho các user sale có thể lấy tài liệu phục vụ cho công việc.

Yêu cầu thực hiện: Cấu hình FTP Server VsFTPD giới hạn truy cập, chỉ những user có tài khoản mới có thể access để lấy data

Gợi ý thực hiện:

1. Thay đổi file cấu hình

anon_anonymous=NO

local_enable=YES

2. Tạo group để add FTP Users #groupadd ftp-users 3. Tạo thư mục chia sẻ data #mkdir /data/ftp-docs #chmod 750 /data/ftp-docs #chown root:ftp-users /data/ftp-docs

Khoa CNTT – MH/MĐ……………………………………….. 44

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

4. Tạo và add các users vào trong group ftp-users #useradd –g group ftp-users –d /data/ftp-docs user1 #passwd user1 5. Thay đổi quyền hạn đối với user home directory vừa mới tạo #chown root:ftp-users /data/ftp-docs/* #chmod 750 /data/ftp-docs/* 6. Restart vsftpd #/etc/init.d/vsftpd restart

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………….

..………………………………………………………………………………………………………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………….

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….…………

BÀI HỌC 6

Kỹ năng đạt được

Nắm vững các giao thức, protocol IMAP, POP3, SMTP.

BÀI TẬP 11

Tình huống 1

Mô tả tình huống: Công ty bạn thường xuyên giao dịch với khách hàng qua email. Hiện tại các giao dịch của công ty đều dùng yahoo hoặc gmail vì vậy rất khó để quản lí và giám sát các email đến/đi của các nhân viên. Bạn được yêu cầu triển khai một mail server cho công ty với domain lhv.com.vn

Yêu cầu thực hiện: Triển khai mail server trên Linux dùng sendmail + dovecot

Triển khai và quản trị mail server với sendmail + dovecot

Khoa CNTT – MH/MĐ……………………………………….. 45

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Phân biệt mail gateway, mail host, mail server, mail client

Hiểu được spam mail và cách ngăn chặn spam mail.

Hướng dẫn thực hiện “step by step”:

1. Triển khai DNS server với MX record mail.lhv.com.vn 2. Cài đặt và cấu hình sendmail

Bước 1: Cài đặt sendmail và các package cần thiết: #yum install sendmail sendmail-cf Cài đặt chương trình m4: #yum install m4 Bước 2: Edit file /etc/mail/sendmail.mc theo như sau: Từ: DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl FEATURE(`accept_unresolvable_domains')dnl Thành: dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl dnl FEATURE(`accept_unresolvable_domains')dnl Save và exit việc edit file sendmail.mc Bước 3: Khởi tạo file sendmail.cf: #m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

Khoa CNTT – MH/MĐ……………………………………….. 46

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Bước 4: Edit file database /etc/mail/access như sau:

192.168.1.0 RELAY #Địa chỉ lớp mạng lhv.com.vn RELAY Cập nhập database cho file access.db: #makemap hash access.db < access Bước 5: Cài đặt và cấu hình POP cho mail server: #yum install dovecot Bước 6: Edit file /etc/dovecot.conf Từ: #protocols = imap imaps pop3 pop3s Thành: protocols = imap imaps pop3 pop3s Save và exit Bước 7: Restart sendmail và dovecot #/etc/init.d/sendmail start

Khoa CNTT – MH/MĐ……………………………………….. 47

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

#/etc/init.d/dovecot start Kiểm tra mail server có mở các port 25 và 110 #netstat –na|grep tcp

Bước 8: Tạo user và tiến hành dùng OutLook Express, MS OutLook hoặc Thunderbird để kiểm tra việc gởi mail qua lại giữa các user: #useradd user1 #passwd user1 #useradd user2 #passwd user2

Tình huống 2

Mô tả tình huống: Triển khai thêm một mail server với một domain khác ispace.com.vn

Yêu cầu thực hiện: Triển khai thêm một mail server trên Linux dùng sendmail với domain ispace.com.vn

Gợi ý thực hiện: Thực hiện tương tự như tình huống 1

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….…………

Khoa CNTT – MH/MĐ……………………………………….. 48

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

BÀI TẬP 11

Tình huống 1 Mô tả tình huống: Bạn là admin của công ty LHV, bạn được yêu cầu triển khai mail server cho công ty. Mail server bạn sẽ triển khai phải đảm bảo yêu cầu sau: Dễ cài đặt và cấu hình có thể kết hợp tốt với database hoặc LDAP, các email phải được lưu trữ ở mailbox trên mail server.

Yêu cầu thực hiện: Triển khai hệ thống mail server dùng postfix + Cyrus-IMAP trên Linux

Hướng dẫn thực hiện “step by step”:

Bước 1: Cài đặt Postfix, cyrus-imapd, cyrus-sasl

#yum install postfix cyrus-imapd cyrus-sasl

Bước 2: Cấu hình postfix như sau: Edit file /etc/postfix/main.cf

myhostname = mail.lhv.com.vn mydomain = lhv.com.vn inet_interfaces = $myhostname, localhost mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain mynetworks = 192.168.1.0/24, 127.0.0.0/8 mailbox_transport = cyrus

Start postfix: #/etc/init.d/postfix start

Triển khai và quản trị mail server với Postfix + IMAP

Khoa CNTT – MH/MĐ……………………………………….. 49

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Bước 3: Cấu hình cyrus-imapd như sau: Edit file /etc/imapd.conf

configdirectory: /var/lib/imap

partition-default: /var/spool/imap

admins: cyrus #Account admin quản trị imap (tạo mailbox, xoá mailbox,…)

sievedir: /var/lib/imap/sieve

sendmail: /usr/sbin/sendmail

hashimapspool: true

sasl_pwcheck_method: saslauthd

sasl_mech_list: PLAIN

tls_cert_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem #Certificate imap được tạo mặc định khi cài cyrus-sasl

tls_key_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem #Copy các certificate từ /etc/pki/tls/certs

tls_ca_file: /etc/pki/tls/certs/ca-bundle.crt #Chúng ta sẽ tạo lại các certificate này

Bước 4: Tạo certificate cho tổ chức. Tại thư mục /etc/pki/tls/certs xoá 2 file cyrus-imapd.pem, ca-bundle.crt và tạo lại 2 file mới. Tại thư mục /etc/pki/tls/certs chạy lệnh make

#make cyrus-imapd.pem

#make ca-bundle.crt

#chmod 644 *

Bước 5: Edit file /etc/sasl2/smtpd.conf với nội dung như sau:

pwcheck_method: saslauthd

mech_list: PLAIN LOGIN

Khoa CNTT – MH/MĐ……………………………………….. 50

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Bước 6: Tạo các user Linux account

#useradd username

#passwd username

#passwd cyrus #Account của admin cyrus-imapd

Start cyrus-imapd: #/etc/init.d/cyrus-imapd start

Bước 7: Add user Linux account đến sasl database

#saslpasswd2 –c username (Password phải trùng với password của user Linux account)

Bước 8: Tạo mailbox

#su cyrus

$cyradm localhost IMAP Password: (enter password) >cm user.username >lm #Liệt kê các mailbox >quit $exit

Bước 9: Test: Dùng thunderbird setup email client trong quá trình cài đặt chọn IMAP port 993

Bước 10: Xoá mailbox

>setaclmailbox user.username cyrus c

>deletemailbox user.username

Khoa CNTT – MH/MĐ……………………………………….. 51

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Tình huống 2

Mô tả tình huống: triển khai mail server như tình huống 1 với domain ispace.edu.vn

Yêu cầu thực hiện: cài đặt và cấu hình mail server trên Linux với Postfix + Cyrus-IMAP

Gợi ý thực hiện: dựa vào tình huống 1 sinh viên thực hiện triển khai mail server theo yêu cầu trên

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….…………

BÀI HỌC 7

Kỹ năng đạt được

Hiểu được proxy và filewall.

Cấu hình Linux proxy server(squid) và Linux firewall (iptables)

Nắm vững cơ chế hoạt động của iptables

BÀI TẬP 12

Tình huống 1

Mô tả tình huống: Bạn là nhân viên IT của công ty LHV, công ty bạn thuê một đường truyền ADSL, để phục vụ cho công việc, công ty không giới hạn truy cập internet với các nhân viên. Các nhân viên của công ty phàn nàn rằng việc truy cập internet từ mạng nội bộ quá chậm gây khó khăn cho công việc của họ. bạn được yêu cầu cải thiện tốc độ truy cập internet của công ty mà không được thuê thêm đường truyền.

Yêu cầu thực hiện: triển khai proxy caching server trên Linux với phần mềm squid

Hướng dẫn thực hiện “step by step”:

Bước 1: Cài đặt squid

#yum install squid

Bước 2: Cấu hình squid, edit file /etc/squid/squid.conf theo nội dung thứ tự như sau:

Triển khai hệ thống proxy

Triển khai hệ thống caching server

Khoa CNTT – MH/MĐ……………………………………….. 52

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

#Các tùy chọn bổ sung: Nếu bạn muốn tất cả các user trong mạng local của bạn đều phải xác thực username/password

#Tiến hành các bước sau

# Tạo username và password, bước này chúng ta tạo ngoài command line

################command tạo username/passwd##########

#############################################

# Thêm vào phần auth_param của file cấu hình squid.conf như sau:

auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd

acl ncsa_users proxy_auth REQUIRED

http_access allow ncsa_users

#############################################

#Cấu hình hệ thống cho squid

visible_hostname hvtin

http_port 172.16.1.1:8080

cache_dir ufs /var/spool/squid 100 16 256

cache_mem 64 MB

#########################

#Tạo các rules cho squid

#Các rule được tạo mặc định khi cài squid

Khoa CNTT – MH/MĐ……………………………………….. 53

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

#Recommended minimum configuration:

acl all src 0.0.0.0/0.0.0.0

acl manager proto cache_object

acl localhost src 127.0.0.1/255.255.255.255

acl to_localhost dst 127.0.0.0/8

acl SSL_ports port 443

acl Safe_ports port 80 # http

acl Safe_ports port 21 # ftp

acl Safe_ports port 443 # https

acl Safe_ports port 70 # gopher

acl Safe_ports port 210 # wais

acl Safe_ports port 1025-65535 # unregistered ports

acl Safe_ports port 280 # http-mgmt

acl Safe_ports port 488 # gss-http

acl Safe_ports port 591 # filemaker

acl Safe_ports port 777 # multiling http

acl CONNECT method CONNECT

#Recommended minimum configuration:

# Only allow cachemgr access from localhost

http_access allow manager localhost

http_access deny manager

# Deny requests to unknown ports

http_access deny !Safe_ports

Khoa CNTT – MH/MĐ……………………………………….. 54

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

# Deny CONNECT to other than SSL ports

http_access deny CONNECT !SSL_ports

# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS

acl our_networks src 172.16.1.0/24

http_access allow our_networks

#####################################################

# Các tùy chọn bổ sung: Nếu công ty bạn có chình sách cấm truy cập internet trong thời gian làm việc thì set rule sau:

#cấm tất cả các truy cập internet từ trong internal vào tất cả các ngày trong tuần, chỉ cho phép truy cập từ 11h30 tới 13:00

acl free_time time 11:30-13:00

http_access allow free_time

# Hoặc nếu muốn cấm tất cả các truy cấp trong giờ làm việc từ thứ 2 tới thứ 6

acl bussiness_time time M T W H F 11:30-13:00

http_access allow bussiness_time

#####################################################

# And finally deny all other access to this proxy

http_access allow localhost

http_access deny all

Bước 3: Tạo thư mục cache cho squid

Khoa CNTT – MH/MĐ……………………………………….. 55

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

#squid –z

Bước 4: Chạy squid ở chế độ debug-mod

#squid –NCd1

Bước 5: Restart squid

#service squid start|stop|restart

Bước 6: Cấu hình client sử dụng proxy

Tình huống 2

Mô tả tình huống: Nhằm tận dụng hệ thống mạng đã có sẵn và tối ưu hoá băng thông, bạn được yêu cầu cài đặt proxy caching server trên Gateway server của network của bạn.

Yếu cầu thực hiện: Triển khai proxy caching server trên Gateway server

Gợi ý thực hiện:

Bước 1: Dựng Gateway server như là một router kết nối internal và external

Bước 2: Dựa vào Tình huống 1 setup proxy caching server trên Gateway

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………..

……………………………………………………………………………………………………………………………………………………………………

……………………………………………………………………………………………………………………………………………………………………

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….…………

Khoa CNTT – MH/MĐ……………………………………….. 56

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

BÀI TẬP 13

Tình huống 1

Mô tả tình huống: Bạn là IT của công ty LHV, sau khi bạn triển khai hệ thống proxy caching server. Ban lãnh đạo cty muốn kiểm soát tất cả các truy cập internet của nhân viên đều phải đi qua proxy và nhằm ngăn chặn việc nhân viên truy cập các website không mong muốn. Với mô hình như sau:

Triển khai hệ thống proxy transparent

Khoa CNTT – MH/MĐ……………………………………….. 57

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Yêu cầu thực hiện: Triển khai hệ thống proxy transparent trên Gateway

Gợi ý thực hiện:

Bước 1: Cấu hình hệ thống như là router

+ Enable package forwarding: #echo 1 > /proc/sys/net/ipv4/ip_forward

+ Hoặc edit file /etc/sysctl.conf với nội dung như sau:

net.ipv4.ip_forward = 0

Thành

net.ipv4.ip_forward = 1

+ Cấu hình firewall forward tất cả các http request đến squid server port 3128 iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to ip_lan:3128 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128

Bước 2: Cấu hình hệ thống squid như Tình huống 1 bài tập 12

Bước 3: Khởi động squid

Bước 4: Test: Cấu hình browse dùng proxy và không dùng proxy

Sinh viên ghi tóm tắt quá trình thực hiện:…………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

.………………………………………………………………………………………………………………………………………………………………….

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….…………

Khoa CNTT – MH/MĐ……………………………………….. 58

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

BÀI TẬP 14

Tình huống 1

Mô tả tình huống: Bạn là IT của cty LHV, nhằm để đảm bảo các yêu cầu bảo mật cho hệ thông bạn được yêu cầu triển khai hệ thống firewall trên hệ thống của bạn. Hệ thống firewall được yêu cầu mở các dịch vụ như sau:

+ Từ LAN ra INTERNET: * Chấp nhận truy cập http, https, ftp, mail (smtp, imap), DNS

+ Từ INTERNET vào DMZ: * Chấp nhận truy cập http, https, ftp, mail (smtp, imap), DNS

+ Từ LAN vào DMZ: * Chấp nhận truy cập http, https, ftp, mail (smtp, imap), DNS

Mô hình như sau:

Triển khai hệ thống firewall trên Linux dùng iptables

Khoa CNTT – MH/MĐ……………………………………….. 59

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Yêu cầu thực hiện: Triển khai hệ thống firewall dùng IPTABLES trên Gateway

Hướng dẫn thực hiện “step by step”:

Có 2 cách để viết các rule cho iptables:

+ Cách 1: Viết các rule trực tiếp trên dấu nhắc shell (command line), cách này ít được dùng.

+ Cách 2: Viết một shell script, cách này thường được dùng.

Ở đây chúng ta sẽ viết một shell script cho iptables

Viết một shell script cho iptables như sau: Đặt tên file shell script là fw.sh, nội dung file fw.sh như sau:

#Xóa các rule mặc định

iptables –F INPUT

iptables –F OUTPUT

iptables –F FORWARD

#Tạo các rule mặc định (Tùy thuộc vào hệ thống của mình mà có rule mặc định phù hợp)

iptables –P INPUT DROP

iptables –P OUTPUT DROP

iptables –P FORWARD DROP

#Chấp nhận cho WAN và LAN truy cập vùng DMZ

# Forward traffic giữa DMZ và LAN iptables -A FORWARD -i eth2 -o eth1 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT iptables -A FORWARD -i eth1 -o eth2 -m state --state ESTABLISHED,RELATED -j ACCEPT # forward traffic giữa DMZ và WAN (Chấp nhận các truy cập từ WAN và DMZ, và ngựơc lại) iptables -A FORWARD -i eth1 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A FORWARD -i eth0 -o eth1 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

Khoa CNTT – MH/MĐ……………………………………….. 60

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

# NAT port 25 từ ip public 202.2.54.1 đến DMZ server có IP 192.168.2.2 iptables -t nat -A PREROUTING -p tcp -i eth0 -d 202.54.1.1 --dport 25 -j DNAT --to-destination 192.168.2.2 # NAT port 80 từ ip public 202.2.54.1 đến DMZ server có IP 192.168.2.3 iptables -t nat -A PREROUTING -p tcp -i eth0 -d 202.54.1.1 --dport 80 -j DNAT --to-destination 192.168.2.3 # NAT port 443 từ ip public 202.2.54.1 đến DMZ server có IP 192.168.2.4 iptables -t nat -A PREROUTING -p tcp -i eth0 -d 202.54.1.1 --dport 443 -j DNAT --to-destination 192.168.2.4 #Kết thúc quá trình cho phép các gói tin di vào DMZ từ LAN và WAN

#Cho phép LAN ra ngoài internet

Tình huống 2

Mô tả tình huống: Xây dựng các rule cho các dịch vụ (rule tutorial). Các rule này được triển khai trên local.

RULE cho phép icmp echo-request và icmp echo-replay

cho phép ping từ máy firewall

iptables –A OUTPUT –p icmp -- icmp-type echo-request –j ACCEPT

iptables –A INPUT –p icmp -- icmp-type echo-reply –j ACCEPT

cho phép ping từ client vào firewall

iptables –A INPUT –p icmp --icmp-type echo-request –j ACCEPT

Iptables –A OUTPUT –p icmp --icmp-type echo-reply –j ACCEPT

RULE cho dịch vụ HTTP, HTTPS và FTP

iptables –A OUTPUT –o eth0 –m state --state ESTABLISHED, RELATED –j ACCEPT

iptables –A INPUT –p tcp –i eht0 --dport 80 –sport 1024:65535 –m state --state NEW –j ACCEPT

iptables –A INPUT –p tcp –i eht0 --dport 443 –sport 1024:65535 –m state --state NEW –j ACCEPT

iptables –A INPUT –p tcp –i eht0 --dport 20 –sport 1024:65535 –m state --state NEW –j ACCEPT

Khoa CNTT – MH/MĐ……………………………………….. 61

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

iptables –A INPUT –p tcp –i eht0 --dport 21 –sport 1024:65535 –m state --state NEW –j ACCEPT

RULE cho dịch vụ ssh

iptables –A OUTPUT –o eth0 –m state --state ESTABLISHED, RELATED –j ACCEPT

iptables –A INPUT –p tcp –i eht0 --dport 22 --sport 1024:65535 –m state --state NEW –j ACCEPT

RULE cho dịch vụ SMTP, POP3, IMAP

RULE cho dịch vụ DNS (Cho phép truy xuất DNS đến firewall)

iptables –A OUTPUT –p udp –o eth0 --dport 53 --sport 1024:65535 –j ACCEPT

iptables –A INPUT –p udp –i eth0 --dport 53 --sport 1024:65535 –j ACCEPT

RULE cho dịch vụ DHCP

RULE cho dịch vụ

Tình huống 3

Mô tả tình huống: Công ty ABC có hệ thống mạng như sau

Khoa CNTT – MH/MĐ……………………………………….. 62

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

Các user trong mạng LAN đều truy cập được internet .

Yêu cầu thực hiện: Dùng firewall iptables triển khai các rule trên firewall theo các yêu cầu

+ Cho phép tất cả các packet đi vào loopback với tất cả các protocol

+ Cho phép các gói tin đi vào firewall chỉ với icmp protocol

Khoa CNTT – MH/MĐ……………………………………….. 63

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

+ Cho phép các packet đi vào eth1 có địa chỉ nguồn là địa chỉ của LAN

+ Cho phép các packet ra từ eth1 có địa chỉ đích là địa chỉ của LAN

+ Thực hiện NAT bằng cách đổi địa chỉ nguồn của gói tin trước khi định tuyến, đi ra từ eth0 với bất kỳ địa chỉ nào khác địa chỉ của LAN + Cho phép các gói tin đi qua firewall có địa chỉ nguồn hoặc địa chỉ đích là địa chỉ của LAN

Gợi ý thực hiện:

Trên firewall chỉ triển khai iptables

Tạo file firewall.sh, firewall có nội dung như sau:

#!/bin/sh ######### Các giá trị khởi tạo INTERNAL_LAN="172.16.1.0/24" # Địa chỉ mạng LAN INTERNAL_LAN_INTERFACE="eth1" # Interface nối đến mạng LAN INTERNAL_LAN_INTERFACE_ADDR="172.16.1.100" ##Địa chỉ int eth1 EXTERNAL_INTERFACE="eth0" ## Interface public EXTERNAL_INTERFACE_ADDR="192.168.1.100" ## Địa chỉ eth0 ############################################### iptables -F FORWARD ## Xóa các luật của FORWARD chain iptables -F INPUT ## Xóa các luật của INPUT chain iptables -F OUTPUT ## Xóa các luật của OUTPUT chain iptables -P FORWARD DROP ## Mặc định FORWARD chain là DROP iptables -P OUPUT ACCEPT ## Mặc định OUTPUT chain là ACCEPT iptables -P INPUT DROP ## Mặc định INPUT chain là DROP ###############################################

Khoa CNTT – MH/MĐ……………………………………….. 64

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

## Cho phép tất cả các packet đi vào loopback với tất cả các protocol iptables -A INPUT -i lo -p all -j ACCEPT ## Cho phép các gói tin đi vào firewall chỉ với icmp protocol iptables -A INPUT -p icmp -j ACCEPT ## Cho phép các packet đi vào eth1 có địa chỉ nguồn là địa chỉ của LAN iptables -A INPUT -i $INTERNAL_LAN_INTERFACE -s $INTERNAL_LAN -j ACCEPT # Cho phép các packet ra từ eth1 có địa chỉ đích là địa chỉ của LAN iptables -A OUTPUT -o $INTERNAL_LAN_INTERFACE -d $INTERNAL_LAN -j ACCEPT # Thực hiện NAT bằng cách đổi địa chỉ nguồn của gói tin trước khi định tuyến,đi ra từ eth0 với bất kỳ địa chỉ nào khác địa chỉ của LAN iptables -t nat -A POSTROUTING -o $EXTERNAL_LAN_INTERFACE -j MASQUERADE ## Cho phép các gói tin đi qua firewall có địa chỉ nguồn hoặc địa chỉ đích là địa chỉ của LAN iptables -A FORWARD -s $INTERNAL_LAN -j ACCEPT iptables -A FORWARD -d $INTERNAL_LAN -j ACCEPT

Trên firewall triển khai thêm squid proxy

Tạo file squid.sh, nội dung file squid.sh như sau:

#!/bin/sh

##########################

# squid server IP

SQUID_SERVER="192.168.1.1"

# Interface kết nối đến Internet

INTERNET="eth0"

# Interface connected to LAN

LAN_IN="eth1"

Khoa CNTT – MH/MĐ……………………………………….. 65

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

# Squid port

SQUID_PORT="3128"

# Xóa những cái rule cũ

iptables -F

iptables -X

iptables -t nat -F

iptables -t nat -X

iptables -t mangle -F

iptables -t mangle -X

# Load IPTABLES modules cho NAT và IP conntrack support

modprobe ip_conntrack

modprobe ip_conntrack_ftp

# cho win xp ftp client

#modprobe ip_nat_ftp

echo 1 > /proc/sys/net/ipv4/ip_forward

# Set default policy

iptables -P INPUT DROP

iptables -P OUTPUT ACCEPT

# Không giới hạn truy cập địa chỉ loopback

iptables -A INPUT -i lo -j ACCEPT

iptables -A OUTPUT -o lo -j ACCEPT

Khoa CNTT – MH/MĐ……………………………………….. 66

STT BÀI HỌC NỘI DUNG THỰC HÀNH ỨNG DỤNG THỰC TẾ

# Chấp nhận UDP, DNS và Passive FTP

iptables -A INPUT -i $INTERNET -m state --state ESTABLISHED,RELATED -j ACCEPT

# Route cho LAN

iptables --table nat --append POSTROUTING --out-interface $INTERNET -j MASQUERADE

iptables --append FORWARD --in-interface $LAN_IN -j ACCEPT

# Không giới hạn truy cập đến LAN

iptables -A INPUT -i $LAN_IN -j ACCEPT

iptables -A OUTPUT -o $LAN_IN -j ACCEPT

# Chuyển tất cả các request từ LAN đến port 80 đến squid port 3128

iptables -t nat -A PREROUTING -i $LAN_IN -p tcp --dport 80 -j DNAT --to $SQUID_SERVER:$SQUID_PORT

# Nếu squid và iptables được cài trên cùng hệ thống

iptables -t nat -A PREROUTING -i $INTERNET -p tcp --dport 80 -j REDIRECT --to-port $SQUID_PORT

# Drop các gói tin khác và log các packge

iptables -A INPUT -j LOG

iptables -A INPUT -j DROP

Điểm đánh giá:………………………………………...GVHD ký tên:…………………………………………………………………….…………

ĐÁNH GIÁ KẾT QUẢ THỰC HÀNH CUỐI MH/MĐ: Điểm trung bình:………….. (Đạt: >=5) GV ký tên:………………………………..

........................., Ngày ... tháng ... năm ...................

Giảng viên giảng dạy