CLAMAV LÀ GÌ

  -  

Xin chào hầu hết người, chắc rằng mọi tín đồ đều làm qua chức năng upload file trên một khối hệ thống nào đó. Để nâng cấp tính năng upload của chính bản thân mình pro hơn, nay bản thân sẽ giới thiệu mọi fan cách kiểm tra file upload gồm chứa virus, tránh gây nguy nan cho hệ thống của mình. Ở phía trên mình sẽ áp dụng trên áp dụng Ruby on Rails nhé

1. ClamAV là gì?

ClamAV(Clam AntiVirus) là bộ công cụ ứng dụng chống vi-rút miễn phí, đa nền tảng gốc rễ và mã mối cung cấp mở có thể phát hiện các loại ứng dụng độc hại, bao gồm cả vi-rút. Trong số những ứng dụng chủ yếu của nó là trên những máy chủ mail như một trình quét virus e-mail phía lắp thêm chủ. Sơ sơ khái niệm là như vậy, đơn giản dễ dàng nó là một service cung ứng quét virus, đi build nó cùng vọc vạch xí nào.

Bạn đang xem: Clamav là gì

2. Thiết lập môi trường.

Đầu tiên bọn họ sẽ thiết lập môi ngôi trường trên thiết bị (Ở phía trên mình sẽ setup trên môi trường xung quanh Ubuntu)

sudo apt-get install clamav-daemon clamav-freshclam clamav-unofficial-sigssudo freshclamsudo service clamav-daemon startNếu chạy sudo freshclam bị lỗi thì mọi bạn nên tắt server của clamav-daemon đi bởi cáchsudo systemctl stop clamav-freshclam.serviceNgoài ra đã có một trong những bạn chạm mặt phải lỗi chẳng thể downoad database của clamav được thì mọi người hãy vào băng thông /etc/clamav/freshclam.conf rồi tìm về dòng tất cả chứa ReceiveTimeout cùng sửa lại quý giá thành 3000 rồi đi chạy lại freshclam. Cơ mà nhớ tải xong xuôi thì restart service clamav-deamon lại nhé.Vậy là cài đặt môi trường đã xong, bọn họ cùng nhau mày mò gem clamby nào

*

3. Gem clamby

Để thực hiện được clamav trong ứng dụng của mình thì bọn họ cùng nhau khám phá gem clamby nhé.

Trong ứng dụng của chính bản thân mình bạn có áp dụng 2 method của clamby cung cấp

Clamby.safe?(path_to_file) nó đang trả về true nếu tệp tin đó không kiếm thấy virus, còn nếu tất cả virus thì nó đang trả về false. Hình như nó đã trả về nil khi sử dụng clamscan chạm mặt vấn đề.

Xem thêm: Malaysia Nói Tiếng Gì ? Tìm Hiểu Ngôn Ngữ Malaysia Malaysia Nói Tiếng Gì

Clamby.virus?(path_to_file) nó vẫn trả về false nếu file đó không kiếm thấy virus, còn nếu gồm virus thì nó sẽ trả về true. Dường như nó đã trả về nil khi áp dụng clamscan chạm chán vấn đề.

Hai hàm này bạn áp dụng hàm nào cũng được, miễn là dễ ợt cho các bạn viết code.

Xem thêm: Motherboard Là Gì ? Tìm Hiểu Kỹ Hơn Về Mainboard (Bo Mạch Chủ)

4. Phương pháp sử dụng

Kiểm tra file có chứa virus trước khi lưu vào Database

before_create :scan_for_viruses private def scan_for_viruses path = self.attribute.path scan_result = Clamby.safe?(path) if scan_result return true else File.delete(path) return false over endNếu bạn sử dụng gem carriwewave để upload thì trong quá trình xử lý file mình đang tiến hành check file đó xem bao gồm virus không rồi mới thực hiện encode file để lưu. Ở trên đây mình tất cả ví dụ upload phim chẳng hạn.

app/uploaders/upload_video.rb

class UploadVideo Ở bên controller chỉ cần gọi ra như vậy này

app/controller/upload_video_controller.rb

class UploadVideoController e render json: message: e.message endend

Kết luận

Bài viết của mình đến đấy là kết thúc, hy vọng nội dung bài viết này để giúp đỡ cho chúng ta có thêm một số trong những kiến thức bắt đầu và áp dụng vào hệ thống của bản thân mình trở nên xịn xò hơn. Cảm ơn các bạn đã theo dõi nội dung bài viết này nhé
*