Par défaut, VirtualBox fonctionne en mode "NAT", ce qui signifie qu'il construit un réseau "virtuel" et traduit les accès au réseau à partir de la VM de sorte que, pour le monde extérieur, ils semblent provenir de votre ordinateur réel.
VirtualBox fait croire à la VM qu'elle est connectée à un réseau, mais en réalité VirtualBox fournit des services réseau, y compris un mini serveur DHCP. Ensuite, VirtualBox effectue les accès au réseau "au nom" de la VM, ce qui la fait apparaître comme une autre application fonctionnant sur votre PC.
Cependant, cela signifie que le monde extérieur ne connaît pas vraiment la VM et ne peut pas y accéder directement.
Je pense que la redirection de port que vous avez faite était de votre routeur domestique vers votre PC, pas vers la VM. Il se peut qu'il vous manque une configuration du côté de VirtualBox. Je m'excuse si vous l'avez déjà fait, mais votre question n'était pas claire à ce sujet.
En fait, vous devez modifier la configuration du réseau de la VM et la définir sur "Bridged". Cela permet de créer une interface virtuelle sur votre PC et de faire en sorte que la VM l'utilise pour accéder au monde extérieur ; tout ce qui entre ou sort de cette interface est transmis à la VM. Ainsi, la VM sera visible comme une autre machine dans n'importe quel réseau auquel votre PC est connecté (elle a même sa propre adresse MAC !).
Ensuite, en fonction de la configuration de votre réseau, la VM peut obtenir une adresse DHCP comme n'importe quel autre PC connecté à votre routeur, ou vous devrez peut-être lui configurer une adresse IP statique. Cela dépend de la façon dont votre réseau est configuré.
Une fois que la VM a une adresse "réelle", vous pouvez, sur votre routeur, suivre les instructions que vous avez trouvées pour acheminer le port 22 vers l'adresse IP de la VM. Cela devrait fonctionner comme vous le souhaitez.
Si ce n'est pas le cas :
- Regardez la configuration du pare-feu de votre VM (iptables -L -n). Bloque-t-il quelque chose ?
- Configurez un autre ordinateur sur votre réseau local et essayez de vous connecter en SSH à l'adresse IP de la VM. Si vous y parvenez, vous devez revérifier la configuration de la redirection dans votre routeur. Si vous n'y parvenez pas, vous devez revérifier la configuration SSH et du pare-feu de la VM.