什么是 Linux SSH?
“Linux Secure Shell(即 SSH)是 Linux 计算机用来安全访问远程计算机和执行命令的协议。它是 rlogin 和 rsh 的替代品。因此,SSH 通过不安全或不受信任的网络在不受信任的主机之间提供加密且安全的通信。该协议也称为 Secure Socket Shell,是 Linux 用户连接到远程服务器的安全应用程序。该框架允许用户传输文件、运行命令行和图形程序,以及通过互联网创建安全的虚拟网络。该框架有一个 SSH 命令来保护客户端和主机之间的远程连接和数据传输。该实用程序可确保所有通信的加密。该命令的工作原理是将客户端输入传输到主机。完成后,该命令将输出从主机返回到客户端,并且通常通过 IP/TCP 端口 22 执行。这种加密连接还用于端口转发、Linux 服务器、隧道等。 ”
SSH 命令的组成部分
与其他所有计算命令一样,ssh 命令也有语法。该命令的语法如下图所示;
并且如命令所示,以下使ssh逗号的组成部分;
ssh 命令 - 该命令向计算机提供指令,以创建与主机网络或系统的安全加密连接。
用户名 – 这是您的主机或系统访问的 Linux 客户端或用户的名称。
主机——这是用户访问或建立连接的机器,具有域名或IP地址。理想情况下,主机可以是路由器或计算机。
ssh 命令概要和标志
下图说明了 ssh 命令概要;
ssh命令标签如下;
- -1
强制 ssh 仅尝试版本 1 协议
- -2
强制 ssh 仅测试版本 2 协议
- -4
使 ssh 仅使用 IPV4 地址
- -6
强制 ssh 仅使用 IPv6 地址
- -A
它启动身份验证代理连接转发。通常,您可以在每个主机上指定此标志。
值得注意的是,您应该非常小心地启用代理身份验证转发。那些有权绕过远程主机上的文件权限的人通常可以通过转发的连接访问本地代理。虽然攻击者可能无法从代理访问密钥材料,但他们可以使用密钥执行操作并使用代理内的身份进行身份验证。- -a
禁用身份验证代理连接转发
- -b bind_address
您可以在本地计算机上使用bind_address作为连接的源地址。该标志仅适用于具有多个设备的系统。
- -C
它用于请求压缩所有数据。它使用与 gzip 相同的算法来压缩数据,包括 stdout、stdin 和 stderr。
- -c cipher_spec
它选择在加密会话期间使用的密码规范。
协议版本 1 只允许指定一种密码。但对于协议版本 2,逗号分隔从最首选的密码列表。- -D –Xo
它控制 Sm off 和 Sm on 组件。它指定应用程序级别端口转发的本地动态。值得注意的是,它分配一个侦听本地系统上的端口的套接字。通过此端口的每个连接都通过系统的安全通道转发。
- -e escape_char
此标签有助于为 pty 会话设置转义字符。
- -F configfile
它指定每个用户的配置文件。
- -f
该标志在执行命令之前启动 ssh 返回后台的请求。当用户希望在后台发生密码或密码短语请求时,这非常方便。
- -g
在远程主机和本地转发端口之间建立连接
- -i identity_file
选择您的计算机将从中读取 DSA 或 RSA 身份验证身份的系统文件。
- -k
禁用将 GSSAPI 凭证和身份委托或转发到服务器
- -L -Xo
通过指定应将客户端/本地主机上提供的端口转发到远程计算机上的端口和主机来控制 Sm off 和 Sm on 组件。
- -l login_name
它引导用户在远程端登录。
- -M
它将客户端置于主模式以启用连接共享。可以有多个 –M 选项将 ssh 客户端置于主模式,并在系统接受从连接之前要求确认。
- -m mac_spec
这是协议版本 2 的附加标志。它提供以逗号分隔的消息验证代码 (MAC) 算法列表。
- -N
指示用户不要提交远程命令。
- -n
它从 /dev/null 重定向 stdin 数据并阻止其读取。仅当 ssh 在后台运行时才可用。
- -O ctl_cmd
它控制多路复用主进程的活动连接。
- -o option
该标志通常用于提供与配置文件中使用的格式完全相同的选项。
结论
本文详细介绍了安全套接字外壳 (Secure Socket Shell) 或 SSH。它描述了 ssh 命令及其语法和相关标志。希望您可以使用上述信息来启动与 SSH 协议的交互。
来源
https://help.ubuntu.com/community/SSH
https://www.tutorialspoint.com/unix_commands/ssh.htm
https://www.javatpoint.com/ssh-linux
https://phoenixnap.com/kb/ssh-to-connect-to-remote-server-linux-or-windows
https://www.ucl.ac.uk/isd/what-ssh-and-how-do-i-use-it
https://www.techtarget.com/searchsecurity/definition/Secure-Shell
https://support.huawei.com/enterprise/en/doc/EDOC1100205274