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

Tìm hiểu và cấu hình IPTables trên hệ điều hành linux

63 470 2

Đ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

Định dạng
Số trang 63
Dung lượng 1,15 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Khởi đầu từ hoạt động đào tạo triển khai lắp đặt, hỗ trợ các dịch vụ Internet, Truyền số liệu, Tin học của VNPT/VDC cho các khách hàng, đại lý, đối tác và các viễn thông tỉnh/thành phố,

Trang 1

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA

KHOA CÔNG NGHỆ THÔNG TIN

Tel (84-511) 736 949, Fax (84-511) 842 771 Website: itf.ud.edu.vn, E-mail: cntt@edu.ud.vn

BÁO CÁO THỰC TẬP TỐT NGHIỆP NGÀNH CÔNG NGHỆ THÔNG TIN

MÃ NGÀNH : 05115

ĐỀ TÀI : TÌM HIỂU VÀ CẤU HÌNH IPTABLES TRÊN HỆ ĐIỀU

Trang 2

LỜI CẢM ƠN

Trong đợt thực tập vừa qua, chúng em đã nhận được sự huớng dẫn, giúp đỡ và động viên tận tình từ nhiều phía Tất cả những điều đó đã trở thành một động lực rất lớn giúp chúng em có thể hoàn thành tốt mọi công việc được giao Với tất cả sự cảm kích và trân trọng, chúng em xin được gửi lời cảm ơn đến tất cả mọi người

Trước tiên cho chúng em được gửi lời cảm ơn đến Ban lãnh đạo Trung tâm đào tạo VDC Training Đà Nẵng đã tạo điều kiện cho chúng em được tham gia thực tập tại công ty cũng như cung cấp tất cả các cơ sở vật chất và trang thiết bị có thể cho chúng

em trong thời gian vừa qua Xin cảm ơn thầy Th.s Nguyễn Song Tùng và các anh chị trong công ty đã tận tình hướng dẫn giúp đỡ chúng em trong suốt thời gian em tham gia thực tập

Em cũng xin được gửi lời cảm ơn đến lãnh đạo trường Đại học Bách Khoa Đà Nẵng, lãnh đạo khoa Công nghệ thông tin đã tổ chức các buổi giao lưu giửa các doanh nghiệp và sinh viên thật sự bổ ích, giúp chúng em có cơ hội tìm được một đơn vị thực tập tốt

Xin được cảm ơn tất cả các sinh viên tham gia thực tập tại VDC Training Đà Nẵng trong đợt thực tập vừa qua, những người đã luôn sát cánh cùng chúng mình, chia

sẻ, ủng hộ và giúp đỡ mình trong thời gian thực tập vừa qua

Xin trân trọng cảm ơn!

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan :

1 Những nội dung trong báo cáo này là do tôi thực hiện dưới sự hướng dẫn trực tiếp của thầy Th.s Nguyễn Song Tùng

2 Mọi tham khảo dùng trong báo cáo này đều được trích dẫn rõ ràng tên tác giả, tên công trình, thời gian, địa điểm công bố

3 Mọi sao chép không hợp lệ,vi phạm quy chế đào tạo,hay gian trá,tôi xin chịu hoàn toàn trách nhiệm

Sinh viên,

Lã Xuân Tâm Trần Canh Ngọ

Trang 4

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

Trang 5

MỤC LỤC

MỞ ĐẦU 1

GIỚI THIỆU CHUNG 1

I Giới thiệu về đơn vị thực tập 1

II Bối cảnh đề tài 4

III.Mục đích và ý nghĩa của đề tài 5

IV.Nội dung của đề tài gồm 4 phần chính 6

CHƯƠNG 1 7

CÁC NHIỆM VỤ ĐƯỢC GIAO 7

I.Tìm hiểu về đơn vị thực tập 7

II Đề tài nghiên cứu 7

CHƯƠNG 2 9

CÁC CÔNG NGHỆ ĐÃ NGHIÊN CỨU 9

I.TỔNG QUAN VỀ HỆ ĐIỀU HÀNH LINUX 9

I.1 Giới thiệu về hệ điều hành Linux 9

I.2 Kiến trúc hệ điều hành Linux 10

I.2.1 Hạt Nhân (kernel) 10

I.2.2 Shell 11

I.2.3 Các tiện ích 12

I.2.4 Chương trình ứng dụng 12

I.3 Các đặc tính cơ bản của Linux 12

I.3.1 Đa tiến trình 12

I.3.2 Tốc độ cao 13

I.3.3 Bộ nhớ ảo 13

Trang 6

I.3.4 Sử dụng chung thư viện 13

I.3.5 Sử dụng các chương trình xử lý văn bản 13

I.3.6 Sử dụng giao diện cửa sổ 13

I.3.7 Network Information Service (NIS) 14

I.3.8 Lập lịch hoạt động chương trình, ứng dụng 14

I.3.9 Các tiện ích sao lưu dữ liệu 14

I.3.10 Hỗ trợ nhiều ngôn ngữ lập trình 14

I.4 Cấu trúc hệ thống tập tin/thư mục trong Linux 15

I.5 Quản lý tài khoản và phân quyền trên Linux 15

I.5.1 Quản lý tài khoản trong Linux 15

I.5.2 Phân quyền người dùng trên hệ thống tập tin 16

I.6 Ưu và nhược điểm của hệ điều hành Linux 20

I.7 Một số bản phân phối(Distro) Linux phổ biến 21

II TỔNG QUAN VỀ FIREWALL 27

II.1 Khái niệm tường lửa(firewall) 27

II.2 Chức năng của tường lửa 27

II.3 Phân loại tường lửa 28

II.3.1 Packet Filtering ( tường lửa lọc gói tin) 28

II.3.2 Application firewall ( Tường lửa ứng dụng ) 29

II.3.3 Statefull Firewall (Tường lửa trạng thái) 31

CHƯƠNG 3 32

TÌM HIỂU VỀ IPTABLES TRÊN HỆ ĐIỀU HÀNH LINUX 32

