高效远程管理必须了解的 SSH 命令

安全 Shell (SSH) 是安全访问和管理远程服务器的重要工具。无论您是系统管理员、开发人员还是技术爱好者,掌握 SSH 命令都可以显著改善您的工作流程。本文介绍了每个用户都应该熟悉的必知 SSH 命令。

什么是 SSH?

SSH(安全外壳)是一种协议,允许用户通过不安全的网络安全地连接到远程计算机。它提供加密通信和各种身份验证方法,使其成为远程管理的基本工具。

基本 SSH 命令

1. 连接到远程服务器

连接远程服务器的基本语法是:

ssh 用户名@主机名

username 替换为您的远程用户帐户,并将 hostname 替换为服务器的地址(IP 或域)。

2. 指定端口

如果您的 SSH 服务器监听的端口不是默认的 22,则可以使用 -p 选项指定它:

ssh -p 端口号 用户名@主机名

3. 使用 SCP 复制文件

安全复制协议 (SCP) 用于在本地和远程主机之间安全地传输文件。将文件从本地计算机复制到远程服务器的基本语法是:

scp 本地文件 用户名@主机名:/远程/目录/

要将文件从远程服务器复制到本地计算机:

scp 用户名@主机名:/远程/文件本地目录/

4. 运行远程命令

无需交互登录即可在远程服务器上执行命令:

ssh 用户名@主机名 'command'

例如,检查远程服务器上的磁盘使用情况:

ssh 用户名@主机名 'df -h'

5. 使用 SSH 密钥进行身份验证

与使用密码相比,SSH 密钥提供了一种更安全的登录远程服务器的方法。使用以下命令生成密钥对:

ssh-keygen

然后,将您的公钥复制到远程服务器:

ssh-copy-id 用户名@主机名

6. 使用 SSH 建立隧道

SSH 隧道允许您在本地计算机和远程服务器之间创建安全连接,该连接可用于访问远程网络上的服务。例如,要将本地端口转发到远程端口:

ssh -L 本地端口:远程主机:远程端口 用户名@主机名

此命令通过 SSH 连接将您机器上的 local_port 转发到 remote_host 上的 remote_port

7. SSH 配置文件

SSH 配置文件允许您保存常用的 SSH 连接选项。它通常位于 ~/.ssh/config。示例配置条目可能如下所示:

Host alias
    HostName hostname
    User username
    Port port_number
    IdentityFile ~/.ssh/id_rsa

配置完成后,您可以使用别名进行连接:

ssh 别名

8. 后台 SSH 会话

您可以使用 -f 选项在后台运行 SSH 会话,这对于运行后台进程很有用:

ssh -f 用户名@主机名 'command'

要在后台执行命令:

ssh -f 用户名@主机名 'command &'

9. 检查 SSH 版本

要检查系统上安装的 SSH 版本:

SSH-V

10. 关闭 SSH 会话

要退出 SSH 会话,只需输入:

出口

结论

了解这些基本的 SSH 命令可以大大提高您高效安全地管理远程服务器的能力。无论您是传输文件、运行命令还是设置安全隧道,SSH 都是每个技术专业人员都应该掌握的强大工具。