Chuyển đến nội dung chính (Skip to content)
Mục lục bài viết
Linux Essentials

Linux Essentials 1.4: Kỹ năng CNTT và Làm việc trên Linux

Linux Essentials 1.4: Kỹ năng CNTT và Làm việc trên Linux

Nhận diện desktop, server, VM, container và cloud khi sử dụng Linux; kiểm tra danh tính, vị trí dữ liệu và giới hạn bảo vệ của từng biện pháp bảo mật.

Biết mình đang thao tác lên máy nào

Một cửa sổ terminal có thể đang chạy shell trên laptop, trong container, trong máy ảo hoặc trên server qua SSH. Giao diện gần giống nhau nhưng phạm vi dữ liệu và quyền thay đổi rất khác. Trước khi học thêm lệnh, hãy xây thói quen xác định nơi thực thi. Đây là một kỹ năng thực tế giúp tránh đưa thao tác dành cho lab lên máy đang phục vụ người dùng.

Bài thuộc mục tiêu 1.4 của giáo trình Linux Essentials 010-160, liên hệ 011.4 của 010-200. Phần cập nhật nhấn mạnh loại môi trường, công cụ chỉnh sửa/cấu hình và cách giữ thông tin đăng nhập. Mốc đối chiếu: 23/10/2026. Bạn cần một guest hoặc container Linux riêng để quan sát; bài không yêu cầu mở dịch vụ ra Internet hay đăng nhập máy của người khác.

GUI và dòng lệnh đều cần bối cảnh

Giao diện đồ họa giúp bạn khám phá ứng dụng và dữ liệu bằng các điều khiển trực quan. Dòng lệnh giúp mô tả thao tác bằng văn bản, kết hợp công cụ và ghi lại cách tái hiện. Chọn giao diện theo công việc và điều kiện truy cập. Không cần xem việc dùng GUI là thiếu kỹ thuật, cũng không nên coi mọi lệnh copy từ mạng là có thể giải thích được.

Hai cách tương tác có thể dùng những cấu hình khác nhau. Ứng dụng được mở từ desktop có thể có môi trường khởi chạy khác một shell tương tác. Một thao tác chạy trên tài khoản thường không giống thao tác với quyền quản trị. Khi điều tra, ghi cả người dùng và môi trường, đừng chỉ chụp phần đầu ra cuối cùng rồi mất dấu đầu vào.

Với Help Desk, một mô tả tốt là “trong guest Ubuntu, tài khoản học tập đọc được tệp A nhưng ứng dụng B không mở được”. Mô tả “Linux lỗi” quá rộng để chọn phép kiểm tra. Càng giữ rõ ranh giới, bạn càng ít phải thử các thay đổi không liên quan.

Desktop, server, thiết bị nhúng và hệ thống tính toán

Desktop hoặc laptop thường ưu tiên tương tác trực tiếp. Server cung cấp dịch vụ cho client; nó có thể không cài desktop và được quản lý từ xa. Thiết bị nhúng có tài nguyên và công cụ giới hạn. Một cụm tính toán có thể dùng scheduler và chính sách tài nguyên riêng, nên phiên đăng nhập không phải nơi muốn chạy tác vụ nặng nào cũng được.

Vai trò client/server là quan hệ trong một tương tác. Một máy có thể là client khi gửi yêu cầu, đồng thời cung cấp một dịch vụ cho máy khác. Tên gọi server không tự trao quyền quản trị cho người đang đăng nhập. Trước khi chạy công cụ chẩn đoán, hiểu nhiệm vụ máy và phạm vi được phép thao tác.

Ví dụ biên tập: một nhân viên thấy CPU cao trong phiên làm việc từ xa. Dữ liệu đó có thể thuộc server dùng chung, không phải laptop trước mặt. Khởi động lại máy theo phản xạ có thể ảnh hưởng nhiều người. Bước ít tác động là ghi giờ, tiến trình, người dùng và môi trường trước khi chuyển người có trách nhiệm.

Xác định máy đích, danh tính, dữ liệu và tác động trước một thao tác.
Hình 1. Xác định máy đích, danh tính, dữ liệu và tác động trước một thao tác. Mở hình để xem chi tiết.

Máy ảo, container và cloud không phải ba tên đồng nghĩa

Máy ảo thường có kernel guest và đĩa ảo riêng. Container thường chạy tiến trình trong các ranh giới cô lập trên kernel Linux nền. Khi công cụ container chạy trên desktop macOS hoặc Windows, một VM Linux có thể đứng ở giữa. Vì thế nhìn thấy kernel Linux trong container không chứng minh kernel desktop host đã đổi thành Linux.

