I use Debian GNU+Linux, where TightVNC is one of the best options, and it has worked great for professional pair programming.
Digital Ocean did a great article on how to get set up: https://www.digitalocean.com/community/tutorials/how-to-set-...
You can also script it - I have a Cygwin service that I made that checks a website for a command to trigger a reverse VNC connection.
If both parties are double NAT, then sure, you have a problem, but aside from that; as long the party you are connecting to doesn't -- it should work fine as described.
If you have any questions about security feel free to ask.
Another way we protect hosts is by not allowing random hosts and clients to communicate with each other unless you've given explicit permission to each host/client. This means that Bob can't load up the Jump Desktop client and try to randomly brute force Alice's local account password by trying to connect repeatedly. The cloud server will drop Bob's connection requests to Alice unless Alice has explicitly given Bob permission to connect.
The above applies to our zero setup app, Jump Desktop Connect. Jump Desktop is also a full blown RDP and VNC client (with SSH support) - so you don't really have to use the Jump Desktop Connect app if you don't want to. You can use traditional RDP / VNC-over-SSH to establish secure connections as well.
Not as dynamic, but for instance LastPass will allow you to blacklist or whitelist entire country IP blocks. A system that also monitors (on your end, or maybe alerts the customer) that their machine in Kansas all of a sudden has multiple IPs from China/whatever accessing it (on your end seeing this globally through the network as well) would be great to mitigate events like this. If you go on vacation, you can remove the block.
So far every report I've seen has been Guangzhao/Yangzhao in the access reports. Could easily, easily nip that in the bud. Obviously other proxies could be used but something like a remote access system is something people should be locking down tightly.
[1] https://chrome.google.com/webstore/detail/chrome-remote-desk...
I have a certain amount of trust in Google but their Remote Desktop product feels like something that could plausibly be internally understaffed.
A couple others that were mentioned were UltraVNC and IMPCRemote, both VNC-based. There are also many other VNC-based options available as well (e.g. Fog Creek Copilot), but I'm not aware of any that have performance that I'd consider acceptable.
------------------
* Ammyy - Tool of scammers everywhere, DO NOT USE
* Splashtop - inexpensive, no-frills. Options for unattended, resellable unattended, and attended/client-initiated but all are separate products. Annual pricing, but cheap. Hosted by them.
* Instant Housecall - active with forums and podcasts as well, includes toolkit based on D7. Subscription, $30/40/75/month. Hosted by them.
* ScreenConnect - former local darling until bought by ConnectWise/LabTech which raised prices. Subscription, $50/month annual, cheaper options available with fewer features. Hosted by them unless you're spending $2200+. Has (had?) active forums and many scripts you could add in for cleaning, etc.
* Simple-Help - pricing similar to ScreenConnect's old pricing ($320/year + 20% annual maint). Self-hosted by you. Discounts may be available including links from here back when ScreenConnect raised their prices. For an extra 50% you get remote monitoring and some tools but I have no experience with them. Never as actively developed as ScreenConnect. If the RMM features are good enough it's surprisingly affordable (under $1/month per endpoint the first year, $0.20/month per endpoint after that, all in blocks of 40 endpoints)
* MSPAnywhere/BeAnywhere - $50/month subscription, purchased by Solarwinds (N-Able) in 2015. I don't think it has integrated tools, but has a good reputation for remote control.
* TeamViewer - Solid product, one-time purchase (plus fees for upgrades) $800+. Has some sort of addon available for support/tools I believe.
* LogMeIn - had many fans here until a few years ago when the price increases started. Not sure anyone here still uses them.
* Chrome Remote Desktop - Free, and you get what you pay for. You can contemplate your errors as you wait for the other end to reconnect you. Again.
* Zoho - VNC based? I know little about it other than being pretty sure it exists.
* AnyDesk - €60/year or has a 6-year license at a discount. More expensive Professional version allows what I think is unattended access with the extra-charge PowerUser option.
I don't expose it to the internet, though. Only thing on my home network that is exposed directly to the internet is an SSH gateway (using public key auth, passwords disabled); from there, I can forward SSH or VNC or whatever I need access to.