Tips nâng cao an ninh máy chủ Linux !

DiepNV88

VIP Members
24/09/2013
369
1.552 bài viết
Tips nâng cao an ninh máy chủ Linux !
Chào anh em bài trước mình đã đưa ra danh sách cần thiết để nâng cao an ninh trên máy chủ Windows. Với những quản trị viên cũng có thể dựa trên danh sách đó xây dựng checklist security cho đơn vị của mình đang làm việc hoặc tham khảo bổ sung kiến thức. Tất nhiên bài viết của mình chỉ mang tính tham khảo vì sẽ có nhiều tài liệu khác nhau cho vấn đề này.


linux1.jpg


Bài này mình không đưa ra những chỉ mục như phần Windows mà chỉ liệt kê các tips để nâng cao an ninh máy chủ Linux nếu muốn xây dựng checklist các bạn có thể tham khảo chỉ mục bài bên Windows.

Encrypt Data Communication For Linux Server
sshd.png
Tất cả dữ liệu truyền qua mạng đều có thể giám sát vậy nên mã hóa dữ liệu bằng mật khẩu, key, certificates là cần thiết để đảm bảo tính an toàn của data trên đường truyền.

Trong quá trình remote control chúng ta nên sử dụng sshd, sftp để thực thi mã và truyền file.
Sử dụng OPEN VPN khi tạo mạng riêng an toàn giữa các máy chủ internet hoặc để tạo mạng LAN riêng tư nhằm mục đích remote control, working.

Tránh sử dụng các dịch vụ không mã hóa kém an toàn

FTP, telnet, rsh là các dịch vụ thường sử dụng khi cấu hình mạng. Tên người dùng và mật khẩu có thể bị capture dễ dàng trên đường truyền.
Giải pháp cho vấn đề này là sử dụng các dịch vụ thay thế có mã hóa như OpenSSH, SFTP or FTPS, sshd ...

Minimize Software to Minimize Vulnerability in Linux

Một máy chủ web có cần thiết phải cài đầy đủ hệ điều hành như distro của nhà phát triển OS đó không. Tất nhiên bạn sẽ không cần dùng đến tất cả các ứng dụng trên bản distro Linux nào đó mà chỉ cần cài tối thiểu mà bộ cài cho phép.

Ví dụ một máy chủ web chạy centos chỉ cần cài minimize phần base còn bỏ check hết các mục như desktop, các gói ứng dụng khác. Khi buid máy chủ chúng ta sẽ tiếp tục cài những gói cần thiết để nó hoạt động đúng mục đích chứ không cần thiết phải cài đầy đủ như bộ cài cung cấp.

Một dịch vụ chạy trên một máy chủ.

Các dịch vụ mạng khác nhau nên chạy trên các máy chủ riêng biệt để tránh trường hợp máy chủ web bị tấn công có thể ảnh hưởng tới các dịch vụ khác như database, email, backup .... Giải pháp ảo hóa giải quyết triệt để vấn đề này và tận dụng được sức mạnh phần cứng server.

Auto update phần mềm và nhân Linux
Luôn luôn áp dụng các bản vá an ninh là một phần quan trọng trong việc bảo trì máy chủ linux. Linux cung cấp sẵn các công cụ cần thiết để giữ hco hệ thống luôn cập nhật và dễ dàng nâng cấp các phiên bản.

Use Linux Security Extensions

Linux đi kèm với các bản vá khác nhau có thể được sử dụng để chống lại các chương trình bị cấu hình sai hoặc bị xâm nhập. Nếu có thể chúng ta có thể sử dụng SELinux và các phần an ninh mở rộng khác để thực thi các chính sách an ninh cho máy chủ Linux.

selinux.jpg




SELinux

ELinux (Security-Enhanced Linux) là một mô đun bảo mật ở nhân của Linux, cung cấp cơ chế hỗ trợ các chính sách bảo mật kiểm soát truy cập (access control) , bao gồm các điều khiển truy nhập bắt buộc theo phong cách Bộ Quốc phòng Hoa Kỳ (MAC).

SELinux có 3 chế độ hoạt động cơ bản, trong đó Enforcing là chế độ mặc định khi cài đặt. Tuy nhiên, có một bộ định tính bổ sung của các mục tiêu hoặc các ml kiểm soát cách các quy tắc SELinux phổ biến được áp dụng, với mục tiêu là mức độ ít nghiêm ngặt hơn.