I.Giới thiệu về Iptables 32

I.1 Khái niệm Iptables 32

Trang 7

I.2 Cài đặt Iptables 33

I.3 Cú pháp Iptables 33

I.4 Cấu trúc của Iptables 34

I.5 Quá trình chuyển dữ liệu qua Netfilter 36

I.6 Target và Jumps trong iptables 39

I.7 Các tham số dòng lệnh thường dùng trong iptables 41

I.8 Sử dụng các chuỗi tự định nghĩa 44

I.9 NAT trong iptables 45

I.10 Ví dụ về một số rule trên Iptables 47

II.Triển khái iptables trên Redhat 48

II.1 Mô hình triển khai 48

II.2 Thiết lập iptables trên redhat 48

II.2.1 Cấm ssh đến firewall 48

II.2.2 Cấm Ping đến Firewall 50

KẾT LUẬN 53

TÀI LIỆU THAM KHẢO 54

Trang 8

DANH MỤC HÌNH ẢNH , BẢNG BIỂU

Hình 2 1 Kiến trúc hệ điều hành linux 10

Hình 2 2 Cấu trúc thư mục hệ thống của Linux 15

Hình 2 3 Quyền trên tập tin 17

Hình 2 4 Quyền được biểu diễn dưới dạng số 18

Hình 2 5 Red Hat 22

Hình 2 6 Debian 23

Hình 2 7 Ubuntu 23

Hình 2 8 Gentoo 24

Hình 2 9 Knoppix 24

Hình 2 10 Slackware 25

Hình 2 11 Mô hình tưởng lửa cơ bản 27

Hình 2 12 Packet Filtering 29

Hình 2 13 Application firewall 30

Hình 2 14 Statefull Firewall 31

Hình 3 1 Vị trí của Iptables 33

Hình 3 2 Quá trình xử lý gói tin bảng filter 35

Hình 3 3 Quá trình xử lý gói tin trong bảng NAT 35

Hình 3 4 Quá trình xử lý gói tin trong bảng Mangle 35

Hình 3 5 Mô hình hoạt động của Iptables 36

Hình 3 6 Trình tự xử lý gói tin trên Iptables 38

Hình 3 7 Sơ đồ mạng công ty A 48

Trang 9

Bảng 1 Miêu tả các target mà Iptables thường dùng nhất 39

Bảng 2 Các tham số chuyển mạch quan trọng của iptables 41

Bảng 3 Các điều kiện TCP và UDP thông dụng 41

Bảng 4 Điều kiện ICMP 42

Bảng 5 Các điều kiện mở rộng thông dụng 43

Bảng 6 Danh sách các lệnh (Queues) 45

Bảng 7 NAT trong iptables 45

Trang 10

MỞ ĐẦU

GIỚI THIỆU CHUNG

I Giới thiệu về đơn vị thực tập

 Tên đơn vị thực tập

Trung tâm Đào tạo VDC Training Đà Nẵng

 Địa chỉ,điện thoại trung tâm VDC

Tầng 2,3 tòa nhà số 59 Trần Phú – Thành Phố Đà Nẵng

Điện thoại : 0511.3840.842 – Email: training@vdc.com.vn

 Hoạt động của trung tâm

Trung tâm Đào tạo VDC Training là đơn vị thuộc VDC - công ty thành viên tập đoàn VNPT VDC là doanh nghiệp hàng đầu trong lĩnh vực cung cấp dịch vụ Internet, có nhiều kinh nghiệm trong lĩnh vực tư vấn, thiết kế, triển khai các hệ thống

hạ tầng công nghệ thông tin và chuyển giao công nghệ

VDC Training đã có hơn 7 năm kinh nghiệm trong lĩnh vực đào tạo CNTT đẳng cấp cao Khởi đầu từ hoạt động đào tạo triển khai lắp đặt, hỗ trợ các dịch vụ Internet, Truyền số liệu, Tin học của VNPT/VDC cho các khách hàng, đại lý, đối tác

và các viễn thông tỉnh/thành phố, VDC Training đã thành công trong việc phát triển thành một trung tâm đào tạo CNTT có uy tín hàng đầu ở khu vực miền Trung và Tây Nguyên nói riêng và cả nước nói chung, không ngừng khẳng định là một đơn vị đào tạo đẳng cấp chuyên nghiệp, mang đến các chương trình đào tạo theo chuẩn mực quốc

tế cũng như đáp ứng tốt các chương trình đào tạo theo yêu cầu của các tổ chức lớn, cung cấp nhiều khoá học khác nhau nhằm giúp học viên nâng cao kỹ năng làm việc cũng như mang lại lợi ích đáng kể cho các tổ chức của họ Tính đến thời điểm hiện nay, VDC Training là đối tác đào tạo ủy quyền chính thức của Cisco, CompTIA, Pearson VUE, Prometric tại Việt Nam và cũng là thành viên mạng lưới đối tác Microsoft

Trang 11

SVTH: Lã Xuân Tâm,Trần Canh Ngọ - Lớp 11TLT Trang 2

Tiếp nối thành công ở mảng đào tạo các chương trình IT quốc tế và đặc biệt là

để đáp ứng nhu cầu của khách hàng, từ năm 2011 VDC Training triển khai đào tạo các chương trình về quản trị, kỹ năng mềm và ISO 27001, ISO 20000

VDC Training tự hào có đội ngũ giảng viên là các chuyên gia có trình độ chuyên môn cao, hiểu và nắm rõ phương pháp sư phạm, nhiệt tình trong công tác đào tạo; đã được cấp các chứng chỉ Quốc tế của các tổ chức hàng đầu như Cisco, Microsoft, Oracle, Sun, CompTIA, SCP, EC Council tuy nhiên sự khác biệt cũng là tài sản quý nhất của VDC Training chính là kinh nghiệm làm việc thực tế của giảng viên trong môi trường của một đơn vị cung cấp dịch vụ IP/Internet/Tin học hàng đầu Đội ngũ giảng viên của VDC Training với nhiều năm kinh nghiệm làm việc trong môi trường thực tế không những cung cấp cho học viên đầy đủ kiến thức lý thuyết mà còn

