SSH
The Secure Shell Protocol (SSH Protocol) is a cryptographic network protocol for operating network services securely over an unsecured network.[1] Its most notable applications are remote login and command-line execution.
Keys
This command works cross-platform
Keys consist of a pair of files - one private and one public. The public key is used for encrypting and the private key is used for decrypting.
Example key content
These keys are for example purposes only and aren't real. Never expose or move a private key
-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW
QyNTUxOQAAACCqkQjTERYpeyB1fyFX5sEFV+Q9gYB5Q2Xw1vxKwtuQswAAAJhGF9GFRhfR
hQAAAAtzc2gtZWQyNTUxOQAAACCqkQjTERYpeyB1fyFX5sEFV+Q9gYB5Q2Xw1vxKwtuQsw
AAAEBlHRz/cOJC/JnYutdfoSYd1umtm/Q2O+GJIj5nIBN8r6qRCNMRFil7IHV/IVfmwQVX
5D2BgHlDZfDW/ErC25CzAAAAE2FwcGRhZW1vbkBhcHBkYWVtb24BAg==
-----END OPENSSH PRIVATE KEY-----
Config
/etc/ssh/sshd_config
PasswordAuthentication no
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PermitTunnel no
AllowTcpForwarding no
PermitRootLogin yes
Match User root
PasswordAuthentication no
AllowTcpForwarding yes
Match User backup-tunnel
AllowTcpForwarding local
PermitOpen 127.0.0.1:445