Enforcing: Chế độ mặc định sẽ cho phép và thực thi chính sách bảo mật SELinux trên hệ thống, từ chối các hành động truy cập và ghi nhật ký

Permissive: Trong chế độ Permissive, SELinux được kích hoạt nhưng sẽ không thực thi chính sách bảo mật, chỉ cảnh báo và ghi lại các hành động. Chế độ Permissive hữu ích cho việc khắc phục sự cố SELinux

Disabled: SELinux bị vô hiệu hóa hoặc bị tắt đi.

Tài khoản người dùng Linux phải đi kèm chính sách mật khẩu mạnh

Cấu hình chính sách mật khẩu đảm bảo các yếu tố tối thiểu 8 ký tự ,có chữ số, ký tự đặc biệt, chữ viết hoa viết thường. Quan trọng nhất là phải dễ nhớ tránh trường hợp đặt xong quên luôn lại phải reset mật khẩu.
  • Thiết lập thời gian tối thiểu mật khẩu còn hiệu lực sau đó người dùng phải đổi mật khẩu của mình.
  • Yêu cầu người dùng thay đổi mật khẩu khi đăng nhập lần đầu.
  • Tìm kiếm vô hiệu hóa các tài khoản không còn sử dụng.
  • Ngăn không cho sử dụng lại mật khẩu cũ.
  • Khóa tài khoản người dùng đăng nhập thất bại theo số lần qui định.
  • Khóa tất cả tài khoản mật khẩu NULL.
  • Đảm bảo không có tài khoản thường nào có UID=0
  • Tắt login Root, sử dụng sudo khi thực thi các lệnh cần thiết.
Bảo vệ máy chủ vật lý

Bảo vệ quyền truy cập vào bảng điều khiển vật lý của máy chủ Linux như cổng usb, CD, card net. Cấu hình bios tắt tính năng khởi động từ các thiết bị cắm ngoài như usb, cd-dvd. Tất cả máy chủ phải được khóa trong tủ rách và chỉ cá nhân có thẩm quyền mới được tiếp cận.

Vô hiệu hóa khởi động cùng hệ thống các dịch vụ không cần thiết
Việc vô hiệu hóa các dịch vụ không cần thiết khởi động cùng hệ thống giúp hệ thống chạy nhanh hơn mặc dù không đáng kể nhưng quan trọng là hạn chế dịch vụ running sẽ hạn chế được các lỗ hổng (không chạy thì không có cửa khai thác chui vào hệ thống).

Tìm kiếm và đóng tất cả các port không sử dụng
Để dễ dàng thực hiện tips này các bạn chỉ cần bật iptables và đóng tất cả các port lại chỉ mở các port dịch vụ, remote cần thiết.

Logging

Cấu hình và thu thập log của tất cả các hành động login fail nhằm tìm kiếm và chặn các nỗ lực tấn công vào hệ thống. Tất cả nhật ký log nằm trong var/log

Một số logfile chú ý:
  • /var/log/messages : General message and system related stuff
  • /var/log/auth.log : Authenication logs
  • /var/log/kern.log : Kernel logs
  • /var/log/cron.log : Crond logs (cron job)
  • /var/log/maillog : Mail server logs
  • /var/log/qmail/ : Qmail log directory (more files inside this directory)
  • /var/log/httpd/ : Apache access and error logs directory
  • /var/log/lighttpd/ : Lighttpd access and error logs directory
  • /var/log/boot.log : System boot log
  • /var/log/mysqld.log : MySQL database server log file
  • /var/log/secure or /var/log/auth.log : Authentication log
  • /var/log/utmp or /var/log/wtmp : Login records file
  • /var/log/yum.log : Yum command log file.
System Accounting with auditd

Bản kiểm toán được cung cấp để đánh giá hệ thống. Nó chịu trách nhiệm ghi hồ sơ kiểm toán vào đĩa. Trong khi khởi động, các quy tắc trong /etc/audit.rules được đọc bởi daemon này. Bạn có thể mở tệp /etc/audit.rules và thực hiện các thay đổi như thiết lập vị trí nhật ký tệp kiểm tra và tùy chọn khác. Với Auditd, bạn có thể trả lời những câu hỏi sau:
  • Sự kiện khởi động và tắt hệ thống (khởi động lại / tạm dừng).
  • Ngày và giờ của sự kiện.
  • Người dùng có thể phản hồi lại sự kiện (chẳng hạn như cố gắng truy cập tệp /path/to/topsecret.dat).
  • Loại sự kiện (chỉnh sửa, truy cập, xóa, ghi, cập nhật tệp và lệnh).
  • Sự kiện thành công hay thất bại.
  • Ghi lại các sự kiện Sửa đổi ngày và giờ.
  • Tìm hiểu xem ai đã thực hiện các thay đổi để sửa đổi cài đặt mạng của hệ thống.
  • Ghi lại các sự kiện sửa đổi thông tin người dùng / nhóm.
  • Xem ai đã thực hiện thay đổi đối với tệp, v.v