tư vấn, hỗ trợ học viên vận dụng và giải quyết các tình huống thực tế Sau khi tốt nghiệp, học viên có khả năng đáp ứng ngay các yêu cầu công việc thực tiễn Chất lượng đào tạo thể hiện rõ qua kết quả thi của học viên: sau khi hoàn thành các chương trình đào tạo, trên 90% học viên thi đạt điểm cao các chứng chỉ quốc tế ở ngay lần thi đầu tiên

Hiện nay, đội ngũ giảng viên của VDC Training đã đạt các chứng chỉ: CCSI, CCNA, CCNP, CCSP, CCAI, CCDP, CCIE Writtten, CWNA, SCSA, MCSE, MCITP, MCTS, MCT, CCSE, CompTIA Linux+, CompTIA Security+, SCNS, SCNP, SCNA, SCPI, CEH, CEI, Oracle DBA 10g, 11g v.v Không dừng lại và không thỏa mãn với những gì đạt được, các giảng viên VDC Training vẫn thường xuyên học tập, tham dự các khóa đào tạo nâng cao, các hội thảo công nghệ chuyên sâu trong và ngoài nước để cập nhật kiến thức mới và trau dồi kỹ năng mềm, nghiệp vụ sư phạm

Đội ngũ giảng viên giỏi chuyên môn nghiệp vụ, nhiều kinh nghiệm, cơ sở vật chất đạt tiêu chuẩn quốc tế cùng với nội dung đào tạo bổ ích đã giúp cho VDC Training trở thành đối tác đào tạo nguồn nhân lực cho nhiều đơn vị hoạt động trong các lĩnh vực khác nhau như

 Tập đoàn Bưu chính Viễn thông Việt Nam – VNPT

Trang 12

 Trung tâm Thông tin Di động khu vực III - VMS3

 Trung tâm Viễn thông Quốc tế khu vực III - VTI3

 Các Viễn thông tỉnh/thành phố

 Cụm cảng hàng không miền Trung

 Cục Hải quan Thành phố Đà Nẵng

 Viện Tin học Doanh nghiệp - CN miền Trung

 Trung tâm Viễn thông Điện lực miền Trung

 Công ty TNHH MTV Lọc hóa dầu Bình Sơn

 Ban quản lý dự án CNTT-TT thuộc Sở Thông tin và Truyền thông Đà Nẵng

 Sở Thông tin và Truyền thông Khánh Hòa

 Sở Thông tin và Truyền thông tỉnh Thừa Thiên Huế

 Sở Thông tin và Truyền thông Bình Định

 Sở Thông tin và Truyền thông tỉnh Kon Tum

 Trung tâm tích hợp dữ liệu tỉnh Phú Yên

 Các tổ chức ngân hàng, khác v.v

Trang 13

SVTH: Lã Xuân Tâm,Trần Canh Ngọ - Lớp 11TLT Trang 4

 Sứ mệnh

- Truyền đạt, hướng dẫn học viên/khách hàng các kiến thức, kỹ năng CNTT chuyên sâu ở đẳng cấp quốc tế về chương trình và chất lượng đào tạo Góp phần phát triển nguồn nhân lực CNTT Việt Nam đạt tiêu chuẩn quốc tế

- Xây dựng một môi trường học tập thân thiện, cởi mở với cơ sở vật chất hiện đại, đủ sức hấp dẫn để quy tụ được nhân lực CNTT trong và ngoài nước về cộng tác nghiên cứu, thử nghiệm, trao đổi học thuật, kinh nghiệm với nhau

- Tạo điều kiện cho mọi thành viên của VDC Training phát triển tối đa năng lực cá nhân, có cuộc sống sung túc về vật chất, hạnh phúc về tinh thần

II Bối cảnh đề tài

Như chúng ta đã biết, Internet cho phép chúng ta truy cập tới các nơi trên thế giới thông qua một số dịch vụ Khi máy tính kết nối với Internet từ môi trường mạng cục bộ, khi đó tất cả các giao tiếp của mạng nội bộ với thế giới bên ngoài coi như là bỏ ngỏ, mọi thông tin dữ liệu trên máy tính của mạng nội

bộ không có sự bảo vệ Điều này được ví như nhà không có khóa cửa, khi đó mọi đồ đạc trong nhà dĩ nhiên không an toàn Do vậy việc bảo vệ hệ thống là một vấn đề chúng ta đáng phải quan tâm.Khi nói đến vấn đề bảo mật, hầu hết các chuyên gia bảo mật đều chú trọng đến sự an toàn của hệ thống mạng và hệ

Trang 14

điều hành Để hạn chế tình trạng này và cũng là để góp phần làm tăng khả năng bảo mật thì việc xây dựng hệ thống tường lửa là điều kiện không thể thiếu

Tường lửa có thể được tích hợp với phần cứng hoặc phần mềm giúp bạn tránh được sự tấn công của các hacker, kiểm soát truy cập Khi truy cập vào mạng Internet Nếu bạn sử dụng máy tính cá nhân tại nhà hoặc bạn là một doanh nghiệp nhỏ, sử dụng tường lửa là cách quan trọng và hiệu quả nhất để bảo vệ máy tính của bạn

III.Mục đích và ý nghĩa của đề tài

Có rất nhiều loại tường lửa khác nhau nhưng chúng em đã quyết định chọn đề tài về tìm hiểu và cấu hình Iptables trên hệ điều hành linux Bởi vì hệ điều hành Linux ngày càng trở lên phổ biến,được sử dụng nhiều trên các hệ thống máy chủ.Mặt khác Iptables là một tường lửa ứng dụng lọc gói dữ liệu rất mạnh, miễn phí và có sẵn trên Linux Nó cung cấp các tính năng sau:

 Tích hợp tốt với kernel của Linux

 Có khả năng phân tích gói tin hiệu quả

 Lọc gói tin dựa vào địa chỉ MAC (Media Access Control) và một số cờ hiệu trong TCP Header

 Cung cấp chi tiết các tùy chọn để ghi nhận sự kiện hệ thống

 Cung cấp kỹ thuật NAT (Network Address Translation)

 Có khả năng ngăn chặn một số cơ chế tấn công theo kiểu DoS

