Khám Phá Hệ Thống Tệp Linux: Kiến Thức Cốt Lõi Cho Kỹ Sư Hệ Thống & Bảo Mật
Trong thế giới quản trị hệ thống và an ninh mạng, hiểu rõ cấu trúc hệ thống tệp (filesystem) của Linux là một kỹ năng nền tảng nhưng cực kỳ quan trọng. Không chỉ giúp bạn điều hướng hiệu quả qua dòng lệnh, mà còn giúp nhận biết các hành vi bất thường, vị trí lưu trữ log và xác định mục tiêu tấn công tiềm năng.
Bài viết này sẽ dẫn bạn đi qua các phần quan trọng nhất của hệ thống tệp Linux, phân tích vai trò của từng thư mục, cơ chế xử lý thiết bị dưới dạng tệp, và các thực hành tốt nhất cho bảo mật.
🧭 1. Bắt đầu từ gốc: / và cấu trúc cây thư mục Linux
Hệ thống tệp Linux là một cấu trúc cây bắt đầu từ thư mục gốc /. Mọi thành phần khác—tệp, thư mục, ổ đĩa, thiết bị—đều nằm bên dưới nút gốc này. Không giống Windows, Linux không gắn ổ đĩa theo chữ cái (C:, D:), mà gắn kết (mount) thiết bị vào các điểm cụ thể trong cây thư mục, như /media, /mnt, hoặc vị trí do người dùng tùy ý chỉ định.
📂 2. Các thư mục cốt lõi và vai trò bảo mật
/etc – Trái tim cấu hình hệ thống
Chứa toàn bộ tệp cấu hình của hệ điều hành, dịch vụ, người dùng, và các khóa SSH, SSL. Đây là một mục tiêu quan trọng cần bảo vệ nghiêm ngặt. /bin, /sbin – Các lệnh thiết yếu
Chứa các lệnh cần thiết để khởi động và vận hành hệ thống như ls, cp, mkdir, reboot, v.v. /usr – Không gian phần mềm người dùng
Lưu trữ phần lớn ứng dụng, thư viện và các tệp thực thi:
Lưu dữ liệu cá nhân, SSH key, mật khẩu ứng dụng. Cần thiết lập phân quyền chặt chẽ. /tmp và /var/tmp – Không gian tạm, dễ bị khai thác
Tập trung toàn bộ log từ hệ điều hành và ứng dụng. Bảo vệ integrity của thư mục này là ưu tiên trong điều tra và phòng thủ.
🖥️ 3. /dev – Khi thiết bị trở thành tệp
Trong Linux, mọi thiết bị đều được biểu diễn như tệp trong thư mục /dev. Điều này tạo điều kiện cho hệ điều hành thao tác với phần cứng giống như với một tệp dữ liệu.
Một số thiết bị bạn nên biết:
Bạn có thể kiểm tra với:
ls -la /dev
🔄 4. Điều hướng hệ thống tệp: Tuyệt đối vs Tương đối
Đường dẫn tuyệt đối
Bắt đầu từ /, đi từ gốc. Ví dụ:
cd /usr/local/bin
Đường dẫn tương đối
Dựa trên thư mục hiện tại. Sử dụng . (thư mục hiện tại), .. (thư mục cha) và ~ (thư mục home). Ví dụ:
cp ./file.txt ../backup/ cd ~/Downloads
Lưu ý về $PATH:
Để chạy chương trình trong thư mục hiện tại, bạn phải dùng ./:
./my_script.sh
🧪 5. Ví dụ thực tế: thao tác với thiết bị và thư mục
Chạy một file trong thư mục hiện tại:
./new-app
Điều hướng từ /var/pcap/ về /var/log:
cd ../log cd /var/log
Sao chép tệp từ Downloads vào thư mục ~/caps:
cp test.pcap ~/caps
✅ Ôn tập nhanh
Câu hỏi 1: Ba thư mục cốt lõi của hệ thống tệp Linux?
→ /etc, /bin, /usr
Câu hỏi 2: Lệnh nào đưa bạn từ /var/pcap đến /var/log?
→ cd ../log hoặc cd /var/log
🛡️ Tầm quan trọng với bảo mật và điều tra sự cố
Trong một cuộc tấn công, kẻ xâm nhập thường:
Hiểu rõ các thư mục này không chỉ giúp bạn điều hành hệ thống mà còn là kỹ năng sống còn khi điều tra tấn công hoặc triển khai hardening.
🔚 Tóm tắt bài Linux File System
Hệ thống tệp Linux không chỉ là nơi chứa dữ liệu—nó phản ánh trật tự logic, phân quyền và bảo mật của toàn hệ thống. Là một kỹ sư mạng hoặc chuyên gia bảo mật, bạn cần hiểu từng thư mục là gì, lưu gì, và có thể bị khai thác ra sao.
🗨️ Bạn nghĩ sao?
Bạn đã từng gặp rủi ro nào liên quan đến thư mục /tmp hay /var/log chưa? Bạn có công cụ nào yêu thích để giám sát các thay đổi trong hệ thống tệp?
👉 Hãy chia sẻ trải nghiệm và câu hỏi bên dưới để cùng nhau học hỏi.
Trong thế giới quản trị hệ thống và an ninh mạng, hiểu rõ cấu trúc hệ thống tệp (filesystem) của Linux là một kỹ năng nền tảng nhưng cực kỳ quan trọng. Không chỉ giúp bạn điều hướng hiệu quả qua dòng lệnh, mà còn giúp nhận biết các hành vi bất thường, vị trí lưu trữ log và xác định mục tiêu tấn công tiềm năng.
Bài viết này sẽ dẫn bạn đi qua các phần quan trọng nhất của hệ thống tệp Linux, phân tích vai trò của từng thư mục, cơ chế xử lý thiết bị dưới dạng tệp, và các thực hành tốt nhất cho bảo mật.
🧭 1. Bắt đầu từ gốc: / và cấu trúc cây thư mục Linux
Hệ thống tệp Linux là một cấu trúc cây bắt đầu từ thư mục gốc /. Mọi thành phần khác—tệp, thư mục, ổ đĩa, thiết bị—đều nằm bên dưới nút gốc này. Không giống Windows, Linux không gắn ổ đĩa theo chữ cái (C:, D:), mà gắn kết (mount) thiết bị vào các điểm cụ thể trong cây thư mục, như /media, /mnt, hoặc vị trí do người dùng tùy ý chỉ định.
✅ Ghi nhớ: Điểm gắn kết là nơi bạn “cắm” thiết bị lưu trữ vào hệ thống tệp.
📂 2. Các thư mục cốt lõi và vai trò bảo mật
/etc – Trái tim cấu hình hệ thống
Chứa toàn bộ tệp cấu hình của hệ điều hành, dịch vụ, người dùng, và các khóa SSH, SSL. Đây là một mục tiêu quan trọng cần bảo vệ nghiêm ngặt. /bin, /sbin – Các lệnh thiết yếu
Chứa các lệnh cần thiết để khởi động và vận hành hệ thống như ls, cp, mkdir, reboot, v.v. /usr – Không gian phần mềm người dùng
Lưu trữ phần lớn ứng dụng, thư viện và các tệp thực thi:
- /usr/bin: lệnh chung cho người dùng
- /usr/sbin: lệnh dành cho quản trị
- /usr/local: phần mềm tự cài
- /usr/share: dữ liệu không phụ thuộc kiến trúc phần cứng
- /usr/lib: thư viện liên kết
Lưu dữ liệu cá nhân, SSH key, mật khẩu ứng dụng. Cần thiết lập phân quyền chặt chẽ. /tmp và /var/tmp – Không gian tạm, dễ bị khai thác
- Dữ liệu tại /tmp thường bị xóa khi khởi động lại.
- Tin tặc thường sử dụng thư mục này để lưu trữ malware giai đoạn đầu.
- /var/tmp dùng cho dữ liệu tạm có thời gian sống dài hơn.
Tập trung toàn bộ log từ hệ điều hành và ứng dụng. Bảo vệ integrity của thư mục này là ưu tiên trong điều tra và phòng thủ.
🖥️ 3. /dev – Khi thiết bị trở thành tệp
Trong Linux, mọi thiết bị đều được biểu diễn như tệp trong thư mục /dev. Điều này tạo điều kiện cho hệ điều hành thao tác với phần cứng giống như với một tệp dữ liệu.
Một số thiết bị bạn nên biết:
- /dev/sda: ổ đĩa chính
- /dev/sda1, /dev/sda2: các phân vùng
- /dev/null: thiết bị “black hole” – gửi dữ liệu vào đây là xóa luôn
- /dev/tty: các thiết bị đầu cuối
- /dev/urandom: bộ sinh số ngẫu nhiên
- b – block device (đĩa cứng, SSD)
- c – character device (terminal, printer)
- p – pipe có tên (named pipe)
- s – socket
Bạn có thể kiểm tra với:
ls -la /dev
🔄 4. Điều hướng hệ thống tệp: Tuyệt đối vs Tương đối
Đường dẫn tuyệt đối
Bắt đầu từ /, đi từ gốc. Ví dụ:
cd /usr/local/bin
Đường dẫn tương đối
Dựa trên thư mục hiện tại. Sử dụng . (thư mục hiện tại), .. (thư mục cha) và ~ (thư mục home). Ví dụ:
cp ./file.txt ../backup/ cd ~/Downloads
Lưu ý về $PATH:
Để chạy chương trình trong thư mục hiện tại, bạn phải dùng ./:
./my_script.sh
🧪 5. Ví dụ thực tế: thao tác với thiết bị và thư mục
Chạy một file trong thư mục hiện tại:
./new-app
Điều hướng từ /var/pcap/ về /var/log:
cd ../log cd /var/log
Sao chép tệp từ Downloads vào thư mục ~/caps:
cp test.pcap ~/caps
✅ Ôn tập nhanh
Câu hỏi 1: Ba thư mục cốt lõi của hệ thống tệp Linux?
→ /etc, /bin, /usr
Câu hỏi 2: Lệnh nào đưa bạn từ /var/pcap đến /var/log?
→ cd ../log hoặc cd /var/log
🛡️ Tầm quan trọng với bảo mật và điều tra sự cố
Trong một cuộc tấn công, kẻ xâm nhập thường:
- Dò thông tin qua /etc/passwd, /etc/shadow
- Lưu mã độc tạm thời tại /tmp
- Ghi log giả mạo hoặc xóa log tại /var/log
- Sử dụng /dev/null hoặc pipe để ẩn dữ liệu
Hiểu rõ các thư mục này không chỉ giúp bạn điều hành hệ thống mà còn là kỹ năng sống còn khi điều tra tấn công hoặc triển khai hardening.
🔚 Tóm tắt bài Linux File System
Hệ thống tệp Linux không chỉ là nơi chứa dữ liệu—nó phản ánh trật tự logic, phân quyền và bảo mật của toàn hệ thống. Là một kỹ sư mạng hoặc chuyên gia bảo mật, bạn cần hiểu từng thư mục là gì, lưu gì, và có thể bị khai thác ra sao.
🗨️ Bạn nghĩ sao?
Bạn đã từng gặp rủi ro nào liên quan đến thư mục /tmp hay /var/log chưa? Bạn có công cụ nào yêu thích để giám sát các thay đổi trong hệ thống tệp?
👉 Hãy chia sẻ trải nghiệm và câu hỏi bên dưới để cùng nhau học hỏi.