概述
OpenSSH 客户端是一个包含多种实用程序的软件包,用于与远程系统进行安全通信。它主要通过 ssh、scp、sftp 等命令执行远程登录、文件复制、文件系统管理等功能。
主要包含的命令
openssh-client 包包含的主要命令如下:
- ssh: 安全地登录到远程服务器
- scp: 在远程服务器和本地之间复制文件
- sftp: 与远程服务器进行交互式文件传输
- ssh-keygen: 生成和管理 SSH 密钥对
- ssh-agent: 将 SSH 密钥加载到内存中,避免重复输入密码
安装
大多数 Linux 发行版都默认包含 OpenSSH 客户端。如果未安装,您可以使用以下命令进行安装。
Debian/Ubuntu
sudo apt update
sudo apt install openssh-client
使用 APT 包管理器进行安装。
CentOS/RHEL/Fedora
sudo yum install openssh-clients
使用 YUM 或 DNF 包管理器进行安装。
使用示例
以下是 openssh-client 包中主要命令的常用使用示例。
使用 SSH 登录到远程服务器
ssh username@your_server_ip
使用用户名和 IP 地址或主机名连接到远程服务器。
连接到特定端口的 SSH
ssh -p 2222 username@your_server_ip
如果使用非默认 SSH 端口(22),请使用 -p 选项。
使用 SCP 将本地文件复制到远程服务器
scp /path/to/local/file.txt username@your_server_ip:/path/to/remote/directory/
将本地文件复制到远程服务器的特定路径。
使用 SCP 将远程文件复制到本地
scp username@your_server_ip:/path/to/remote/file.txt /path/to/local/directory/
将远程服务器的文件复制到本地系统。
使用 SFTP 启动交互式文件传输会话
sftp username@your_server_ip
连接到 SFTP 客户端以交互方式传输或管理文件。
提示与注意事项
使用 OpenSSH 客户端时的有用提示和安全注意事项。
使用 SSH 密钥
使用 SSH 密钥代替密码可以增强安全性并自动化登录过程。使用 `ssh-keygen` 生成密钥,然后使用 `ssh-copy-id` 将公钥复制到服务器。
- 设置无密码登录
- 增强安全性(防止暴力破解攻击)
- 在自动化脚本中很有用
利用 ~/.ssh/config 文件
将经常连接的服务器的连接信息保存在 `~/.ssh/config` 文件中,可以简化连接命令并预设特定选项。
- 设置别名:`Host myserver`
- 指定用户名、端口和密钥文件路径:`User`、`Port`、`IdentityFile`
- 设置自动登录和隧道
安全注意事项
使用 SSH 客户端时,请注意以下事项以维护安全。
- 切勿将私钥(`id_rsa`)暴露给外部。
- 为私钥设置强密码(passphrase)。
- 禁用不必要的端口转发。
- 不要信任未知的 SSH 主机密钥指纹。