Trang 15

SVTH: Lã Xuân Tâm,Trần Canh Ngọ - Lớp 11TLT Trang 6

IV.Nội dung của đề tài gồm 4 phần chính

 Tìm hiểu tổng quan về hệ điều hành linux

 Tổng quan về hệ thống tường lửa

 Tìm hiểu và cấu hình Iptables trên hệ điều hành linux

 Kết luận

Trang 16

CHƯƠNG 1

CÁC NHIỆM VỤ ĐƯỢC GIAO

I.Tìm hiểu về đơn vị thực tập

Trong ngày thực tập đầu tiên, chúng em được làm quen với các thầy, anh chị tham gia hướng dẫn chúng em trong quá trình thực tập Chúng em được

đi tham quan các phòng ban,phòng học,thực hành và các trang thiết bị máy móc ở trung tâm Trong buổi gặp gỡ, ngoài việc được giới thiệu về VDC Training/VDC - đơn vị thuộc VDC - công ty thành viên tập đoàn VNPT cũng như phổ biến một số nội quy, quy định của VDC Training - nơi chúng em sẽ thực tập tại đây Chúng em còn được giới thiệu về một số định hướng nghiên cứu, trải nghiệm trong thời gian thực tập tại VDC Training

Chúng em rất hào hứng với những xu hướng nghiên cứu khoa học mà giảng viên VDC Training giới thiệu, bởi đây là những xu hướng mới và đang được quan tâm nghiên cứu nhiều trên thế giới

Cũng trong buổi gặp gỡ, chúng em đã thoải mái trao đổi, bày tỏ mong muốn tham gia nghiên cứu những đề tài đầy mới mẻ này cũng như cơ hội tiếp cận môi trường thực tế, năng động trong lĩnh vực công nghệ thông tin - viễn

thông trong thời gian các bạn thực tập tại VDC Training

II Đề tài nghiên cứu

Sau khi được thầy Th.S Nguyễn Song Tùng giới thiệu về một số định hướng nghiên cứu đang được quan tâm hiện nay Chúng em đã chọn cho mình hướng nghiên cứu về tìm hiểu hệ điều hành linux mà cụ thể là tìm hiểu và cấu hình iptables trên hệ điều hành linux

Iptables là một phần mềm tường lửa phổ biến và cơ bản nhất trong HĐH

Linux Iptables là một tường lửa ứng dụng lọc gói dữ liệu rất mạnh gồm 2 phần

là Netfilter ở trong nhân Linux và Iptables nằm ngoài nhân Iptables chịu trách nhiệm giao tiếp giữa người dùng và Netfilter để đẩy các luật của người dùng

Trang 17

SVTH: Lã Xuân Tâm,Trần Canh Ngọ - Lớp 11TLT Trang 8 vào cho Netfiler xử lí Netfilter tiến hành lọc các gói dữ liệu ở mức IP Netfilter làm việc trực tiếp trong nhân, nhanh và không làm giảm tốc độ của hệ thống

Trang 18

CHƯƠNG 2

CÁC CÔNG NGHỆ ĐÃ NGHIÊN CỨU

Trong quá trình thực tập tại VDC Training Đà Nẵng, sau tuần đầu tiên được tham quan và tìm hiểu về trung tâm Sang tuần thứ hai, chúng em được giao nhiệm vụ học tập và nghiên cứu công nghệ Chúng em được phân vào các nhóm khác nhau tùy theo công nghệ đã lựa chọn Nhóm em có 2 thành viên nghiên cứu về iptables trên hệ điều hành linux

I.TỔNG QUAN VỀ HỆ ĐIỀU HÀNH LINUX

I.1 Giới thiệu về hệ điều hành Linux

Linux là tên gọi của một hệ điều hành máy tính và cũng là tên hạt nhân của hệ điều hành

Phiên bản Linux đầu tiên do Linus Torvalds viết vào năm 1991, lúc ông còn là một sinh viên của Đại học Helsinki tại Phần Lan Ông làm việc một cách hăng say trong vòng 3 năm liên tục và cho ra đời phiên bản Linux 1.0 vào năm

1994 Bộ phận chủ yếu này được phát triển và tung ra trên thị trường dưới bản quyền GNU General Public License Do đó mà bất cứ ai cũng có thể tải và xem

mã nguồn của Linux

Một cách chính xác, thuật ngữ ―Linux‖ được sử dụng để chỉ Nhân Linux, nhưng tên này được sử dụng một cách rộng rãi để miêu tả tổng thể một hệ điều hành giống Unix (còn được biết đến dưới tên GNU/Linux) được tạo ra bởi việc đóng gói nhân Linux cùng với các thư viện và công cụ GNU, cũng như là các bản phân phối Linux Thực tế thì đó là tập hợp một số lượng lớn các phần mềm như máy chủ web, các ngôn ngữ lập trình, các hệ quản trị cơ sở dữ liệu, các môi trường làm việc desktop như GNOME và KDE, và các ứng dụng thích hợp cho công việc văn phòng như OpenOffice hay LibreOffice

Khởi đầu, Linux được phát triển cho dòng vi xử lý i386 Intel, hiện tại hệ điều hành này hỗ trợ một số lượng lớn các kiến trúc vi xử lý, và được sử dụng

Trang 19

SVTH: Lã Xuân Tâm,Trần Canh Ngọ - Lớp 11TLT Trang 10

trong nhiều ứng dụng khác nhau từ máy tính cá nhân cho tới các siêu máy tính

và các thiết bị nhúng như là các máy điện thoại di động

