Linux ssh 命令

Linux 命令大全

ssh 命令用于通过 SSH 协议连接到远程主机,实现远程登录和执行命令,它加密会话中的所有通信,确保数据传输的安全性。

SSH (Secure Shell) 是一种用于远程登录和其他网络服务之间的加密协议,SSH 提供了一个安全的通信渠道,以保护数据的机密性和完整性。

语法

ssh [options] [user@]hostname [command]

参数说明

  • [user@]hostname:要连接的远程主机的用户名和主机名。
  • [command]:可选的在远程主机上执行的命令。

常用选项

  • -l user:指定要登录的用户。
  • -p port:指定连接到远程主机的端口号,默认是22。
  • -i identity_file:指定身份验证文件(私钥文件)。
  • -v:详细模式,可以显示调试信息。
  • -C:启用压缩。
  • -N:不执行远程命令,只进行端口转发。
  • -f:后台运行。
  • -L local_port:remote_host:remote_port:本地端口转发。
  • -R remote_port:local_host:local_port:远程端口转发。
  • -D [bind_address:]port:动态应用程序级端口转发。

实例

基本用法

连接到远程主机:

ssh user@hostname

示例:

ssh test@runoob.com

指定端口连接:

ssh -p 2222 user@hostname

示例:

ssh -p 2222 test@runoob.com

使用身份验证文件:

ssh -i /path/to/private_key user@hostname

示例:

ssh -i ~/.ssh/id_rsa test@runoob.com

在远程主机上执行命令:

ssh user@hostname command

示例:

ssh test@runoob.com ls -la

详细模式:

ssh -v user@hostname

示例:

ssh -v test@runoob.com

启用压缩:

ssh -C user@hostname

示例:

ssh -C test@runoob.com

后台运行且不执行命令:

ssh -f -N user@hostname

示例:

ssh -f -N test@runoob.com

端口转发

本地端口转发:

ssh -L local_port:remote_host:remote_port user@hostname

示例:

ssh -L 8080:localhost:80 test@runoob.com

远程端口转发:

ssh -R remote_port:local_host:local_port user@hostname

示例:

ssh -R 8080:localhost:80 test@runoob.com

动态端口转发:

ssh -D [bind_address:]port user@hostname

示例:

ssh -D 1080 test@runoob.com

高级用法

配置文件

SSH 客户端配置文件位于 ~/.ssh/config,可以在其中设置常用配置。

示例:

Host example
    HostName example.com
    User john
    Port 2222
    IdentityFile ~/.ssh/id_rsa

使用时只需:

ssh example

SSH 代理转发

启用代理转发:

ssh -A user@hostname

示例:

ssh -A test@runoob.com

X11 转发

启用 X11 转发:

ssh -X user@hostname

示例:

ssh -X test@runoob.com

Linux 命令大全

本文来源于互联网:Linux ssh 命令