Virtual-Machine

QEMU:啟用 SFTP 文件交換(來賓⇆主機)但禁止來賓訪問公共網際網路?

  • October 16, 2018

假設我在QEMUDebian 主機上的虛擬機中執行 Windows 來賓。因此,Debian 主機是一台可以訪問 Internet 的普通台式電腦。

如何設置SFTP來賓和主機之間的文件交換但阻止來賓(= Windows)訪問網際網路?

  1. 為所屬的 Windows 機器設置一個虛擬網路介面 (NIC) virt-manager(預設設置是 network NATwith device virtio
  2. 在客戶機中安裝網路驅動程序 (Windows)
  3. 在客戶機中安裝 WinSCP (Windows)

但那又如何呢?我在哪裡可以阻止僅此客人訪問公共網際網路?virt-manager在不破壞主機防火牆的情況下,這是否已經成為可能?

其他幾台客戶機不應受此影響。

在 virt-manager 中創建一個新的虛擬網路,其連接設置為隔離虛擬網路

隔離的虛擬網路

在此配置中,此網路上的 VM 只能訪問同一網路和主機上的其他 VM(僅使用隔離網路的主機 IP 地址)。

我不使用virtmanager,但是qemu很簡單:

qemu-system-x86_64 -net nic -net "user,restrict=on,guestfwd=:10.0.2.1:22-cmd:netcat 127.0.0.1 22,hostfwd=::2222-:22" -enable-kvm   ...  -m 4G -hda windows.qcow2 

那是在“限制”模式下使用“使用者模式”(slirp)網路,並進行一些轉發。

要連接ssh//從主機到來賓,請scp使用和。sftp``ssh -p 2222 localhost``scp -P 2222 from_file localhost:to_file

要從訪客連接到主機,請使用ssh 10.0.2.1(或在 或 的任何對話框中設置為10.0.2.1主機)putty``winscp

對於旗幟,請在此處restrict=on查看我的答案。這可能比or更接近你真正需要的東西。scp``sftp

引用自:https://unix.stackexchange.com/questions/473102