Ban đầu, Linux được phát triển và sử dụng bởi những người say mê Tuy nhiên, hiện nay Linux đã có được sự hỗ trợ bởi các công ty lớn như IBM và Hewlett-Packard, đồng thời nó cũng bắt kịp được các phiên bản Unix độc quyền và thậm chí là một thách thức đối với sự thống trị của Microsoft Windows trong một số lĩnh vực Sở dĩ Linux đạt được những thành công một cách nhanh chóng là nhờ vào các đặc tính nổi bật so với các hệ thống khác: chi phí phần cứng thấp, tốc độ cao (khi so sánh với các phiên bản Unix độc quyền) và khả năng bảo mật tốt, độ tin cậy cao (khi so sánh với Windows) cũng như là các đặc điểm về giá thành rẻ, không bị phụ thuộc vào nhà cung cấp Một đặc tính nổi trội của nó là được phát triển bởi một mô hình phát triển phần mềm nguồn mở hiệu quả

Tuy nhiên, hiện tại số lượng phần cứng được hỗ trợ bởi Linux vẫn còn rất khiêm tốn so với Windows vì các trình điều khiển thiết bị tương thích với Windows nhiều hơn là Linux Nhưng trong tương lai số lượng phần cứng được

hỗ trợ cho Linux sẽ tăng lên

I.2 Kiến trúc hệ điều hành Linux

Hình 2 1 Kiến trúc hệ điều hành linux

I.2.1 Hạt Nhân (kernel)

Trang 20

Là trung tâm điều khiển của hệ điều hành Linux, chứa các mã nguồn điều khiển hoạt động của toàn bộ hệ thống Hạt nhân được phát triển không ngừng, thường có 2 phiên bản mới nhất, một bản dạng phát triển mới nhất và một bản

ổn định mới nhất Kernel được thiết kế theo dạng module, do vậy kích thước thật sự của Kernel rất nhỏ Chúng chỉ tải những bộ phận cần thiết lên bộ nhớ, các bộ phận khác sẽ được tải nếu có yêu cầu sử dụng Nhờ vậy so với các hệ điều hành khác Linux không sử dụng lãng phí bộ nhớ nhờ không tải mọi thứ lên mà không cần quan tâm nó có sử dụng không

Kernel được xem là trái tim của hệ điều hành Linux, ban đầu nhân được phát triển cho các CPU Intel 80386 Điểm mạnh của loại CPU này là khả năng quản lý bộ nhớ Kernel của Linux có thể truy xuất tới toàn bộ tính năng phần cứng của máy Yêu cầu của các chương trình cần rất nhiều bộ nhớ, trong khi hệ

thống có ít bộ nhớ, hệ điều hành sử dụng không gian đĩa hoán đổi (swap space)

để lưu trữ các dữ liệu xử lý của chương trình Swap space cho phép ghi các

trang của bộ nhớ xuất các vị trí dành sẵn trong đĩa và xem nó như phần mở

rộng của vùng nhớ chính Bên cạnh sử dụng swap space, Linux còn hỗ trợ các

Có nhiều Shell được sử dụng trong Linux Có nhiều loại shell được dùng trong Linux Điểm quan trọng để phân biệt các shell khác nhay là bộ lệnh của mỗi shell Ví dụ , C shell thì sử dụng các lệnh tương tự ngôn ngữ C, Bourne thì dùng ngôn ngữ lệnh khác…

Trang 21

SVTH: Lã Xuân Tâm,Trần Canh Ngọ - Lớp 11TLT Trang 12

Shell sử dụng chính trong Linux là GNU Bourne Again Shell ( bash ) Shell này là shell phát triển từ Bourne Shell, là shell sử dụng chính trong các hệ thông Unix, với nhiều tính năng mới như : điều khiển các tiến trình, các lệnh history, tên tập tin dài…

sử dụng bởi người dùng hoặc hệ thống Một số tiện ích được xem là chuẩn

trong hệ thống Linux như passwd, ls, pa, vi …

I.2.4 Chương trình ứng dụng

Khác với các tiện ích, các ứng dụng như chương trình word, hệ quản trị cơ

sở dữ liệu,… là các chương trình có độ phức tạp lớn và được các nhà sản xuất viết ra

I.3 Các đặc tính cơ bản của Linux

Linux hỗ trợ các tính năng cơ bản thường thấy trong các hệ điều hành Unix và nhiều tính năng khác mà không hệ điều hành nào có được Linux cung cấp môi trường phát triển một cách đầy đủ bao gồm các thư viện chuẩn, các công cụ lập trình, trình biên dịch, debug,… như bạn mong đợi ở các hệ điều hành Unix khác Hệ thống Linux trội hơn các hệ thống khác trên nhiều mặt mà người dùng quan tâm như sự phát triển tốc độ, dễ sử dụng và đặc biệt là sự phát triển và hỗ trợ mạng Một số đặc điểm của Linux chúng ta cần quan tâm:

I.3.1 Đa tiến trình

Là đặc tính cho phép người dùng thực hiện nhiều tiến trình đồng thời Ví

dụ bạn vừa in, vừa soạn văn bản, vừa nghe nhạc,… cùng một lúc Máy tính sử dụng chỉ một CPU nhưng xử lý đồng thời nhiều tiến trình cùng lúc Thực chất

Trang 22

là tại một thời điểm CPU chỉ xử lý được một mệnh lệnh, việc thực hiện cùng lúc nhiều công việc là giả tạo bằng cách làm việc xen kẽ và chuyển đổi trong thời gian nhanh Do đó người dùng cứ ngỡ là thực hiện đồng thời

đĩa vào partition swap Hệ thống sẽ đưa các chương trình hoặc dữ liệu nào

chưa có yêu cầu truy xuất xuống vùng swap này, khi có nhu cầu thì hệ thống chuyển lên lại bộ nhớ chính

I.3.4 Sử dụng chung thư viện

Hệ thống Linux có rất nhiều thư viện dùng chung cho nhiều ứng dụng Điều này sẽ giúp hệ thống tiết kiệm được tài nguyên cũng như thời gian xử lý

