Exposing that VM from your home internet may or may not be possible, depending on your hardware and internet provider. Only one way to find out...
Bare in mind your router will have its own public IP, and all the IPs used by your devices on your LAN will use a separate private IP range (generally starting 192.168.x.x, 172.16.x.x or 10.x.x.x). These private IPs are kept hidden from the public internet by Network Address Translation (NAT). If you do a Google for whats my ip address
- it will give you your routers public IP - this is the address you need to connect from the outside world.
First, make sure your VM has its own private IP address on your home LAN (a bridged network) - you should be able to connect to that IP from any machine within your home network.
Next, on your router, enable port forwarding and map port 22 (or possibly some other port, 22 might not be allowed) and instruct your router to send traffic to port 22 on your VMs private IP address. Now any requests on port 22 of your routers public IP will be forwarded to your VM
The main problem with this approach is you need to know your Routers external IP to be able to connect and depending on your provider your external IP will change from time to time. The solution is to get a dynamic DNS (DynDNS) provider that will allow your server to update a DNS entry so you have a hostname instead of an IP to remember.