EVE-NG là một giải pháp ảo hóa mạng được sử dụng để tạo các môi trường thực hành và kiểm tra kiến thức mạng. EVE-NG cung cấp cho người dùng khả năng tạo ra các môi trường mạng phức tạp và mô phỏng các thiết bị mạng khác nhau bằng cách sử dụng các công nghệ ảo hóa.
KVM (Kernel-based Virtual Machine) là một công nghệ ảo hóa trên hệ điều hành Linux cho phép người dùng tạo các máy ảo Linux và Windows. KVM cung cấp khả năng tạo ra các máy ảo trên cùng một hệ thống vật lý và quản lý chúng một cách hiệu quả. KVM sử dụng các tính năng ảo hóa được tích hợp trong nhân Linux để tạo ra các máy ảo, cung cấp hiệu suất và độ tin cậy tốt. KVM là một công nghệ ảo hóa miễn phí và mã nguồn mở, được tích hợp sẵn trên hầu hết các bản phân phối Linux phổ biến.
Để chạy ảo hoá eve trên các nền tảng khác thì quá dễ, còn với KVM thì sẽ khó khăn hơn. Vậy hôm nay mình sẽ hướng dẫn các bạn triển khai eve-ng trên KVM.
Đầu tiên hãy vào link dưới để tải file iso hoặc file OVF về máy. Trường hợp của mình thì mình sẽ tải file OVF và sau đó mình sẽ convert file này sang định dạng mà KVM có thể sử dụng.
https://www.eve-ng.net/index.php/download/
Trang download của EVE sẽ có giao diện như dưới.
Sau khi download xong, nó là 1 file zip, bạn hãy giải nén nó tại máy tính của bạn. Sau khi giải nén xong bạn sẽ có 3 file như dưới.
Tiến hành upload file có đuôi là *.vmdk vào máy chủ KVM, cụ thể như hình ở dưới chính là file EVE-COM-5-0.vmdk.
Đây là kết quả sau khi mình upload EVE-COM-5-0.vmdk xong.
$ ll /volumes-hdd/images | grep EVE-COM-5-0
-rw-r--r-- 1 root root 2912562176 Feb 15 06:58 EVE-COM-5-0.vmdk
Vào thư mục chứa file EVE-COM-5-0.vmdk vừa upload.
cd /volumes-hdd/images
Chạy lệnh dưới để chuyển đổi file vmdk sang qcow2.
qemu-img convert -p -f vmdk -O qcow2 EVE-COM-5-0.vmdk EVE-COM-5-0.qcow2
Kết quả sau khi chuyển đổi xong, mình đã có thêm 1 file EVE-COM-5-0.qcow2.
$ ll /volumes-hdd/images | grep EVE-COM-5-0
-rw-r--r-- 1 root root 6671171584 Feb 15 09:45 EVE-COM-5-0.qcow2
-rw-r--r-- 1 root root 2912562176 Feb 15 06:58 EVE-COM-5-0.vmdk
Bây giờ mọi việc thật đơn giản, bạn hãy tạo ra 2 file như dưới. Cách tạo ra 2 file đó các bạn vui lòng xem lại bài này (bấm vào đây để xem lại).
/volumes-ssd/os/ubuntu20.04/eve-lab/seed-eve-lab.qcow
/volumes-ssd/os/ubuntu20.04/eve-lab/os-eve-lab.qcow2
Network mình sử dụng là bridged-network, bạn có thể xem lại bài trước để biết cách tạo bridged-network (bấm vào đây để xem lại).
bridged-network
Sau khi làm xong các bước trên, chúng ta chạy lệnh sau để khởi tạo máy ảo EVE. Thông tin chi tiết các trường ở lệnh dưới các bạn xem lại bài trước (bấm vào đây để xem lại).
sudo virt-install --name eve-lab
--virt-type kvm --memory 16384 --vcpus 4
--boot hd,menu=on
--disk path=/volumes-ssd/os/ubuntu20.04/eve-lab/seed-eve-lab.qcow2,device=cdrom
--disk path=/volumes-ssd/os/ubuntu20.04/eve-lab/os-eve-lab.qcow2,device=disk
--graphics vnc
--os-type Linux
--os-variant ubuntu18.04
--network network:bridged-network
--console pty,target_type=serial
--noautoconsole
Sau khi chạy xong command trên, mình sử dụng Cockpit Web Console để console vào máy ảo (bấm vào đây để xem lại bài tạo Cockpit Web Console).
Sau khi khởi tạo xong, bạn được đưa tới màn hình login vào máy ảo. Username và password mặc định mình có để trong hình ảnh.
Nếu nhập đúng thông tin, sau khi bấm Enter bạn sẽ được đưa đến màn hình thiết lập lại password root.
Xác nhận lại password.
Đặt tên hostname cho máy ảo.
Nếu có domain name, bạn có thể trỏ ở đây.
Mình chọn phương án đặt ip tĩnh.
Thiết lập IP Address.
Thiết lập netmask.
Thiết lập gateway.
Thiết lập master dns.
Thiết lập secondary dns.
Mình bỏ qua việc thiết lập ntp server.
Mình không có proxy nên mình sẽ chọn direct connection.
Sau khi bấm Enter, màn hình chạy thiết lập lại hệ thống và khởi động lại sau đó. Khi khởi động lại máy ảo, bạn có thể login vào hệ thống bằng password mới.
Kiểm tra network.
Login vào trang EVE bằng url http://<eve-ipaddress>. Thông tin login mặc định là admin/eve.
Và đây là kết quả.
I join. So happens. Let’s discuss this question.