I.3.5 Sử dụng các chương trình xử lý văn bản

Chương trình xử lý văn bản là một trong những chương trình rất cần thiết đối với người sử dụng Linux cung cấp nhiều chương trình cho phép người

dùng thao tác với văn bản như vi, emacs, nroff

I.3.6 Sử dụng giao diện cửa sổ

Giao diện cửa sổ dùng hệ thống X Window, có giao diện như hệ điều hành

Windows Với hệ thống này người dùng rất thuận tiện khi làm việc trên hệ

thống X Window System hay còn gọi tắt là X được phát triển tại viện

Massachusetts Institute of Technology Nó được phát triển để tạo ra môi trường

làm việc không phụ thuộc phần cứng X chạy dưới dạng client – server Hệ thống X Window hoạt động qua hai bộ phận:

- Phần server còn gọi là X server

Trang 23

SVTH: Lã Xuân Tâm,Trần Canh Ngọ - Lớp 11TLT Trang 14

- Phần client được gọi là X Window manager hay desktop environment

- X Server sử dụng trong hầu hết các bản phân phối của Linux là Xfree86

Client sử dụng thường là KDE (K Desktop Environment) và GNOME (GNU

Network Object Model Environment)

Dịch vụ Samba sử dụng tài nguyên đĩa, máy in với Windows Tên Samba

xuất phát từ giao thức Server Message Block (SMB) mà Window sử dụng để

chia sẻ tập tin và máy in Samba là chương trình sử dụng giao thức SMB chạy trên Linux Sử dụng Samba bạn có thể chia sẻ tập tin và máy in với các máy Windows

I.3.7 Network Information Service (NIS)

Dịch vụ NIS cho phép chia sẻ các tập tin password và group trên mạng

NIS là một hệ thống cơ sở dữ liệu dạng client – server, chứa các thông tin của

người dùng và dùng để chứng thực người dùng NIS xuất phát từ hãng Sun

Microsystem với tên là Yellow Pages

I.3.8 Lập lịch hoạt động chương trình, ứng dụng

Chương trình lập lịch trong Linux xác định các ứng dụng, script thực thi

theo một sự sắp xếp của người dùng như: at, cron, batch

I.3.9 Các tiện ích sao lưu dữ liệu

Linux cung cấp các tiện ích như tar, cpio và dd để sao lưu và backup dữ liệu Red Hat Linux còn cung cấp tiện ích Backup and Restore System Unix

(BRU) cho phép tự động backup dữ liệu theo lịch

I.3.10 Hỗ trợ nhiều ngôn ngữ lập trình

Linux cung cấp một môi trường lập trình Unix đầy đủ bao gồm các thư viện chuẩn, các công cụ lập trình, trình biên dịch, chương trình debug mà bạn

có thể tìm thấy trong các hệ điều hành Unix khác Ngôn ngữ chủ yếu sử dụng trong các hệ điều hành Unix là C và C++ Linux dùng trình biên dịch cho C và

C++ là gcc, chương trình biên dịch này rất mạnh, hỗ trợ nhiều tính năng Ngoài

Trang 24

C, Linux cũng cung cấp các trình biên dịch, thông dịch cho các ngôn ngữ khác

như Pascal, Fortan, Java, …

I.4 Cấu trúc hệ thống tập tin/thư mục trong Linux

Trong Linux không có khái niệm ổ đĩa Sau quá trình khởi động, toàn bộ các thư mục và tập tin được kết gắn và tạo thành một hệ thống tập tin thống nhất, bắt đầu từ gốc ―/‖

Hình 2 2 Cấu trúc thư mục hệ thống của Linux

I.5 Quản lý tài khoản và phân quyền trên Linux

I.5.1 Quản lý tài khoản trong Linux

a) Tài khoản người dùng

Cũng giống như Windows,Linux cũng có các loại tài khoản khác nhau, thường được chia làm 2 loại chính : tài khoản người dùng bình thường và tài khoản quản trị (root )

Root là tài khoản quản trị có ảnh hưởng rất lớn đối với an toàn của hệ thống, tài khoản root có các các quyền như: tạo tài khoản người dùng, cài đặt phần mềm, thêm, xóa, sửa đổi các tài khoản…

Mỗi người sử dụng trên hệ thống được mô tả qua các thông tin sau:

- username : tên người sử dụng

- password : mật khẩu (nếu có)

Trang 25

SVTH: Lã Xuân Tâm,Trần Canh Ngọ - Lớp 11TLT Trang 16

- uid : số nhận dạng (user identify number )

- gid : số của nhóm(group identify number )

- comment : chú thích

- Thư mục chủ của tài khoản (home directory )

- Shell đăng nhập (chương trình chạy lúc bắt đầu phiên làmviệc)

Các thông tin trên được chứa trong tập tin /etc/passwd

b) Tài khoản nhóm người dùng

Một nhóm người sử dụng được mô tả bằng các thông tin sau:

- groupname : tên của nhóm

- gid : số của nhóm (gid: group identify number)

- danh sách các tài khoản thuộc nhóm

Các thông tin trên được chứa trong tập tin /etc/group

I.5.2 Phân quyền người dùng trên hệ thống tập tin

Một trong những thành phần chính của họ *nix là hệ thống quyền hạn truy cập (Permission) cho mọi đối tượng (file (-), thư mục (d), link (l)) Hệ thống này đóng 1 vai trò quan trọng trong việc cung cấp mức an ninh cao và tính ổn định cho HDH Linux

Mỗi 1 đối tượng gắn với 3 loại quyền: read (đọc), write (ghi) và execute (thực thi) Và mỗi 1 quyền này lại được chỉ định cho 3 loại user:

+ owner: chủ sở hữu của đối tượng – mặc định ban đầu là user tạo ra đối tượng

đó

+ group: 1 nhóm các user chia sẻ chung quyền hạn truy cập - mặc định ban đầu

là group mà owner ở trên thuộc về

+ other: tất cả các user không thuộc 2 nhóm trên