Cloud là cách cung cấp tài nguyên và dịch vụ. Bạn có thể thuê VM, chạy container hoặc sử dụng database được quản lý. Trách nhiệm cập nhật và sao lưu khác nhau theo dịch vụ. Với một máy cloud tự quản trị, việc nhà cung cấp giữ hạ tầng không tự bảo trì mã ứng dụng hoặc quản lý tài khoản thay bạn.

Mỗi bài lab cần nói rõ đang kiểm tra điều gì. Container phù hợp cho nhiều ví dụ Bash, tệp và xử lý văn bản, nhưng không thay toàn bộ trải nghiệm cài máy, reboot hoặc quản lý systemd làm PID 1. Ngược lại, có VM chưa chứng minh hệ thống ứng dụng trên cloud đã được cấu hình đúng. Bạn phải khớp phạm vi bằng chứng với kết luận.

Quan sát danh tính và vị trí bằng lệnh chỉ đọc

Trong môi trường lab đã chọn, chạy các lệnh sau và ghi mô tả ngắn. Tên máy có thể bị đặt tùy ý, vì vậy một giá trị hostname không phải bằng chứng xác thực độc lập của máy đích. Nếu làm việc từ xa, còn cần kiểm tra thông tin kết nối và cơ chế nhận diện host phù hợp.

hostname
id
pwd
cat /etc/os-release
uname -m

id cho biết UID và nhóm mà tiến trình hiện thấy. pwd cho vị trí shell; os-release mô tả bản phân phối userspace. Những dữ kiện này bổ sung nhau, không một dòng nào xác nhận toàn bộ nơi lưu dữ liệu và quyền được tổ chức cho phép. Một tài khoản có khả năng chạy sudo vẫn cần xem thao tác có nằm trong nhiệm vụ được giao không.

Không dùng các lệnh truy vấn này để thu thập hàng loạt máy ngoài phạm vi. Trong ticket, chỉ gửi thông tin cần thiết và qua kênh được tổ chức chấp thuận. Tên tài khoản, đường dẫn hoặc hostname cũng có thể tiết lộ cấu trúc nội bộ; loại dữ liệu không cần thiết trước khi đăng công khai.

Editor sửa văn bản, không quyết định cấu hình đúng

Các công cụ như nano hoặc vi giúp chỉnh sửa tệp. Bài nhập môn chỉ cần nhận diện rằng editor là phương tiện nhập nội dung; cú pháp và ý nghĩa cấu hình do chương trình đọc tệp quyết định. Lưu được tệp không có nghĩa service đã nạp tệp hoặc cấu hình đã hợp lệ.

Khi một bài sau yêu cầu sửa cấu hình, nó sẽ chỉ ra tệp, quyền, bản sao trước sửa, phép kiểm tra cú pháp và cách áp dụng. Đừng mở editor có quyền cao rồi thay một tệp trong /etc theo một ví dụ không biết dành cho phiên bản nào. Dữ liệu tập gõ đầu tiên nên nằm trong home hoặc thư mục tạm của lab.

Công cụ quản lý cấu hình đưa thay đổi lên nhiều máy còn có phạm vi lớn hơn. Ở mức nhận biết, hiểu rằng inventory, mẫu và credential sai có thể lan cùng lỗi đến nhiều đích. Bạn chưa cần viết automation để học tên công cụ; trước hết phải kiểm soát được một thay đổi trên một máy riêng.

Danh tính, dữ liệu đang truyền và dữ liệu đang lưu cần được xem theo phạm vi riêng.
Hình 2. Danh tính, dữ liệu đang truyền và dữ liệu đang lưu cần được xem theo phạm vi riêng. Mở hình để xem chi tiết.

Giữ bí mật đăng nhập và xác thực đúng dịch vụ

Mật khẩu cần được quản lý theo chính sách tổ chức và không tái sử dụng tùy tiện giữa lab với công việc. Password manager hỗ trợ tạo và lưu credential; MFA bổ sung phương thức xác thực. Passkeys dùng cơ chế khác với việc nhập lại một mật khẩu vào trang web. Những lựa chọn này cần xem hỗ trợ của dịch vụ, thiết bị và cách phục hồi tài khoản.

