Ubuntu - 安全外壳
Ubuntu - 安全外壳 (SSH)
Section titled “Ubuntu - 安全外壳 (SSH)”Secure Shell (SSH),即安全外壳,是一种加密的网络协议,用于在不安全的网络上安全地操作网络服务。它最显著的应用是远程登录和命令行执行。SSH 为 SSH 客户端和 SSH 服务器之间的所有通信提供了一个安全的通道。
1. 在 Ubuntu 上安装 OpenSSH 服务器
Section titled “1. 在 Ubuntu 上安装 OpenSSH 服务器”大多数 Ubuntu Desktop 安装没有预装 SSH 服务器。Ubuntu Server 安装通常会包含它。要安装或确保它已存在:
步骤 1.1 − 更新您的软件包列表:
sudo apt update步骤 1.2 − 安装 OpenSSH 服务器软件包:
sudo apt install openssh-server步骤 1.3 − 验证 SSH 服务是否正在运行:
sudo systemctl status ssh您应该会看到 ‘active (running)‘(活动(正在运行))。如果没有,您可以使用 sudo systemctl start ssh 启动它,并使用 sudo systemctl enable ssh 使其在启动时自动运行。
2. 查找您的 Ubuntu 机器的 IP 地址
Section titled “2. 查找您的 Ubuntu 机器的 IP 地址”您需要您的 Ubuntu 机器的 IP 地址才能连接到它。在 Ubuntu 机器上,在终端中运行以下任一命令:
ip addr show在您的活动网络接口(例如,eth0 或 wlpXsY)下查找类似 inet 192.168.1.10/24 的条目。或者,为了更快地仅查看 IP 地址:
hostname -I这通常会首先显示您的主要 IP 地址。
3. 从客户端机器连接
Section titled “3. 从客户端机器连接”您可以从各种操作系统进行连接。
从 Linux 或 macOS 连接:
Section titled “从 Linux 或 macOS 连接:”打开终端并使用 ssh 命令:
ssh username@your_ubuntu_ip_address将 username 替换为您在 Ubuntu 机器上的实际用户名,将 your_ubuntu_ip_address 替换为其 IP 地址(例如,ssh john@192.168.1.10)。
从 Windows 连接:
Section titled “从 Windows 连接:”现代 Windows(Windows 10 及更高版本)包含内置的 OpenSSH 客户端。您可以打开 PowerShell 或命令提示符,使用与 Linux/macOS 相同的命令:
ssh username@your_ubuntu_ip_address另外,您可以使用第三方 SSH 客户端,例如 PuTTY:
步骤 3.1 (PuTTY) − 从其官方网站 (putty.org) 下载 PuTTY。
步骤 3.2 (PuTTY) − 启动 PuTTY。在 ‘Host Name (or IP address)‘(主机名或 IP 地址)字段中,输入您的 Ubuntu 机器的 IP 地址。确保 ‘Port’(端口)设置为 22,并且 ‘Connection type’(连接类型)为 ‘SSH’。
步骤 3.3 (PuTTY) − 点击“打开”。
首次连接和认证:
Section titled “首次连接和认证:”首次连接到新服务器时,您可能会看到关于主机真实性的消息:
The authenticity of host '192.168.1.10 (192.168.1.10)' can't be established.ECDSA key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.Are you sure you want to continue connecting (yes/no/[fingerprint])?输入 yes 并按 Enter 键。这将服务器的公钥指纹保存到您本地机器的 known_hosts 文件中,因此除非服务器的密钥发生变化,否则您不会再次收到提示。
接下来,系统会提示您输入 Ubuntu 机器上的密码。输入密码并按 Enter 键。
如果成功,您将远程登录到您的 Ubuntu 机器的命令行。
4. 最佳实践:基于 SSH 密钥的认证
Section titled “4. 最佳实践:基于 SSH 密钥的认证”密码认证虽然方便,但不如基于密钥的认证安全。SSH 密钥提供了一种更安全的登录服务器方式,无需输入密码。
简而言之,过程包括:
- 在您的客户端机器上生成 SSH 密钥对(公钥和私钥),使用
ssh-keygen。 - 将公钥复制到您的 Ubuntu 服务器上的
~/.ssh/authorized_keys文件中,使用ssh-copy-id username@your_ubuntu_ip_address。 - 配置 SSH 服务器(可选,但推荐用于更高安全性),以便在设置密钥后禁用密码认证。
这个主题更为高级,但对于经常使用 SSH 的用户强烈推荐。您可以通过搜索“SSH key authentication”在线找到许多教程。
SSH 是管理 Linux 服务器的基本工具,支持安全的远程管理、文件传输(使用 scp 或 sftp)和隧道连接。