Trang 26

Hình 2 3 Quyền trên tập tinUser root có đủ cả 3 quyền đối với mọi đối tượng trên hệ thống Ngoài

ra, root có thể thay đổi (cấp hoặc tước) quyền hạn truy cập đối tượng cho bất

kỳ user nào và còn có thể chuyển quyền sở hữu đối tượng qua lại giữa các user

Ý nghĩa của 3 loại quyền này là:

+ đối với thư mục:

- Read: chỉ cho phép xem tên và các thuộc tính của các đối tượng mà nó chứa

- Write: cho phép tạo và xóa các đối tượng trong thư mục

- Execute: chỉ cho phép truy cập vào thư mục sử dụng lệnh cd

+ đối với file:

- Read: chỉ cho phép xem nội dung của file

- Write: cho phép chỉnh sửa nội dung, xóa file

Trang 27

SVTH: Lã Xuân Tâm,Trần Canh Ngọ - Lớp 11TLT Trang 18

- Execute: chỉ cho phép chạy file này, thường được gán các file nhị phân

thực thi (đã được biên dịch từ file mã nguồn) tương tự như file exe trong

Windows

Các quyền cho 1 đối tượng được biểu diễn như sau:

- Read: ký hiệu là r hay số 4 hệ bát phân

- Write: ký hiệu là w hay số 2 hệ bát phân

- Execute: ký hiệu là e hay số 1 hệ bát phân

Vì mỗi đối tượng có 3 loại quyền cho mỗi loại user nên có tất cả 9 bit

thông tin về quyền hạn tương ứng với mỗi đối tượng Mỗi bit trong 9 bit này

nhận 1 trong 2 giá trị: được phép (allow) hoặc bị cấm (deny)

Hình 2 4 Quyền được biểu diễn dưới dạng số Các quyền cho 1 đối tượng được biểu diễn theo 2 cách

 Cách 1 gồm 1 chuỗi 10 ký tự:

- Ký tự đầu thể hiện loại file: d cho thư mục (file đặc biệt), - cho

file thông thường, l cho các link (hard link, symbolic link)

- Ba ký tự tiếp là các quyền cho owner, kế đến là 3 ký tự biểu

diễn các quyền cho group, còn lại 3 ký tự cuối dành cho other

- Quyền được phép read sẽ là r, write là w, e là execute Các

quyền bị cấm được biểu diễn bằng dấu –

Trang 28

Sử dụng lệnh ls –l filename để biết thông tin về các quyền VD

-rwxrw-r

+ đây là file thông thường

+ owner có quyền read, write, execute; group có thể read, write; other chỉ read

+ 7 : read + write + execute

Để thay đổi quyền hạn truy cập cho các user sử dụng lệnh chmod (bạn phải là owner của file hặc có quyền root)

Để thay đổi owner cho đối tượng sử dụng lệnh chown (bạn phải có quyền root)

chown User_Name File_Name

Trang 29

SVTH: Lã Xuân Tâm,Trần Canh Ngọ - Lớp 11TLT Trang 20

Để thay đổi group cho đối tượng sử dụng lệnh chgrp nhưng phải thỏa 1 trong 2 điều kiện:

* chạy lệnh chgrp với quyền root

* bạn là owner + thuộc Group (có tên là Group_Name trong lệnh) mà bạn muốn thay đổi Group cho file

 Là hệ điều hành đa nhiệm và đa người dùng, tận dụng được sức mạnh

xử lý của máy i386 và đời cao hơn Chạy được trên nhiều loại máy khác nhau

 Có sẵn bộ giao thức TCP/IP giúp cho người dùng dễ dàng kết nối internet

 Khả năng tương thích với các hệ thống mở có nghĩa chúng ta có thể chuyển nó từ hệ điều hành này sang hệ điều hành khác mà vẫn hoạt động tốt

 Hổ trợ người dùng Hiện nay linux có hàng ngàn ứng dụng, bao gồm các chương trình báo biểu, cơ sở dữ liệu, giải trí, đa phương tiện và rất nhiều ứng dụng khác

 Lợi ích cho giới chuyên nghiệp điện toán, đến với linux giới điện toán sẽ

có hàng ngàn công cụ phát triển chương trình, báo gồm các bộ biên dịch cho nhiều ngôn ngữ lập trình hàng đầu hiện nay, chẳng hạn như C, C++…

 Nhược điểm

Trang 30

 Khuyết điểm về hổ trợ kỹ thuật tức là Linux không có một công ty nào đứng ra chịu trách nhiệm phát triển hệ điều hành này Nếu gặp trục trặc thì không có ai có thể giải quyêt miển phí cho bạn

 Khuyết điểm về phần cứng đó chính là Linux không dễ dàng cài đặt và

hổ trợ nhiều thiết bị phần cứng Các phiên bản phần cứng của Linux đều

hổ trợ theo nguyên tắc phần cứng của nhà phát triển Linux

 Quá trình sử dụng với người dùng tương đối khó khăn bởi vì Linux hổ trợ việc giao tiếp bằng đồ họa ít nên chủ yếu phải dùng bằng lệnh nên dẫn đến làm cho người dùng cảm thấy kho khăn khi sử dụng

I.7 Một số bản phân phối(Distro) Linux phổ biến

Phần mềm tự do nguồn mở cho phép người sử dụng có thể sao chép, sửa đổi, phân phối một cách tự do và không phụ thuộc vào bất kỳ nhà cung cấp công nghệ nào

Phần mềm tự do nguồn mở được phát triển từ lâu và đến nay đã xuất hiện khá phổ biến trong các tổ chức chính phủ, doanh nghiệp.Thu hút sự chú ý của cộng đồng do sự tự nguyện của những người đóng góp cho cộng đồng giúp phát hiện và thông báo các lỗi mà họ gặp phải khi trải nghiệm

