Đề tài: An toàn và bảo mật trên hệ điều hành Linux
Page 6 GVHD:Nguyễn Tấn Khôi Sinh viên thực hiện:
Lê Thị Huyền Trang
Nguyễn Huy Chương
bảo mật bao gồm việc kiểm toán chính xác và cả việc có nên để như thế hay không.
PortSentry là một ví dụ của công cụ theo dõi thời gian thực được thiết kế để quét
phát hiện ra hệ thống, và có khả cho bạn những hồi đáp.
4. Các ứng dụng an toàn
Một vài deamons chuẩn trong việc phân phối Linux hiện thời là những ứng dụng
đầy đủ mà nó có cấu trúc file phức tạp. Web, file, mail server sử dụng những giao
thức phức tạp. An toàn có thể được thực hiện bởi các đặc tính bảo mật của việc các
đại lý cho phép(MTA‟s) như Sendmail, Qmail và Postfix.
Web Server có thể cũng được giữ an toàn bởi các modul cho phép: mod_auth,
mod_auth_dbm, mod_auth_db,….Việc cho phép Open SS hỗ trợ cho Apache sẽ cũng
công tác với web server. Samba có thể làm an toàn bởi việc đọc các thông số đang
chạy. Bước đầu tiên sẽ được bảo vệ bởi công cụ quản trị web Samba (SAT) với SLL
nên các lệnh quản lý Samba được bảo vệ.
5. Chu vi an toàn
Cấp số tự nhiên của cách tiếp cận được sắp từng lớp đến sự an toàn máy tính
ra khỏi lớp từ lớp mạng đến lớp ứng dụng, và từ đó đền lớp chu vi. Đây là vùng được
quan tâm. Firewalls là thành phần chính của miền chu vi an toàn, là phần mền mà
chức năng bắt buộc tổ chức bảo mật an toàn bởi bộ lọc, bảo mật, đẩy mạnh, hay yêu
cầu nằm trong Linux server để kết nối đến cả mạng chính và Internet. Fireware có
thể được thực hiện nhiều cách dựa trên các lớp của mô hình OSI: lớp mạng, lớp giao
vận và ứng dụng. Có điểm tích cực và tiêu cực trong việc triển khai fireware tại các
lớp của mạng.Firewall mạng được biết như các packet-filtering gateway, nơi mà
GVHD:Nguyễn Tấn Khôi Sinh viên thực hiện:
Lê Thị Huyền Trang
Nguyễn Huy Chương
Tiện ích Ipchains theo cú pháp:
ipchains command chain rule-specification [options] -j action
Tại đây có thể một trong số kênh INPUT, OUTPUT hoặc FORWARD. Như nhân
2.4 về trước, tính hoạt động một lần của Ipchains được thay thế bởi Netfilter và
khoảng quy tắc Iptables. Netfilter được hỗ trợ bởi công nghệ Watchguard. Ipctables
được phát triển từ tiện ích của Ipchains và nó chỉ chạy trên những phiên bản 2.3 về
trước.
Một ví dụ về lệnh Iptables:
iptables -A INPUT -p tcp –-dport smtp -j ACCEPT.
Hiện nay có những thiết kế firewall bắt được hầu hết các cấu trúc mạng phổ
biến, báo hiệu đơn giản theo yêu cầu kết nối tới những nơi rất phức tạp kéo theo khu
vực được phi quân sự hoá(DMZ).
II. Bảo mật Linux Server
Những kinh nghiệm bảo mật
Hiện nay Linux đang dần trở thành một hệ điều hành khá phổ biến bởi tính
kinh tế, khả năng bảo mật và sự uyển chuyển cao. Thế nhưng, mọi hệ thống dù an
toàn đến đâu cũng dễ dàng bị xâm nhập nếu người dùng(và nhất là người quản trị-
root) không đặt sự bảo mật lên hàng đầu. Sâu đây là một só kinh nghiệm về bảo
mật trên hệ điều hành Red Hat Linux mà chúng tôi muốn chia sẽ cùng các bạn:
1. Không cho phép sử dụng tài khoảng root từ console: Sau khi cài đặt,
tài khoảng root sẽ không có quyền kết nối telnet vào dịch vụ telnet trên hệ thống,
trong khi đó tài khoản bình thường lại có thể kết nối, do nội dung tập tin
/etc/security chỉ quy định những console được phép truy cập bởi root và chỉ liệt kê
những console truy xuất khi ngồi trực tiếp tại máy chủ. Để tăng cường bảo mật hơn
Nguyễn Huy Chương
riêng mật khẩu mã hoá vào tập tin /ect/shadow chỉ có root mới đọc được, nhưng
yêu cầu phải chọn Enable the shadow password khi cài Red Hat.
6. Luôn nâng cấp cho nhân (kernel) Linux:Linux không hẵn được thiết kế
với tính năng bảo mật chặt chẽ, khá nhiều lỗ hỏng có thể bị lợi dụng bởi tin tặc. Vì
vậy việc sử dụng một hệ điều hành với nhân được nâng cấp là rất quan trọng vì một
khi nhân, phần cốt lõi nhất của hệ điều hành được thiết kế tốt thì nguy cơ bị phá hoại
sẽ giảm đi rất nhiều.
7. Tự động thoát khỏi Shell: Người quản trị hệ thống và kể cả người sử
dụng bình thường rất hay quên thoát ra dấu nhắc shell khi kết thúc công việc. Thât
nguy hiểm nếu có một kẻ nào sẽ có toàn quyền truy suất hệ thống mà chăng tốn
chút công sức nào cả. Do vậy người quản trị nên cài đặt tính năng tự động thoát khỏi
shell khi không có sự truy xuất trong khoảng thời gian định trước bằng cách sử dụng
biến môi trường và gán một giá trị quy định Số giây hệ thống duy trì dấu nhắc,
bạn nên vào tâp tin /ect/ profile để luôn tác dụng trong mọi phiên làm việc.
8. Không cho phép truy nhập tập tin kịch bản khởi động của Linux: Khi hệ
điều hành Linux khởi động, các tập tin kịch bản (script) được đặt tại thư mục
/etc/rc.d/init.d sẽ được gọi thực thi. Vì thế, để tránh những sự tò mò không cần thiết
từ phía người dùng, với tư cách người quản trị, bạn nên hạn chế quyền truy xuất tới
các tập tin này và chỉ cho phép tài khoảng root xử lý bằng lệnh sau:
#chmod –R 700/etc/rc.d/init.d*
9. Giới hạn việc tự ý ghi nhận thông tin từ shell: Theo mặc định, tất cả
lệnh được thực thi tại dấu nhắc shell của tài khoảng đều được ghi vào tập tin
.bash_history( nếu sd bashshell) trong thư mục cá nhân của từng tài khoảng. Điều
này gây nên vô số nguy hiểm tiềm ẩn, đặc biệt đối với những ứng dụng đòi hỏi người
dùng phải gõ thông tin mật khẩu. Do đó người quản trị nên giới hạn việc tự ý ghi
do được cài đặt cố tình bởi những kẻ phá hoại mà lại được đặt thuộc tính SUID thì
mọi điều “ khủng khiếp” đều có thể xảy ra. Thực tế cho thấy có khá nhiều kỹ thuật
xâm phạm hệ thống mà không có quyền root được thực hiện bằng các kỹ thuật này:
kẻ phá hoại bằng cách nào đó tạo một shell được quản lý bởi root, có thuộc tính
SUID, kế đến mọi truy xuất phá hoại sẽ được thực hiện qua shell vừa tạo vì mọi lệnh
thực hiện trong shell sẽ được thực hiện giống như dưới quyền root.
Thuộc tính SGID cũng tương tự như SUID: các chương trình được thực hiện với
quyền nhóm quản lý chương trình chứ không phải nhóm của người chạy chương
trình. Như vậy người quản trị sẽ phải thường xuyên kiểm tra trong hệ thống có
những ứng dụng nào có thuộc tính SUID hoặc SGID mà không được sự quản lý của
root không, nếu phát hiện được tập tin có thuộc tính SUID/SGID “ ngoài luồng”, bạn
có thể loại bỏ các thuộc tình này bằng lệnh:
#chmod a-s
III. Linux Firewall
An toàn hệ thống luôn luôn là một vấn đề sống còn của mạng máy tính và firewall là
một thành phần cốt yếu cho việc đảm bảo an ninh.
Một firewall là một tập hợp các qui tắc, ứng dụng và chính sách đảm bảo cho người
dùng truy cập các dịch vụ mạng trong khi mạng bên trong vẫn an toàn đối với các kẻ tấn
công từ Internet hay từ các mạng khác. Có hai loại kiến trúc firewall cơ bản là :
Proxy/Application firewall và filtering gateway firewall. Hầu hết các hệ thống firewall hiện
đại là loại lai (hybrid) của cả hai loại trên.
Nhiều công ty và nhà cung cấp dịch vụ Internet sử dụng máy chủ Linux như một
Internet gateway. Những máy chủ này thường phục vụ như máy chủ mail, web, ftp, hay
dialup. Hơn nữa, chúng cũng thường hoạt động như các firewall, thi hành các chính sách
kiểm soát giữa Internet và mạng của công ty. Khả năng uyển chuyển khiến cho Linux thu
hút như là một thay thế cho những hệ điều hành thương mại.
Tính năng firewall chuẩn được cung cấp sẵn trong kernel của Linux được xây dựng từ
hai thành phần : ipchains và IP Masquerading.
# Cho phép các kết nối từ bên trong tới các Web Server bên ngoài
/sbin/ipchains -A your_chains_rules -s 192.168.0.0/24 1024: -d 0.0.0.0/0 www -j
ACCEPT
# Từ chối truy cập tất cả các dịch vu khác
/sbin/ipchains -P your_chains_rules input DENY
Ngoài ra, bạn có thể dùng các sản phẩm firewall thương mại như Check Point FireWall-
1, Phoenix Adaptive Firewall, Gateway Guardian, XSentry Firewall, Raptor, hay rất
nhiều các phiên bản miễn phí, mã nguồn mở cho Linux như T.Rex Firewall, Dante, SINUS,
TIS Firewall Toolkit,
1.DÙNG CÔNG CỤ DÕ TÌM ĐỂ KHẢO SÁT HỆ THỐNG
Thâm nhập vào một hệ thống bất kỳ nào cũng cần có sự chuẩn bị. Hacker phải xác
định ra máy đích và tìm xem những port nào đang mở trước khi hệ thống có thể bị xâm
phạm. Quá trình này thường được thực hiện bởi các công cụ dò tìm (scanning tool), kỹ
thuật chính để tìm ra máy đích và các port đang mở trên đó. Dò tìm là bước đầu tiên
hacker sẽ sử dụng trước khi thực hiện tấn công. Bằng cách sử dụng các công cụ dò tìm
như Nmap, hacker có thể rà khắp các mạng để tìm ra các máy đích có thể bị tấn công.
Một khi xác định được các máy này, kẻ xâm nhập có thể dò tìm các port đang lắng nghe.
Nmap cũng sử dụng một số kỹ thuật cho phép xác định khá chính xác loại máy đang
kiểm tra.
Bằng cách sử dụng những công cụ của chính các hacker thường dùng, người quản trị
hệ thống có thể nhìn vào hệ thống của mình từ góc độ của các hacker và giúp tăng cường
tính an toàn của hệ thống. Có rất nhiều công cụ dò tìm có thể sử dụng như: Nmap,
strobe, sscan, SATAN,
Nmap
Là chữ viết tắt của "Network exploration tool and security scanner" . Đây là chương trình
quét hàng đầu với tốc độ cực nhanh và cực mạnh. Nó có thể quét trên mạng diện rộng và
đặc biệt tốt đối với mạng đơn lẻ. NMAP giúp bạn xem những dịch vụ nào đang chạy trên
server (services/ports:webserver,ftpserver,pop3, ), server đang dùng hệ điều hành gì,