How can I access Ubuntu Server running in a VM via the internet?

U can access your vm anywhere by " D D N S " link (what it does give u static link and make your dynamic ip auto updated through DDNS link )

Example link would like this xxx.no-ip.org

register www.no-ip.com

most of router support ddns u can login your ddns id enter image description here

now u need to DMZ to the ip of vm enter image description here

NOW OPEN VIRTUAL BOX > CLICK ON VM > SETTINGS > NETWORK enter image description here

NOW USE STATIC IP AS I HAVE DMZ TO IP 192.168.0.200 SO MY VM IP SHOULD BE 192.168.0.200

Install any service in your vm , like Apache , Ssh

now u can ssh anywhere from like this **ssh [email protected]**

if your have apache installed on vm just paste link xxx.no-ip.org on web browser it will open your web from your vm

There are Lots Of DDNS Services , But U Need To Check Which One Your Router Support By DDNS > Service Provider