VirtualBox é uma plataforma de virtualização amplamente usada para criar e gerenciar máquinas virtuais. Embora seja uma plataforma de código aberto, alguns componentes de código fechado também estão incluídos em um pacote de extensão diferente. É gratuito para uso, mas você pode comprar uma licença Oracle VM VirtualBox Extension Pack Enterprise, se desejar usá -la para fins comerciais e exigir suporte oficial padrão.
Quando uma nova máquina virtual é criada no VirtualBox, o modo de rede padrão é definido como NAT ou a tradução de endereço de rede. O modo NAT tem suas próprias vantagens e limitações em relação a outros modos de rede. Em essência, o NAT é mais seguro, mas ao mesmo tempo mais complicado quando se trata de estabelecer comunicação cruzada com outras máquinas virtuais e o mundo exterior. Se você deseja que a máquina virtual obtenha a segurança e o acesso a serviços específicos com o modo NAT, você exigiria a ajuda do encaminhamento de portas. Dessa forma, a VM permanecerá isolada de outros, mas ainda acessará os serviços específicos.
O que vamos cobrir?
Este guia verá como podemos configurar o encaminhamento de porta no VirtualBox usando métodos gráficos e de linha de comando. Vamos usar um Ubuntu 20.04 Máquina virtual para esse fim. Para verificar se a configuração está funcionando, definiremos o encaminhamento da porta em nossa VM para acesso SSH da porta 22 para a porta 9099 no método gráfico e da porta 22 para a porta 2222 no método da linha de comando. Vamos seguir em frente com esta configuração sem mais delongas.
Pré -requisito
Introdução ao encaminhamento de portas
Método 1. Encaminhamento de porta usando interface gráfica virtualBox
Passo 1. No painel esquerdo da janela principal do VirtualBox, selecione a máquina virtual na lista. Agora clique com o botão direito do mouse no nome da máquina virtual e escolha a opção 'Configurações' ou selecione o ícone 'Configurações' no painel direito.
Passo 2. Na nova janela pop-up, selecione o rótulo correspondente a 'Rede.'Agora clique no ícone de seta anexado com o rótulo correspondente à opção' avançada '.
etapa 3. Clique no botão 'encaminhamento da porta'. Uma nova janela pop-up aparecerá. Aqui, use o ícone '+' para adicionar uma nova regra.
Passo 4. Nas caixas de texto correspondentes a diferentes rótulos, preencha os vários detalhes da nova regra. Usamos o seguinte:
Nome (nome do serviço): Ssh
Protocolo: TCP
IP do host: Endereço IP da máquina host
Porta host: Porta na máquina host para a qual a solicitação do hóspede será encaminhada.
IP do convidado: Endereço IP da máquina de convidado
Porta de convidado: Porta padrão de um serviço em execução na máquina convidada.
Neste guia, como usamos o serviço 'SSH' sobre o protocolo 'TCP', a porta de convidado será 22. Nossa porta host, como já foi dito, é 9099. Estamos deixando o IP do convidado em branco para obter o IP do VirtualBox automaticamente. Da mesma maneira, a coluna IP do host é deixada em branco, pois será equivalente a 0.0.0.0; Isso significa que qualquer máquina que tenha acesso ao seu host sobre a porta 9099 também pode acessar o SSH à sua VM convidada.
Depois de terminar as etapas acima, salve essas configurações pressionando o botão OK.
Testando a configuração
Antes de tentar SSH na VM convidada, verifique se o servidor OpenSsh está instalado nele. Caso contrário, você pode instalá -lo usando o comando:
$ sudo apt install OpenSsh-Server
Passo 1. Tente SSH a VM convidada do host na porta 9099. Para isso, use o comando:
$ sudo ssh -l 'nome de usuário' 0.0.0.0 -P 9099
'nome de usuário'é o nome do usuário na VM convidada.
Método 2. Encaminhamento de porta usando interface da linha de comando
Outra maneira de configurar o encaminhamento de portas é usar VirtualBox VboxManage ferramenta de linha de comando. Aqui vamos mostrar como funciona:
Passo 1. Liste todas as máquinas virtuais em sua máquina host com o comando:
VMs da lista vBoxManage
Da figura acima, podemos ver que está mostrando duas VMs: i) Fedora 34 ii) Ubuntu 20.04.
Passo 2. Agora use o formato abaixo para fazer o encaminhamento da porta Se a máquina virtual estiver ligada :
VboxManage Controlvm “VM Nome” Natpf1 “Guestssh, TCP ,, 2222 ,, 22”
Se a VM estiver desligada, use:
VBoxManage ModifyVM “VM Name” -NATPF1 “Guestssh, TCP ,, 2222 ,, 22”
Agora, novamente, tente fazer login com seu comando:
sudo ssh -l 'nome de usuário '0.0.0.0 -P 2222
Aqui "Nome da VM" é o nome da máquina virtual que obtivemos na etapa acima. 'Nome de usuário' é o nome do usuário na VM convidada.
Conclusão
VirtualBox é uma boa escolha para desenvolvimento e teste, pois pode ajudá -lo a economizar tempo e dinheiro. O comando vBoxManage é conveniente, pois podemos controlar (iniciar, parar, suspender) as VMs da linha de comando. Isso é particularmente útil quando o acesso gráfico ao servidor VM não está disponível no data center. Este guia é testado no Ubuntu 20.04, mas deve funcionar em qualquer máquina que suporta acesso SSH.