Điểm thực hành đầu tiên là không nhập bí mật thật vào đoạn lệnh dùng làm ví dụ. Lịch sử shell, ảnh chụp ticket, log của công cụ và tệp cấu hình có thể giữ lại thông tin. Dùng giá trị giả lập khi chia sẻ một lỗi. Đừng gửi khóa riêng SSH chỉ để người khác kiểm tra vì sao đăng nhập thất bại; khóa công khai và khóa riêng có vai trò khác nhau.

Các khái niệm xác thực hiện đại được NIST SP 800-63B-4 phân tích trong phạm vi hướng dẫn danh tính số của tài liệu. Với tổ chức cụ thể, áp dụng theo hệ thống và chính sách được phê duyệt. Bài này giới thiệu cách đặt câu hỏi, không đặt ra quy định mật khẩu mới thay doanh nghiệp.

Mã hóa bảo vệ một phạm vi, không giải quyết mọi lớp

HTTPS bảo vệ kênh truyền theo cơ chế và điều kiện xác minh của TLS. Nó không tự chứng minh người vận hành website đáng tin hoặc nội dung tải xuống an toàn. Mã hóa ổ đĩa bảo vệ dữ liệu trong các điều kiện nhất định; khi người dùng đã đăng nhập và ứng dụng được phép đọc, nó không biến dữ liệu thành không thể bị lấy ra.

Hãy phân biệt dữ liệu đang truyền, đang lưu và đang được ứng dụng sử dụng. Với mỗi trạng thái, hỏi ai có thể truy cập, khóa ở đâu và cần phục hồi thế nào. Không tắt kiểm tra chứng chỉ để “xem thử có chạy không” trên dữ liệu công việc. Sai đồng hồ, sai hostname hoặc thiếu chuỗi chứng chỉ cần chẩn đoán đúng nguyên nhân.

Thiết bị USB cũng là đường đưa dữ liệu và phần mềm vào môi trường. Không gắn USB không rõ nguồn vào máy tổ chức để tò mò. Với lab có passthrough, kiểm tra guest có quyền truy cập thiết bị nào, rồi tháo theo quy trình. Một cửa sổ VM không tự ngăn mọi tương tác với thiết bị host nếu bạn đã bật chia sẻ.

Lab nhận diện dữ liệu có thể giữ lại

Tạo một tệp ghi chú giả lập trong thư mục tạm, đọc nội dung rồi xác nhận đường dẫn. Mục tiêu là hiểu nơi dữ liệu được ghi; không dùng thông tin nhạy cảm. Trong ví dụ, dấu > ghi tệp dưới thư mục mới và có thể ghi đè nếu dùng lại với một đích đang tồn tại.

lpi_context=$(mktemp -d)
printf '%s\n' 'Môi trường học tập; không có mật khẩu thật.' > "$lpi_context/context.txt"
ls -ld -- "$lpi_context"
cat "$lpi_context/context.txt"

Hãy ghi lại môi trường sở hữu đường dẫn đó: guest, container hay máy từ xa. Nếu container bị xóa, tệp không được gắn lưu trữ bền vững có thể mất theo; nếu tệp nằm trong shared folder, nó có thể tồn tại trên host. Chưa tạo bind mount chỉ để làm kết quả bền hơn. Trước hết cần biết bạn muốn giữ gì và ở đâu.

Tự kiểm tra và thông tin chuyển IT

Câu hỏi 1: Terminal đang ở server qua SSH, nhưng bạn muốn xóa tệp tải xuống trên laptop. Có thể dùng cùng một đường dẫn home mà không kiểm tra không? Không; cần xác định máy thực thi và đường dẫn đích. Câu hỏi 2: Có HTTPS thì trang yêu cầu mật khẩu chắc chắn đúng tổ chức? Không; còn phải xác minh tên miền và ngữ cảnh dịch vụ.

Câu hỏi 3: Container trả kernel Linux có chứng minh guest VM đã boot với systemd? Không. Câu hỏi 4: Editor lưu thành công có chứng minh service đã áp cấu hình? Không; cần phép kiểm tra và bước áp dụng của service. Bạn đạt bài khi giải thích được ranh giới đằng sau mỗi câu trả lời.

Khi chuyển IT, cung cấp thao tác cần thực hiện, máy đích đã xác định, thời điểm, đầu vào giả lập nếu có và kết quả quan sát. Nêu rõ phần chưa biết, giữ bí mật ngoài ticket. Đây là cách dùng kiến thức Linux nhập môn để giúp chẩn đoán, kể cả khi bạn chưa có quyền thay cấu hình.

Bài liên quan trong bộ LPI

Tìm hiểu thêm