I am trying to convince my family to go to ubuntu and have been supporting them with "Teamviewer" for windows. My question is how do i install teamviewer in ubuntu using the command line so that I can still provide remote support or is there a Ubuntu equilvalent to teamviewer?
Teamviwer runs natively on Ubuntu.
You can download it following this link: https://www.teamviewer.com/en/download/linux/
The downloaded file is a
.deb package. Please see How do I install a .deb file via the command line? for instructions on how to install this via the command line.
Technically, Teamviewer provides packages. It basically is a "wine" version of TeamViewer. I have used it to connect from my Ubuntu machine to others Windows machines. That works for certain. There doesn't seem to be a "light client" version for Linux. That's no problem, the full fledged one also allows incoming connections. One thing that annoys me to no end is that TeamViewer on linux runs deamons that run at all time. I understand why, but I only want to connect to other peoples desktops, not share mine.
If you need a "native" version, you're going to have to do a few things manually and know what you're doing. Only do this is you know enough about networking, because a complete solution will involve dynamic DNS, opening up ports on your families routers, and a few other things and to keep it secure, ssh tunneling. I'll give you a general description.
- You need to install openssh-server on the desktop of your family
- You need to port-forward your families router port 22 (or another, I tend to simply use 22) incoming to port 22 on their desktop.
- At that point from the Internet, you can connect using ssh to their desktop, which gives you a command line. For most administrative tasks this is enough, but not enough if you need hands-on help.
- You need to activate "Desktop Sharing" (just type it into the Ubuntu dock) on your families computer. Set a (Good!) password, set "user must confirm". This functionality uses VNC to use remote desktop connections. VNC is not secured or encrypted and the passwords must be short. It's no big deal on a local network, but for the love of all what is good, don't expose it to the Internet. (Be careful should you have true IPv6 addresses)
- VNC is open locally, ssh is open to the Internet. You now need to learn about tunneling. Basically, it's creating an encrypted tunnel from your desktop using ssh, to the locally running VNC. Remmina, a VNC/RDP client, knows how to do this natively. You'll have to fill in the correct fields. If you chose to go this path, we can discuss this further.
- For your convenience, you should set up dynamic DNS with a free dynamic DNS provider so that you don't have to ask the bare IPv4 address of your families connection. Basically, it will allow you to ssh to a domain name instead of a bare IPv4 address, even if their IPv4 should change.
It is so much more work than TeamViewer, but once setup it works fine. I do use setups like this, but I do have my own dynamic DNS server, which makes life a bit easier.
In case you want to know why TeamViewer doesn't require this: TeamViewer basically runs servers where you both are clients (you both connect to these servers) and then their server makes the match for you. Doing it manually, takes away the third party, but does make it harder.
Up to you to decide what's best for you.