Hướng dẫn ngắn gọn này sẽ giải thích cách bạn có thể mã hóa và bảo vệ tệp bằng mật khẩu trong Linux bằng công cụ GPG (GNU Privacy Guard) – đảm bảo chỉ bạn mới có thể truy cập nội dung.
Chuẩn bị
Chọn một mật khẩu mạnh. Khuyến khích dùng trình tạo mật khẩu hoặc passphrase dài, kết hợp chữ hoa, chữ thường, số, ký tự đặc biệt. Ví dụ: Rv7fkcxASW8h!2024.
Kiểm tra xem gpg đã cài đặt chưa:
# whereis gpg
gpg: /usr/bin/gpg /usr/share/man/man1/gpg.1.gz
Nếu chưa có, cài đặt qua trình quản lý gói:
- Debian/Ubuntu:
sudo apt install gnupg - RHEL/CentOS/Fedora:
sudo dnf install gnupg2(hoặcyum install gnupg2) - Arch:
sudo pacman -S gnupg
Mã hóa tệp (Symmetric Encryption)
Giả sử bạn muốn bảo vệ tệp dbbackup.zip với mật khẩu Rv7fkcxASW8h!2024:
# gpg -c dbbackup.zip
- -c (--symmetric): Mã hóa đối xứng (dùng mật khẩu, không dùng cặp khóa công khai/riêng tư).
- Bạn sẽ được yêu cầu nhập passphrase 2 lần để xác nhận.
Kết quả: Tệp dbbackup.zip.gpg được tạo ra – đây là bản mã hóa. Tệp gốc dbbackup.zip vẫn giữ nguyên (bạn có thể xóa thủ công nếu muốn).
Giải mã tệp
Khi cần đọc nội dung, chạy:
# gpg dbbackup.zip.gpg
- Nhập passphrase đã đặt lúc mã hóa.
- Tệp gốc dbbackup.zip sẽ được khôi phục (ghi đè nếu đã tồn tại – cẩn thận!).
Lưu ý quan trọng: GPG đối xứng chỉ làm việc với tệp đơn lẻ, không phải thư mục. Để mã hóa thư mục, hãy nén thành .tar.gz trước:
# tar -czf backup.tar.gz /path/to/folder
# gpg -c backup.tar.gz
Các tùy chọn nâng cao
| Tùy chọn | Chức năng |
|---|---|
--cipher-algo AES256 | Chỉ định thuật toán mã hóa (mặc định thường là AES-128) |
--output file.gpg | Đặt tên tệp đầu ra tùy chỉnh |
--armor | Xuất dạng ASCII (base64) thay vì nhị phân – tiện gửi email |
--batch --yes --passphrase "pwd" | Tự động hóa trong script (KHÔNG an toàn cho mật khẩu thật) |
Ví dụ hoàn chỉnh với thuật toán mạnh
# Mã hóa thư mục với AES-256
tar -czf - /path/to/data | gpg --cipher-algo AES256 -c --output data.tar.gz.gpg
# Giải mã
gpg --output - --decrypt data.tar.gz.gpg | tar -xzf -
So sánh với Windows
Trên Linux, GPG có sẵn, chuẩn mở, dòng lệnh mạnh mẽ cho tự động hóa. Trên Windows thường cần cài phần mềm bên thứ ba (7-Zip, VeraCrypt, GPG4Win) và thao tác qua GUI nhiều hơn.