Sơ suất bảo mật có thể dẫn đến các hậu quả từ trộm cắp thông tin và nhiễm vi-rút cho đến việc người dùng truy cập trái phép vào máy Linux của bạn. Bài viết này liệt kê các cách an toàn để tải xuống phần mềm trên Linux.
1. Kiểm tra giá trị băm (hash value)
Giá trị băm (hoặc giá trị tổng kiểm – checksum) là một chuỗi ký tự gồm chữ và số được tạo ra khi một số dữ liệu được truyền qua một hàm mật mã (cryptographic function). Nó hoạt động như một chữ ký điện tử cho tập tin của bạn.
Để đảm bảo rằng bạn chưa tải xuống tệp bị hỏng, một số trang web nguồn mở thường cung cấp hàm băm dự kiến mà bạn sẽ nhận được sau khi hoàn tất tải xuống tệp.
Ví dụ bạn đang tải xuống Tomcat 10, một máy chủ web phổ biến. Giá trị băm cho Tomcat phiên bản 10.0.6 là:
3d39b086b6fec86e354aa4837b1b55e6c16bfd5ec985a82a5dd71f928e3fab5370b2964a
5a1098cfe05ca63d031f198773b18b1f8c7c6cdee6c90aa0644fb2f2 *apache-tomcat-10.0.6.tar.gz
Phần *apache-tomcat-10.0.6.tar.gz là tên tệp. Các giá trị từ 3d39…2f2 bao gồm giá trị băm.
Để có được giá trị này, bạn cần vào thư mục mà bạn đã tải xuống tệp lưu trữ và chạy lệnh sau:
sha512sum apache-tomcat-10.0.6.tar.gz
Bạn sẽ nhận được giá trị băm trên. Nếu bạn nhận được một giá trị khác, điều đó có nghĩa là bản tải xuống của bạn đã bị hỏng và bạn cần xóa nó ngay lập tức.
Trong ví dụ này, hàm băm mà chúng tôi sử dụng là sha512. Đó là bởi vì đây là hàm mà nền tảng Tomcat của Apache đã quyết định sử dụng để bảo vệ tính toàn vẹn của các bản tải xuống của họ.
Các trang web khác có thể sử dụng các hàm băm khác nhau, ví dụ như các hàm phổ biến sha256 và sha384.
Trong trường hợp trang web đang sử dụng các hàm băm khác, tất cả những gì bạn cần làm là thay thế tên của lệnh bằng hàm băm.
sha256sum filename-of-download
sha384sum filename-of-download
Cũng cần lưu ý rằng tệp chúng tôi đã sử dụng là tệp TAR (tức là tệp lưu trữ). Nhưng nếu bạn đã tải xuống một tệp nhị phân thì sao? Trên Linux, bạn sẽ nhận được kết quả băm giống nhau bất kể loại tệp.
Chế độ mặc định của các hàm băm trên Linux là chữ. Do đó, để chuyển sang chế độ nhị phân, hãy sử dụng tùy chọn -b như sau:
sha256sum -b filename
2. Sử dụng các trang web an toàn
Nhận các bản tải xuống của bạn từ các trang web an toàn giúp giảm nguy cơ nhiễm phần mềm độc hại một cách đáng kể. Theo nguyên tắc thông thường, bạn phải luôn sử dụng trang tải xuống chính thức của phần mềm bạn muốn. Nếu vì lý do nào đó mà bạn không thể tìm thấy trang web chính thức, thì hãy cân nhắc sử dụng một trang web đáng tin cậy như FileHorse và SourceForge. Các trang web này đã tồn tại trong một thời gian dài và đã giành được sự tin tưởng của người dùng.
3. Tự biên dịch mã nguồn
Một trong những lý do lớn nhất khiến cộng đồng nguồn mở tồn tại là bạn không cần phải đặt niềm tin vào các công ty phần mềm lớn và hy vọng rằng họ không làm bất cứ điều gì trái phép trên thiết bị của bạn.
Khi bạn tải xuống các tệp nhị phân, bạn đã trao một số quyền cho người biên dịch mã. Nhưng nếu bạn có quyền truy cập vào mã nguồn, bạn có thể lấy lại quyền lực về tay mình.
Với nguồn mở, bạn có thể xác minh một cách độc lập rằng phần mềm thực hiện chính xác những gì tác giả của nó nói. Hạn chế duy nhất là bạn cần có kỹ năng lập trình trên trung bình. Bạn cũng sẽ cần có kiến thức nhất định về chủ đề liên quan.
Bạn cũng có thể quyết định chỉ kiểm tra qua các tệp quan trọng chính.
Ví dụ: giả sử bạn có một số mã nguồn C được sao chép từ kho lưu trữ GitHub. Dưới đây là cách bạn sẽ tự biên dịch nó.
Chạy lệnh bên dưới để cài đặt gói build-essential. Gói chứa các công cụ quan trọng cần thiết khi xây dựng phần mềm trên Linux.
sudo apt-get install build-essential
Bây giờ hãy biên dịch mã C bằng trình biên dịch gcc.
gcc program-name.c -o program-name
Sau khi biên dịch, bạn có thể chạy chương trình bằng cách gõ:
./program-name
4. Sử dụng Trình quản lý gói chính thức
Cách dễ nhất để cài đặt, cập nhật và gỡ cài đặt phần mềm là sử dụng trình quản lý gói như pacman, dpkg, DNF và APT. Trình quản lý gói làm việc trực tiếp với kho phần mềm chính thức và cửa hàng ứng dụng.
Trình quản lý gói thực hiện rất nhiều công việc nặng nhọc cho bạn. Chúng xử lý các hoạt động như quản lý các thành phần phụ thuộc mà phần mềm cần, đảm bảo tính toàn vẹn và tính xác thực của quá trình tải xuống cũng như quản lý việc lập phiên bản.
Một điều tốt nữa là bản phân phối của bạn thường được cài đặt sẵn trình quản lý gói. Ví dụ: Debian 10 đi kèm với APT và các hệ thống dựa trên Arch đi kèm với pacman.
5. Nghiên Cứu Cá Nhân
Thế giới phần mềm là một nơi luôn thay đổi và bắt kịp các xu hướng bảo mật là việc rất cần thiết để giữ an toàn khỏi các nguy cơ an ninh mạng. Có một số tùy chọn cài đặt mà bạn có thể chọn trong các tình huống khác nhau. Ví dụ: cài đặt phần mềm trên máy ảo hoặc container hóa ứng dụng.
Container hóa ứng dụng là một xu hướng đặc biệt thú vị vì nó đảm bảo rằng các ứng dụng của bạn chạy theo cùng một cách trong các môi trường thực thi khác nhau.
Khả năng tách biệt việc thực thi lõi phần mềm và các thành phần phụ thuộc khỏi cơ sở hạ tầng bên dưới mang lại khả năng bảo mật chưa từng có.
Bạn cũng nên xem các bài đánh giá phần mềm và theo dõi các cuộc thảo luận trên GitHub. Đánh giá phần mềm cung cấp một bức tranh toàn cảnh về những gì bạn có thể mong đợi sau khi tải xuống, hành động không mong muốn của phần mềm mà người dùng có thể đã quan sát thấy và các đề xuất của họ.
Các cuộc thảo luận trên GitHub cũng có thể giúp bạn biết bạn nên thực hiện các biện pháp nào sau/trong quá trình cài đặt phần mềm. Bạn cũng có thể được giới thiệu nhiều biện pháp bảo mật khác không có trong tài liệu chính thức.
Bạn cũng nên chú ý đến các nhánh có nhiều người đóng góp trên GitHub. Có thể có những thay đổi về giao thức đang diễn ra và việc bạn không thể theo kịp các bản cập nhật này sẽ ảnh hưởng đến bảo mật của bạn.
Thói quen tốt
Luôn cập nhật danh sách kho lưu trữ và gói hệ thống của bạn trước khi tải xuống bất kỳ phần mềm chính nào là một thói quen tốt. Mọi trình quản lý gói, chẳng hạn như pacman trong Arch Linux, đều cung cấp cho bạn tùy chọn cài đặt, cập nhật và xóa gói.
Sau khi đảm bảo rằng các gói đã cài đặt được cập nhật, bạn có thể tiếp tục tải xuống phần mềm bạn cần. Bất cứ khi nào có thể, nếu bạn có thể tải xuống một gói bằng trình quản lý gói của mình, thì hãy làm như vậy. Đây là cách dễ và an toàn nhất để cài đặt và cập nhật phần mềm trên Linux.
Tìm hiểu ngay chương trình học công nghệ thông tin trực tuyến tại FUNiX ở đây:
Vân Nguyễn
Dịch từ: https://www.makeuseof.com/ways-to-safely-download-software-on-linux/










Bình luận (0
)