Backup

Ai cũng biết vai trò của việc Backup và khôi phục dữ liệu trong thời đại bùng nổ của các cuộc tấn công mạng thì việc đảm bảo tính toàn vẹn của dữ liệu là vô cùng cần thiết.
  • Backup các file cấu hình hệ thống để áp dụng cho máy chủ cài đặt lần sau.
  • Backup database, code bằng các sử dụng crontab tự động backup sang máy chủ khác cùng mạng private.
  • Luôn cố gắng mã hóa các dữ liệu nhạy cảm khi backup.
Còn rất nhiều tips nữa để nâng cao an ninh máy chủ Linux những tips đó thường đi sâu vào các ứng dụng nên mình sẽ không đưa ra ở đây. Rất mong ý kiến đóng góp của các bạn để bài viết hoàn thiện hơn.
 
Chỉnh sửa lần cuối bởi người điều hành:
Tất cả dữ liệu truyền qua mạng đều có thể giám sát vậy nên mã hóa dữ liệu bằng mật khẩu, key, certificates là cần thiết để đảm bảo tính an toàn của data trên đường truyền.

Em chưa hiểu hacker đánh cắp bằng cách nào trên môi trường Internet?
Haker phải truy cập được mạng nội bộ của client, mạng nội bộ của server hay mạng của ISP để có thể capture được những dữ liệu đang được truyền tải trên đường truyền ?
Mong các bác giải đáp giúp ạ.

Cảm ơn các bác.
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Em chưa hiểu hacker đánh cắp bằng cách nào trên môi trường Internet?
Haker phải truy cập được mạng nội bộ của client, mạng nội bộ của server hay mạng của ISP để có thể capture được những dữ liệu đang được truyền tải trên đường truyền ?
Mong các bác giải đáp giúp ạ.

Cảm ơn các bác.
Tất cả các đường link web bạn truy cập IPS họ đều kiểm tra được nhé vì vậy dữ liệu nhạy cảm như password đều có thể bị capture. Môi trường internet thực ra là một mạng lớn cũng có các thiết bị như route để chuyển đổi giữa các vùng mạng qua khai thác lỗ hổng mà các thiết bị mạng chưa được vá hacker cũng có thể capture data đi qua thiết bị mạng đó.
Trong môi trường mạng LAN có sử dụng nhiều user hacker có thể xâm nhập vào bất cứ máy tính nào của user thông qua cài cắm virus sau đó sử dụng các công cụ nghe lén capture data trên mạng lấy thông tin nhạy cảm.
Ví dụ bạn ra cafe dùng wifi nếu có một ông táy máy dùng wireshark .... có thể thấy các website bạn đang truy cập hay các dữ liệu khác như thông tin bạn đang telnet vào thiết bị nào đó chả hạn.
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
  • Thích
Reactions: Judah Hale
Comment
Tất cả các đường link web bạn truy cập IPS họ đều kiểm tra được nhé vì vậy dữ liệu nhạy cảm như password đều có thể bị capture. Môi trường internet thực ra là một mạng lớn cũng có các thiết bị như route để chuyển đổi giữa các vùng mạng qua khai thác lỗ hổng mà các thiết bị mạng chưa được vá hacker cũng có thể capture data đi qua thiết bị mạng đó.
Trong môi trường mạng LAN có sử dụng nhiều user hacker có thể xâm nhập vào bất cứ máy tính nào của user thông qua cài cắm virus sau đó sử dụng các công cụ nghe lén capture data trên mạng lấy thông tin nhạy cảm.
Ví dụ bạn ra cafe dùng wifi nếu có một ông táy máy dùng wireshark .... có thể thấy các website bạn đang truy cập hay các dữ liệu khác như thông tin bạn đang telnet vào thiết bị nào đó chả hạn.
cảm ơn bác.
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Comment
Thẻ
linux
Bên trên