Per impostazione predefinita, VirtualBox funziona in modalità "NAT", il che significa che crea una rete "virtuale" e traduce gli accessi alla rete dalla VM in modo che al mondo esterno sembrino provenire dal tuo computer reale.
VirtualBox fa pensare alla VM di essere connessa a una rete, ma in realtà VirtualBox fornisce servizi di rete, incluso un mini server DHCP. Quindi, VirtualBox accede alla rete "per conto" della VM, facendola apparire come un'altra applicazione in esecuzione sul PC.
Tuttavia, ciò significa che il mondo esterno non conosce veramente la VM e non può accedervi direttamente.
Penso che il reindirizzamento delle porte effettuato sia stato dal router di casa al PC, non alla VM. È possibile che manchi qualche configurazione sul lato VirtualBox. Mi scuso se l'hai già fatto, ma la tua domanda non era chiara al riguardo.
Fondamentalmente devi cambiare la configurazione di rete della VM e impostarla su "Bridged". Ciò che fa è, crea un'interfaccia virtuale sul tuo PC e fa in modo che la VM lo usi per accedere al mondo esterno; qualsiasi cosa che entri o vada a quell'interfaccia viene reindirizzata alla VM. Pertanto, la VM sarà visibile come un'altra macchina nella rete a cui è collegato il tuo PC (ha anche un proprio indirizzo MAC!).
Quindi, a seconda della configurazione della rete, la VM potrebbe ottenere un indirizzo DHCP come qualsiasi altro PC collegato al router, oppure potrebbe essere necessario configurare un indirizzo IP statico per esso. Questo dipende dalla configurazione della rete.
Una volta che la VM ha un indirizzo "reale", sul router è possibile seguire le istruzioni trovate per instradare la porta 22 all'indirizzo IP della VM. Questo dovrebbe funzionare come previsto.
In caso contrario:
- Guarda la configurazione del firewall della tua VM (iptables -L -n). Sta bloccando qualcosa?
- Configurare un altro computer sulla rete locale e provare a SSH all'indirizzo IP della VM. Se possibile, è necessario ricontrollare la configurazione di inoltro nel router. In caso contrario, è necessario ricontrollare la configurazione SSH e il firewall della VM.