Điểm sáng của phần mềm mã nguồn mở chính là khái niệm distro, có thể tạm dịch là bản phân phối phần mềm mã nguồn mở Kể từ lúc Linux ra đời, cho đến nay đã có rất nhiều distro khác nhau, một phần là do tính "mở" của nó Một số distro có thể kể đến như: Ubuntu, Fedora, LinuxMint, openSUSE, PCLinuxOS, Debian, Mandriva…

 Sự khác nhau giữa các distro chủ yếu dựa vào 2 yếu tố

- Thị trường mà distro muốn nhắm đến, ví dụ dành cho máy chủ,

doanh nghiệp, siêu máy tính, người dùng đầu cuối…

- Tùy thuộc vào triết lí phần mềm của từng distro mà những

người phát triển quyết định gắn bó lâu dài với distro đó hay không

Trang 31

SVTH: Lã Xuân Tâm,Trần Canh Ngọ - Lớp 11TLT Trang 22

 Các distribution phổ biến

Redhat,Fedora & CentOS (Redhat, Inc): Redhat, Fedora,CentOS là

các Distro dựa trên RPM, được nhiều người biết đến nhất và rất phổ biến tại Việt Nam Chúng phù hợp với mọi mục đích, từ Desktop, Workstation, đến Server, cho những người mới dùng, đến những người đã giàu kinh nghiệm Điểm mạnh của Redhat, Fedora,CentOS là việc hỗ trợ cài đặt, đến giao diện sử dụng rất thân thiện Tuy nhiên điểm yếu chung của những Distro tựa RPM này

là cách quản lý gói tin gây không ít khó khăn cho người dùng Việc phân chia mỗi ứng dụng bao gồm nhiều gói rpm, và sự liên kết giữa chương trình với thư viên, gây cho việc cài đặt, gỡ bỏ, cập nhật bất kỳ một gói nào cũng liên quan đến nhiều gói khác Tuy nhiên, đến Distro Fedora,CentOS và Redhat Enterprise, trình quản lý gói yum được đưa vào, đã giải quyết được đáng kể vấn đề trên Fedora,CentOS là Distro xuất hiện miễn phí cho người dùng bởi Công ty Redhat từ khi phiên bản Redhat đã được thương mại hóa Redhat Enterprise thực sự là một Distro phổ biến cho dòng Máy chủ của các công ty,

doanh nghiệp lớn trên toàn thế giới

Hình 2 5 Red Hat

Debian: là Distro khá phổ biến bởi trình quản lý gói tin rất mạnh, tiện

ích APT và số lượng gói phần mềm khổng lồ (số lượng CD lưu trữ hết các gói tin khoảng 15 CD - 8000 gói), cung cấp cho người dùng rất nhiều tính năng lựa chọn Debian là lựa chọn cho sự ổn định và tin cậy Gói tin DEB trên Debian

Ngày đăng: 30/03/2015, 12:19

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Nguyễn Thị Điệp và Tiêu Đông Nhơn.Giáo trình Dịch vụ mạng Linux.Đại học Quốc Gia Thành phố Hồ ChíMinh 12/2005 Sách, tạp chí
Tiêu đề: Giáo trình Dịch vụ mạng Linux
[3] Nguyễn Thanh Thúy, Nguyễn Quang Huy, Nguyễn Hữu Đức, Đinh Lan Anh .Nhập môn hệ điều hành Linux.NXB Khoa học kỹ thuật 2000 Sách, tạp chí
Tiêu đề: Nhập môn hệ điều hành Linux
Nhà XB: NXB Khoa học kỹ thuật 2000
[5] Christopher Negus and Christine Bresnahan. CentOS Bible.938 trang [6] Emmett Dulaney.Linux All in One For Dummies.652tr Sách, tạp chí
Tiêu đề: CentOS Bible."938 trang [6] Emmett Dulaney."Linux All in One For Dummies
[2] Nguyễn Hồng Thái. Cài đặt và cấu hình Ipables.2004,96tr Khác
[4] O'Reilly Media. Linux iptables pocket reference Khác

HÌNH ẢNH LIÊN QUAN

Hình 2. 2 Cấu trúc thƣ mục hệ thống của Linux - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Hình 2. 2 Cấu trúc thƣ mục hệ thống của Linux (Trang 24)
Hình 2. 3 Quyền trên tập tin - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Hình 2. 3 Quyền trên tập tin (Trang 26)
Hình 2. 8 Gentoo - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Hình 2. 8 Gentoo (Trang 33)
Hình 2. 9 Knoppix - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Hình 2. 9 Knoppix (Trang 33)
Hình 2. 10 Slackware - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Hình 2. 10 Slackware (Trang 34)
Hình 2. 11 Mô hình tưởng lửa cơ bản - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Hình 2. 11 Mô hình tưởng lửa cơ bản (Trang 36)
Hình 2. 12 Packet Filtering - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Hình 2. 12 Packet Filtering (Trang 38)
Hình 2. 13 Application firewall - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Hình 2. 13 Application firewall (Trang 39)
Hình 2. 14 Statefull Firewall - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Hình 2. 14 Statefull Firewall (Trang 40)
Hình 3. 2 Quá trình xử lý gói tin bảng filter - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Hình 3. 2 Quá trình xử lý gói tin bảng filter (Trang 44)
Hình 3. 4 Quá trình xử lý gói tin trong bảng Mangle - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Hình 3. 4 Quá trình xử lý gói tin trong bảng Mangle (Trang 44)
Hình 3. 3 Quá trình xử lý gói tin trong bảng NAT - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Hình 3. 3 Quá trình xử lý gói tin trong bảng NAT (Trang 44)
Hình 3. 6 Trình tự xử lý gói tin trên Iptables - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Hình 3. 6 Trình tự xử lý gói tin trên Iptables (Trang 47)
Bảng 4.  Điều kiện ICMP - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Bảng 4. Điều kiện ICMP (Trang 51)
Bảng 6. Danh sách các lệnh (Queues) - Tìm hiểu và cấu hình IPTables trên hệ điều hành linux
Bảng 6. Danh sách các lệnh (Queues) (Trang 54)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

w