It is possible to access the terminal of the Linux machine in the same local network. All we need to know is:
We can do this out of the box if we perform connection from Linux or Mac computer.
From Linux machine, via host name (nvidia-nano in this example; and nvidia as account name):
- account name we want to log in remotely
- computer's IP address or hostname
We can do this out of the box if we perform connection from Linux or Mac computer.
From Linux machine, via host name (nvidia-nano in this example; and nvidia as account name):
$ ssh nvidia@nvidia-nano
The authenticity of host 'nvidia-nano (192.168.0.12)' can't be established.
ECDSA key fingerprint is SHA256:AeGD/zmVkabo...ab3jLsqBUPjZfirAo.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'nvidia-nano' (ECDSA) to the list of known hosts.
nvidia@nvidia-nano's password:
Welcome to Ubuntu 18.04.3 LTS (GNU/Linux 4.9.140-tegra aarch64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
* Overheard at KubeCon: "microk8s.status just blew my mind".
https://microk8s.io/docs/commands#microk8s.status
This system has been minimized by removing packages and content that are
not required on a system that users do not log into.
To restore this content, you can run the 'unminimize' command.
1 package can be updated.
0 updates are security updates.
Last login: Fri Dec 20 16:39:47 2019 from 192.168.0.30
We can run ifconfig on remote machine (directly) in order to determine its IP address. Once we know it, the ssh command would be e.g.:
$ ssh nvidia@192.168.0.12
If we use the wrong IP address, we might get the following error:
$ ssh nvidia@192.168.0.12
ssh: connect to host 192.168.0.12 port 22: No route to host
It is possible to find out the IP address of the computer in local network via nmap tool which scans local network for connected devices. We need to know local network's address and mask:
$ nmap -sn 192.168.0.0/24
Starting Nmap 7.80 ( https://nmap.org ) at 2019-12-07 23:36 GMT
Illegal character(s) in hostname -- replacing with '*'
Illegal character(s) in hostname -- replacing with '*'
Nmap scan report for xxxRouter (192.168.0.1)
Host is up (0.015s latency).
Nmap scan report for ***MobilePhone_01*** (192.168.0.20)
Host is up (0.016s latency).
Nmap scan report for nvidia-nano (192.168.0.23)
Host is up (0.10s latency).
Nmap scan report for ***AndroidPhone*** (192.168.0.15)
Host is up (0.100s latency).
Nmap scan report for ***iPhone*** (192.168.0.53)
Host is up (0.012s latency).
Nmap scan report for ***user-laptop1*** (192.168.0.61)
...
Nmap done: 256 IP addresses (7 hosts up) scanned in 3.59 seconds
To run applications that use dialogs (windows) we need to enable X forwarding by passing -X argument to ssh:
$ ssh -X user@host
...
user@host: $ gedit
The example above will run gedit on a remote host but will open gedit window on the local host (from which we connect to remote).
To execute command immediately upon connection, we can pass that command with -C ssh argument:
$ ssh -X user@host -C gedit
To close SSH connection we can use command exit:
nvidia@nvidia-nano:~$ exit
nvidia@nvidia-nano:~$ exit
logout
Connection to nvidia-nano closed.
No comments:
Post a Comment