Předpoklady
Chcete-li vyzkoušet příklady v tomto článku, musíte mít ve svém počítači nainstalovaný KVM. Pokud nemáte v počítači nainstalovaný KVM, můžete si přečíst následující články na LinuxHint.com o pomoc s instalací KVM na požadovanou distribuci Linuxu.
- Nainstalujte KVM na Ubuntu 20.04
- Nainstalujte KVM na CentOS 8
Vytváření virtuálního stroje CentOS 8 KVM
Tato část ukazuje, jak vytvořit virtuální počítač CentOS 8 KVM pro testování připojení SSH.
Nejprve si stáhněte instalační obraz ISO CentOS 8. Chcete-li mít všechny soubory / data virtuálního stroje uspořádané, je vhodné uložit obraz ISO do souboru / kvm / iso / adresář.
Přejděte na / kvm / iso / adresář s následujícím příkazem:
$ cd / kvm / iso
Odkaz na instalační obraz ISO CentOS 8 najdete na oficiálním webu ISO CentOS.
Jakmile se stránka načte, klikněte na nejbližší zrcadlo CentOS 8.
Měly by být uvedeny všechny dostupné instalační obrazy CentOS 8 ISO.
Pro tento článek si stáhnu instalační obraz NetBoot ISO CentOS 8. Chcete-li nainstalovat CentOS 8 na virtuální stroj KVM pomocí instalačního obrazu NetBoot ISO, vyžaduje virtuální stroj připojení k internetu.
Pokud nechcete konfigurovat síť při instalaci CentOS 8 na virtuální počítač, vyberte buď minimální nebo DVD ISO instalační obrázek CentOS 8.
Kliknutím pravým tlačítkem (RMB) na soubor ISO stáhněte a zkopírujte odkaz na soubor ISO.
Stáhněte si instalační obraz ISO CentOS 8 pomocí wget, jak následuje:
$ sudo wget http: // zrcadlo.dhakacom.com / centos /8.2.2004 / isos / x86_64 / CentOS-8.2.2004-x86_64-boot.iso
wget by měl začít stahovat ISO obraz CentOS 8. Dokončení bude chvíli trvat.
V tomto okamžiku by měl být stažen obraz ISO CentOS 8.
Obraz ISO CentOS 8 je k dispozici v / kvm / iso / adresář, jak vidíte na následujícím obrázku.
$ ls -lh
Po stažení ISO obrazu CentOS vytvořte virtuální stroj KVM pomocí následujícího příkazu:
$ sudo virt-install --name centos8-01 \--linux typu os \
--os-varianta centos8 \
--beran 2048 \
--disk / kvm / disk / centos8-01.img, device = disk, bus = virtio, size = 10, format = qcow2 \
--graphics vnc, listen = 0.0.0.0 \
--noautoconsole \
--hvm \
--cdrom / kvm / iso / CentOS-8.2.2004-x86_64-boot.iso \
--boot cdrom, hd
Název virtuálního stroje bude centos8-01.
Typ operačního systému je linux a varianta je centos8.
RAM (Random Access Memory) virtuálního počítače bude 2048 MB nebo 2 GB.
Virtuální disk virtuálního počítače bude uložen v / kvm / disk / centos8-01.obr soubor. Virtuální disk je o 10 GB ve velikosti a formátu je QCOW2 (QEMU Copy-On-Write v2).
Virtuální počítač bude přístupný prostřednictvím protokolu vzdálené plochy VNC (Virtual Network Computing) a server VNC bude naslouchat na všech dostupných síťových rozhraních nakonfigurovaných na hostiteli KVM.
Po vytvoření virtuálního počítače se hostitel KVM automaticky nepokusí připojit k virtuálnímu počítači. Virtuální stroj bude nadále fungovat na pozadí.
Použijte úplnou virtualizaci pro virtuální stroj. Díky tomu budou virtuální stroje fungovat lépe.
Použijte obrázek ISO CentOS 8 dříve stažený jako virtuální disk CD / DVD ROM virtuálního stroje. Používá se k instalaci CentOS 8 na virtuální počítač.
Nastaví pořadí zavádění virtuálního počítače. První spouštěcí položka je virtuální disk CD / DVD ROM a poté virtuální pevný disk. Virtuální stroj bude tedy schopen zavést systém z obrazu ISO CentOS 8 a nainstalovat CentOS 8 na pevný disk.
To jsou všechny možnosti, které potřebujete k vytvoření virtuálního stroje KVM.
Jakmile spustíte virt-install příkaz, KVM by měl začít vytvářet virtuální stroj. To může chvíli trvat, v závislosti na konfiguraci virtuálního počítače.
V tomto okamžiku by měl být vytvořen virtuální stroj KVM.
Jak vidíte, nově vytvořený virtuální stroj centos8-01 běží.
Nyní se můžete připojit k virtuálnímu počítači pomocí libovolného klientského programu VNC a nainstalovat na něj CentOS 8. Chcete-li se připojit k virtuálnímu počítači pomocí VNC, musíte znát číslo portu VNC virtuálního počítače.
Vyhledání čísla portu VNC virtuálního počítače KVM centos8-01, spusťte následující příkaz:
$ virsh vncdisplay centos8-01Jak vidíte, číslo portu VNC na centos8-01 virtuální stroj je 1.
Tady, přístav 0 znamená přístav 5900. Stejným způsobem port 1 znamená přístav 5901, a tak dále.
Jak vidíte, virtuální stroj KVM centos8-01 běží na portu 5901 (: 1).
$ sudo netstat -tln
Pokud váš hostitel KVM používá operační systém CentOS 8, můžete povolit přístup k portu 5901 s následujícím příkazem:
$ sudo firewall-cmd --add-port = 5901 / tcp - stálý
Aby se změny brány firewall projevily, spusťte následující příkaz:
$ sudo firewall-cmd --reload
Pokud váš hostitel KVM používá Ubuntu 20.04 LTS operační systém, můžete povolit přístup k portu 5901 s následujícím příkazem:
$ sudo ufw povolit 5901 / tcp
Aby se změny brány firewall projevily, spusťte následující příkaz:
$ sudo ufw znovu načíst
Pomocí následujícího příkazu vyhledejte adresu IP svého hostitele KVM:
$ hostname -I | tr "" "\ n"Moje domácí síť používá podsíť sítě 192.168.20.0/24. Takže IP adresa mého hostitele KVM je 192.168.20.131. Ostatní IP adresy jsou mosty privátní sítě hostitele KVM.
Otevřete libovolný klientský program VNC a připojte se k adrese 192.168.20.131: 1.
Mělo by se zobrazit instalační okno CentOS 8, jak je znázorněno na následujícím obrázku. CentOS 8 můžete nainstalovat na virtuální stroj KVM jako obvykle.
Instaluji minimální serverovou verzi CentOS 8 pro demonstraci v tomto článku.
CentOS 8 se instaluje do virtuálního stroje KVM centos8-01, jak vidíte na snímku obrazovky níže. Dokončení může chvíli trvat.
Jakmile je CentOS 8 nainstalován na virtuálním počítači, klikněte na Restartujte.
Virtuální stroj KVM centos8-01 by se měly automaticky vypínat, jak vidíte na následujícím obrázku.
$ sudo virsh list - vše
Spusťte centos8-01 Virtuální stroj KVM s následujícím příkazem:
$ virsh start centos8-01
Nyní se můžete připojit k centos8-01 virtuální stroj z klienta VNC, jako dříve. Jak vidíte, minimální server CentOS 8 běží ve virtuálním stroji KVM dobře.
Instalace serveru SSH na virtuální počítač CentOS 8
Hlavním cílem tohoto článku je připojení k virtuálnímu počítači CentOS 8 KVM přes SSH. Abyste se k němu mohli připojit přes SSH, musíte mít na svém virtuálním stroji CentOS 8 KVM nainstalován server SSH.
Nainstalujte server OpenSSH na virtuální počítač CentOS 8 KVM pomocí následujícího příkazu:
$ sudo dnf install openssh-server -y
Nyní by měl být nainstalován server OpenSSH. V mém případě je již nainstalován.
Potvrďte, že sshd služba je běh a povoleno s následujícím příkazem:
$ sudo systemctl status sshd
Pokud sshd služba není spuštěna, můžete ji spustit následujícím příkazem:
$ sudo systemctl start sshdPokud sshd služba je zakázána, můžete ji povolit pomocí následujícího příkazu:
$ sudo systemctl povolit sshdKonfigurace brány firewall virtuálního počítače CentOS 8
Musíte nakonfigurovat bránu firewall virtuálního počítače tak, aby umožňovala přístup k portu SSH. Jinak se nebudete moci připojit k virtuálnímu počítači přes SSH, i když jsou všechny konfigurace v pořádku.
Povolit přístup SSH k virtuálnímu stroji KVM centos8-01, spusťte následující příkaz:
$ sudo firewall-cmd --add-service = ssh --permanent
Aby se změny brány firewall projevily, spusťte následující příkaz:
$ sudo firewall-cmd --reload
Metoda 1: Přístup k virtuálním strojům prostřednictvím tunelování SSH
Ve výchozím nastavení používá KVM most soukromé sítě výchozí pro síťování virtuálních strojů. Podsíť IP adresy mostu soukromé sítě KVM výchozí není přístupný z domácí sítě. Je přístupný pouze z hostitele KVM. Chcete-li tedy SSH do svého virtuálního počítače CentOS 8 KVM z jiného počítače (ve vaší domácí síti), musíte obejít připojení prostřednictvím hostitele KVM. Tomu se říká tunelování SSH a funguje podobně jako VPN.
Aby tunelování SSH fungovalo, musí mít váš hostitel KVM nainstalovaný server SSH a musíte mít SSH přístup k hostiteli KVM.
Pokud na vašem hostiteli KVM běží CentOS 8, můžete na svůj hostitel KVM nainstalovat server OpenSSH pomocí následujícího příkazu:
$ sudo dnf install openssh-server -y
Pokud váš hostitel KVM používá Ubuntu 20.04 LTS, pak můžete nainstalovat OpenSSH server na svého hostitele KVM pomocí následujícího příkazu:
$ sudo apt install openssh-server -yPotvrďte, že sshd služba je běh a povoleno s následujícím příkazem:
$ sudo systemctl status sshd
Pokud sshd služba není spuštěna, můžete ji spustit následujícím příkazem:
$ sudo systemctl start sshdPokud sshd služba je zakázána, můžete ji povolit pomocí následujícího příkazu:
$ sudo systemctl povolit sshdMožná budete muset nakonfigurovat bránu firewall svého hostitele KVM, aby k ní umožnil přístup SSH.
Pokud váš hostitel KVM používá operační systém CentOS 8, nakonfigurujte bránu firewall spuštěním následujícího příkazu:
$ sudo firewall-cmd --add-service = ssh --permanent
Aby se změny projevily, spusťte následující příkaz:
$ sudo firewall-cmd --reload
Pokud váš hostitel KVM používá Ubuntu 20.04 LTS operating system, run the following command to configure the firewall:
$ sudo ufw povolit ssh
Aby se změny projevily, spusťte následující příkaz:
$ sudo ufw znovu načíst
Váš virtuální stroj CentOS 8 KVM centos8-01 může být vypnuto.
$ sudo virsh list - vše
V takovém případě můžete virtuální stroj spustit pomocí následujícího příkazu:
$ sudo virsh start centos8-01
Připojte se k virtuálnímu počítači CentOS 8 pomocí klienta VNC a spusťte následující příkaz na virtuálním počítači a vyhledejte jeho soukromou IP adresu:
$ hostname -IV mém případě je soukromá IP adresa mého virtuálního počítače CentOS 8 KVM 192.168.122.89. To se může u vás lišit.
Pomocí následujícího příkazu vyhledejte adresu IP svého hostitele KVM:
$ hostname -I | tr "" "\ n"V mém případě je IP adresa 192.168.20.131. Vím to, protože moje domácí síť používá podsíť 192.168.20.0/24.
Chcete-li vytvořit tunel na virtuální počítač CentOS 8 KVM prostřednictvím hostitele KVM, spusťte z počítače následující příkaz:
$ ssh -L 2200: 192.168.122.89:22 shovon @ 192.168.20.131
Tady -L volba slouží k tomu, aby řekla SSH, aby provedla přesměrování místního portu.
Tím budou předány všechny požadavky přicházející z localhost přístav 2200 do přístavu 22 virtuálního stroje CentOS 8 KVM, který má privátní IP adresu 192.168.122.89.
Protože počítač nemá přímý přístup k síťové podsíti virtuálního stroje CentOS 8 KVM 192.168.122.0/24, tuneluje požadavek prostřednictvím hostitele KVM, který má přímý přístup k této podsíti sítě.
Tady, 192.168.20.131 je IP adresa hostitele KVM a šovon je přihlašovací uživatelské jméno SSH hostitele KVM.
Po spuštění příkazu můžete obdržet následující otázku. Typ Ano a stiskněte
Zadejte heslo přihlašovacího uživatele vašeho hostitele KVM a stiskněte
Nyní byste měli být připojeni k hostiteli KVM přes SSH.
Nyní můžete SSH do svého virtuálního stroje CentOS 8 KVM na localhost přístav 2200 jak následuje:
$ ssh shovon @ localhost -p 2200
Tady, šovon je přihlašovací uživatelské jméno virtuálního stroje CentOS 8 KVM.
Po spuštění příkazu můžete obdržet následující otázku. Typ Ano a stiskněte
Zadejte heslo přihlašovacího uživatele vašeho virtuálního počítače CentOS 8 KVM a stiskněte
Nyní byste měli být připojeni k virtuálnímu počítači CentOS 8 KVM běžícím na vašem hostiteli KVM přes SSH, jak vidíte na následujícím obrázku.
Můžete také spustit libovolný požadovaný příkaz.
Metoda 2: Přístup k virtuálním strojům přes KVM Public Network Bridge
Pokud chcete plný přístup k virtuálnímu počítači CentOS 8 KVM, můžete nakonfigurovat veřejný síťový most KVM. Veřejný síťový most KVM funguje jako síťový přepínač. Váš virtuální počítač CentOS 8 KVM získá adresu IP ze stejného serveru DHCP jako domácí síť a ve stejné síti podsíť jako domácí síť. Bude tedy přístupný ze všech zařízení připojených k vaší domácí síti.
Již jsem vytvořil most veřejné sítě KVM veřejnost a nakonfiguroval můj virtuální počítač CentOS 8 KVM pro použití mostu. Ve svém článku vysvětluji proces vytváření mostu veřejné sítě KVM Jak vytvořit síťové rozhraní Bridge CentOS 8 KVM. Nezapomeňte se na to podívat.
Jakmile vytvoříte most veřejné sítě KVM, musíte svůj virtuální počítač CentOS 8 nakonfigurovat tak, aby most používal. Před konfigurací virtuálního stroje CentOS 8 centos8-01, pomocí následujícího příkazu zkontrolujte, zda běží virtuální stroj CentOS 8 KVM:
$ sudo virsh list - všeJak vidíte, virtuální stroj CentOS 8 KVM centos8-01 běží. Měli bychom to zastavit, než to nakonfigurujeme.
Virtuální stroj CentOS 8 KVM můžete vypnout centos8-01 s následujícím příkazem:
$ sudo virsh vypnutí centos8-01
Jak vidíte, virtuální počítač CentOS 8 KVM je vypnutý.
$ sudo virsh list - vše
Ve výchozím nastavení používá virtuální počítač CentOS 8 KVM výchozí most soukromé sítě. Nakonfiguruji jej tak, aby používal veřejnost síťový most, který jsem již vytvořil.
$ sudo virsh net-list - vše
Chcete-li upravit konfiguraci virtuálního počítače CentOS 8 KVM, spusťte následující příkaz:
$ sudo virsh editovat centos8-01
Najít rozhraní sekce, jak je vyznačeno na snímku obrazovky níže. Změň zdroj síť z výchozí na veřejnost.
POZNÁMKA: Ve výchozím nastavení se otevře konfigurační soubor s textovým editorem Vi. Chcete-li upravit konfigurační soubor ve Vi, stiskněte i jít do VLOŽIT režimu. Chcete-li uložit konfigurační soubor, stiskněte
Konfigurace virtuálního počítače by nyní měla být změněna.
Spusťte virtuální počítač CentOS 8 KVM pomocí následujícího příkazu:
$ sudo virsh start centos8-01
Nyní se připojte k virtuálnímu počítači CentOS 8 KVM pomocí klienta VNC. Zkontrolujte IP adresu virtuálního stroje pomocí následujícího příkazu:
$ hostname -IJak vidíte, IP adresa je 192.168.20.133. Tato adresa IP byla dodána serverem DHCP mé domácí sítě. Toto je IP adresa podsítě sítě 192.168.20.0/24, což je podsíť mé domácí sítě.
Nyní se můžete připojit k virtuálnímu počítači CentOS 8 KVM z libovolného počítače připojeného k domácí síti, a to následovně:
$ ssh shovon @ 192.168.20.133
Tady, šovon je přihlašovací uživatelské jméno virtuálního stroje CentOS 8 KVM.
Po spuštění příkazu můžete obdržet následující otázku. Typ Ano a stiskněte
Zadejte heslo přihlašovacího uživatele vašeho virtuálního počítače CentOS 8 KVM a stiskněte
Nyní byste měli být připojeni k virtuálnímu počítači CentOS 8 KVM běžícím na vašem hostiteli KVM přes SSH, jak vidíte na následujícím obrázku.
Zde můžete spustit libovolný požadovaný příkaz.
Závěr
Tento článek vám ukázal, jak vytvořit virtuální stroj KVM CentOS 8 a připojit se k virtuálnímu počítači přes SSH. Když virtuální počítač CentOS 8 KVM není přístupný z domácí sítě (používá most soukromé sítě), musíte k připojení k virtuálnímu počítači KVM pomocí SSH použít tunelování SSH. Pokud chcete plný přístup k virtuálnímu počítači CentOS 8 KVM, můžete nastavit most veřejné sítě a nakonfigurovat virtuální stroj pro použití mostu. Tímto způsobem může být váš virtuální stroj KVM přístupný z celé vaší domácí sítě.