Difference between revisions of "SSH remote"
(Created page with "__TOC__ ==Where to start== Baby steps ===Secure Shell=== ===Remote desktop client=== ==Is localhost local or remote== Depends on view point") |
|||
(20 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
==Where to start== | ==Where to start== | ||
− | |||
Baby steps | Baby steps | ||
− | ===Secure Shell=== | + | ==Context of Terminology== |
+ | <gallery mode=traditional widths=450px heights=150px> | ||
+ | File:local-remote.png|Simple connection | ||
+ | File:local-gateway-remote.png|Complex, multi-hop connection | ||
+ | </gallery> | ||
+ | ===Essential Terms=== | ||
+ | * '''local''' - local computer, computing device or computing system the user is initiating connection or is connecting from | ||
+ | * '''remote''' - remote computer, computing device or computing system the user is connecting to | ||
+ | * '''gateway''' - intermediary computer, computing device or computing system the user is using to connect from local system to remote system | ||
+ | |||
+ | |||
+ | * '''client''' - software client (program) the user is using on local system to connect to remote system | ||
+ | * '''server''' - software server (service, program) the user is connecting to on remote system | ||
+ | ===More Terms=== | ||
+ | * '''localhost''' - networking terminology where a computer system refers to itself with it | ||
+ | *: '''local''' host != ''localhost'' :: for '''local''' host ''localhost'' means '''local''' host, for '''remote''' host ''localhost'' means '''remote''' host | ||
+ | ==Secure Shell== | ||
+ | |||
+ | ===SSH? Wait, Secure Shell??=== | ||
+ | Yes, the ubiquitous three-letter acronym SSH means Secure Shell, the computer program one can use to securely connect to a remote host command line. | ||
+ | |||
+ | Secure Shell comes in a variety of looks and flavours, from a simple command line utility to bells'n'whistles packed graphical user interface. | ||
+ | |||
+ | To list a few: | ||
+ | * OpenSSH SSH client, the native Linux command line utility (CLU) [https://en.wikipedia.org/wiki/OpenSSH OpenSSH] | ||
+ | * Cygwin SSH client, the same as above but compiled for Windows and distributed as Cygwin subpackage [https://www.cygwin.com Cygwin] | ||
+ | * SSH Secure Shell, the ancient original SSH, now replaced by Tectia [https://www.ssh.com/products/tectia-ssh Tectia] | ||
+ | * Putty, SSH functionality packaged into GUI for Windows with less bells and whistles [https://www.putty.org Putty] | ||
+ | * Bitvise SSH client, SSH that comes with GUI for Windows [https://www.bitvise.com/ssh-client-download Bitvise] | ||
+ | * Termius, iOS applet for iPhone & iPad | ||
+ | * | ||
+ | * | ||
+ | |||
+ | We'll be getting in touch with 3 of the above: native Linux CLU and Cygwin CLU for operating at a command line interface (CLI) and Bitvise SSH client for working under Windows when there is no Cygwin available. | ||
+ | ===Password or Keys?=== | ||
+ | To access remote computer system one usually has to authenticate itself. | ||
+ | |||
+ | Authentication methods are various: | ||
+ | * the simplest where one provides an username and a password to the remote system | ||
+ | * with SSH keys, so called public key authentication | ||
+ | * with Kerberos/GSSAPI | ||
+ | * more complex with security device(s), in example a smartcard or SecurID device | ||
+ | |||
+ | Depending on the remote server configuration, one or more of the above is required. Remote server may for example require both password and keys for authentication. Or it may disallow password and only allow keys. | ||
+ | ===I have username and password but where do I get keys?=== | ||
+ | Easy. You make them. | ||
+ | |||
+ | In this example We will use Cygwin command line interface running on Windows host. | ||
+ | <div style="clear: both"></div> | ||
+ | [[File:cygwin_window_empty.png|400px]] | ||
+ | <div style="clear: both"></div> | ||
+ | and then | ||
+ | |||
+ | ===Setting up passwordless access to remote host=== | ||
+ | |||
+ | ==Remote desktop client== | ||
+ | |||
+ | ===VNC=== | ||
− | === | + | ===RDP=== |
− | ==Is localhost local or remote== | + | ==Is host localhost local or remote, after or before gateway (and where do ports fit in)?== |
− | Depends on | + | Depends entirely on the point of view. |
Latest revision as of 16:41, 12 September 2019
Contents
Where to start
Baby steps
Context of Terminology
Essential Terms
- local - local computer, computing device or computing system the user is initiating connection or is connecting from
- remote - remote computer, computing device or computing system the user is connecting to
- gateway - intermediary computer, computing device or computing system the user is using to connect from local system to remote system
- client - software client (program) the user is using on local system to connect to remote system
- server - software server (service, program) the user is connecting to on remote system
More Terms
- localhost - networking terminology where a computer system refers to itself with it
- local host != localhost :: for local host localhost means local host, for remote host localhost means remote host
Secure Shell
SSH? Wait, Secure Shell??
Yes, the ubiquitous three-letter acronym SSH means Secure Shell, the computer program one can use to securely connect to a remote host command line.
Secure Shell comes in a variety of looks and flavours, from a simple command line utility to bells'n'whistles packed graphical user interface.
To list a few:
- OpenSSH SSH client, the native Linux command line utility (CLU) OpenSSH
- Cygwin SSH client, the same as above but compiled for Windows and distributed as Cygwin subpackage Cygwin
- SSH Secure Shell, the ancient original SSH, now replaced by Tectia Tectia
- Putty, SSH functionality packaged into GUI for Windows with less bells and whistles Putty
- Bitvise SSH client, SSH that comes with GUI for Windows Bitvise
- Termius, iOS applet for iPhone & iPad
We'll be getting in touch with 3 of the above: native Linux CLU and Cygwin CLU for operating at a command line interface (CLI) and Bitvise SSH client for working under Windows when there is no Cygwin available.
Password or Keys?
To access remote computer system one usually has to authenticate itself.
Authentication methods are various:
- the simplest where one provides an username and a password to the remote system
- with SSH keys, so called public key authentication
- with Kerberos/GSSAPI
- more complex with security device(s), in example a smartcard or SecurID device
Depending on the remote server configuration, one or more of the above is required. Remote server may for example require both password and keys for authentication. Or it may disallow password and only allow keys.
I have username and password but where do I get keys?
Easy. You make them.
In this example We will use Cygwin command line interface running on Windows host.
and then
Setting up passwordless access to remote host
Remote desktop client
VNC
RDP
Is host localhost local or remote, after or before gateway (and where do ports fit in)?
Depends entirely on the point of view.