Tuan rumah memiliki IP eksternal tunggal yang tersedia, jadi saya mengatur tamu KVM saya dengan NAT.
Bagaimana cara mengatur penerusan port untuk meneruskan beberapa permintaan dari luar ke tamu?
Saya tidak dapat menemukan dokumentasi tentang ini. Jawaban terdekat mungkin adalah jawaban ini , tetapi kemudian disebutkan juga bahwa ada cara yang lebih mudah untuk melakukan ini di libvirt 0.8.3. Adakah yang tahu cara terkini untuk melakukan ini?
Jawaban:
Berikut adalah cara yang lebih baik untuk mengatur penerusan port, menggunakan skrip kait ( sumber ).
Dalam
/etc/libvirt/hooks/qemu
:Anda harus mengatur empat variabel di bagian atas agar sesuai dengan pengaturan libvirt Anda.
Anda perlu me-restart libvirt-bin, yang di ubuntu dilakukan dengan:
maka Anda perlu me-restart tamu. Di Ubuntu, Anda perlu menyesuaikan
/etc/apparmor.d/usr.sbin.libvirtd
untuk memungkinkan skrip kait dijalankan:Di samping
menambahkan
Kemudian muat ulang apparmor:
Mungkin ada cara untuk melakukan konfigurasi otomatis
$GUEST_IPADDR
menggunakan virsh / dumpxml / iface-dumpxml, tapi saya belum menemukannya. Atau, IP dapat diatur secara statis di jaringan xml: dokumentasi .Sejauh yang saya tahu, filter jaringan hanya dapat digunakan untuk membatasi apa yang terjadi pada jaringan virtual, dan mereka tidak berguna untuk penerusan porta.
sumber
/etc/libvirt/hooks/** rmix,
dalam file konfigurasi apparmor secara default, dan tampaknya memiliki efek yang sama. Saya dapat menjalankan skrip tanpa mengubah konfigurasi apparmor.Saya dalam situasi yang sama. Saya memiliki Windows Server yang berjalan di KVM di jaringan NATed pribadi yang terhubung pada host melalui antarmuka virbr0. Saya ingin mengakses VM melalui desktop jarak jauh. Jadi saya harus meneruskan lalu lintas ke port 3389 (RDP) ke port VM 3389. Saya telah mencapai ini dengan beberapa aturan iptable.
HOST-IP, VM-IP, dan VM-NET harus diadopsi tentu saja. Namun mengacaukan iptables dan libvirt itu sulit. Saat ini saya sedang mencari solusi untuk mendapatkan akses internet di VM saya yang telah hilang karena mengacaukan aturan iptable :-(
sumber
Saya percaya bahwa jawaban yang Anda referensi masih menunjukkan aturan iptables yang sesuai. Namun, sekarang Anda bisa menggunakan kait skrip untuk membuat dan menghancurkan aturan ketika mesin virtual dimulai dan dihentikan. Seperti kata Isaac dalam jawaban sebelumnya, ada juga filter jaringan di libvirt saat ini, tetapi saya tidak yakin bagaimana atau bahkan jika mereka dapat digunakan untuk membuka port untuk tamu NATed.
sumber
bagaimana pengaturan jaringan tamu? jika sudah dijembatani, yang perlu Anda lakukan hanyalah meneruskan port ke IP tamu. Jika tamu Anda berada di belakang NAT lain, satu libvirt diatur, maka itu menjadi rumit
tetapi bagaimanapun, di sini Anda hanya memperlakukan VM seperti yang Anda lakukan pada mesin fisik
sumber