Online, yes. Free? Most likely not (at least not forever). Either way, after you have a server, it's just a question of setting something like this up.
Getting a server:
What you're asking for is effectively a mini server or a VPS. These are computers that are hosted by companies like DigitalOcean, Amazon Web Services, Google Cloud Platform, and so on. These companies may have free trials or promo codes, but you need to remember that these are effectively services being offered to you, and these are companies. Being nice isn't in the business model because it just isn't profitable.
However, that doesn't mean they're not free. DigitalOcean has a referral program that allows you to get free server time when other people sign up using your unique code. AWS has a one-year free trial for their servers. You can probably find similar deals for other server hosts if you actually try looking. Though, these services are usually pretty cheap ($5/month minimum).
Sure, you could probably find some "free" VPS providers out there, but this is a good time to point out that there's no such thing as a free lunch. You might not be paying in money, but your VPS might be very restricted in what it can do, may be used in data collection, only allow you access at certain times (timesharing), not allow you to save your work, and so on. If you want a reputable install of Ubuntu that actually works the way you want, you're gonna have to pay for one, sorry. Or, alternatively, you have a good friend who is going to let you use some of their excess server capacity.
Remote Access Over Internet:
WARNING: Please make sure you read all of what is described in this section, and make sure you understand it. It's important.
What you're asking (full remote access, meaning shell and/or graphical, over HTTP/HTTPS) has the potential to be a huge security risk!
If you give yourself this level of access to your system, others can get it and use various evil tricks, or snoop on your connection. I mention use of VNC later in this post, which can be downright dangerous unless you're extremely careful with your setup. I'm not responsible for your system getting pwned. Don't say I didn't warn you. Do things right, or tread very carefully.
I would personally advise re-evaluating your criteria and considering doing things the right way (Key-based SSH with port tunneling if needed + a strong firewall config) if at all possible. This means using the right software instead of bringing everything over HTTP.
Access over just a web browser is really something most people tend not to do for various reasons. The most-cited reason is that this is just pretty insecure all things considered. However, if you still want to use something over just a web browser, it's definitely possible.
If you're okay with just a direct console or shell, something like Webmin, ShellInABox, or Web Console would be a good choice. They're web-accessible and allow you pretty good levels of control over your machine. Note for something like this, though, you will need a HTTP server (like nginx
) on your VPS.
If this is unacceptable and you don't want to host things on your machine, you can use something like webssh, but be wary of any security risks that may result over using something like this.
If you need X11 (a graphical interface for stuff like xmodmap
, etc.), you're gonna have to do some more advanced stuff. If this is the case, you're going to have to build some sort of solution around X11 forwarding. If you can't use any computer-side software other than a web browser, this becomes more difficult. However, it's still possible to set up VNC and then use something like noVNC remotely, or by installing it on your own machine. But, this might introduce heavy lag into your system. It also offers a huge potential attack vector against your system, but you should have seen the giant warning at the top of this section.
Ideally, you'd just have a light SSH client (like PuTTY or similar) and X11 (like XMing) on a flash drive, and you can use this to establish a connection from anywhere, but you're already carrying a flash drive. At that point, it's probably best to just make a persistent drive.