如何使用 SSH 连接到你的云服务器

2017-7-5 18:00 Herald 382 云计算SSH云服务器

概述

作为一个初次接触 Linux 服务器的用户,如果你在云计算平台新创建了一个云服务器,那么你就需要学习如何使用 SSH 连接并管理服务器。SSH,即安全的 Shell,是一种用于远程服务器登录和执行命令的加密网络协议。它是被用作 Linux 服务访问和交互的标准方法。

本指南将向你介绍如何通过 SSH 客户端登录并连接到你新创建的 Linux 云服务器。

准备工作

服务器和登录信息

如果你还没有云服务器,请参考下列指南创建:

为了通过 SSH 连接到远程 Linux 服务器,你需要具备:

  • 用户名:用于远程登录的用户。默认的管理用户或超级用户,对常见的 Linux 服务器为 root
  • 密码或 SSH 密钥:用于验证登录用户身份的密码。如果你在创建云服务器时添加了 SSH 公钥,那么你必须确保自己有与公钥相匹配的私钥(以及密码短语,如果创建密钥对的时候设置了的话。)
  • 服务器 IP 地址:该 IP 地址是在互联网上识别你服务器的唯一标识,即公网 IP。在你创建云服务器的平台上能够找到。

如果你在创建云服务器时并未添加 SSH 密钥,通常云计算平台会在你的云服务器创建完成后给你发送一封包含服务器信息和 root 密码的电子邮件,你应该第一时间修改服务器的 root 密码。

SSH 客户端

用以连接到 Linux 服务器的 SSH 客户端有许多种供你选,本指南仅介绍以下两种:

  • OpenSSH(Linux 和 macOS):大多数类 Unix 操作系统默认提供的 ssh 命令
  • PuTTY(Windows):适用于 Windows 系统的免费 SSH 客户端,可以访问 PuTTY 官网 下载。Putty.exe 是 SSH 客户端,如果需要生成 SSH 密钥可以下载 puttygen.exe

SSH Root 身份登录

现在你已经具备了所有必须的信息和软件,可以准备登录到你的云服务器了。请确保遵循与你所使用的 SSH 客户端相对应的步骤进行操作

选择一:OpenSSH (Linux 和 macOS)

OpenSSH ssh 客户端是命令工具,因此只要打开一个终端窗口即可开始使用了。

第一步 — 启动连接

在命令提示符下输入以下信息尝试以 root 用户身份连接到服务器(用服务器公网 IP 替换命令中的 SERVER_IP_ADDRESS

ssh root@SERVER_IP_ADDRESS

例如,如果服务器的公网 IP 地址为 123.234.123.234,则命令应该像这样:ssh root@123.234.123.234

初次连接到服务器,你将会看到类似下面这样警告信息:

The authenticity of host '123.123.123.123 (123.123.123.123)' can't be established.
ECDSA key fingerprint is
79:95:46:1a:ab:37:11:8e:86:54:36:38:bb:3c:fa:c0.
Are you sure you want to continue connecting (yes/no)?

这个警告告诉你在本地并未找到当前连接的远程服务器信息,因此连接未被建立,由于这是第一次连接,因此是完全符合预期的。输入 yes 即可继续连接服务器。跳过到第二步,身份认证。
如果你连接远程服务器时发生了如下警告:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
...

这种情况一般发生在给服务器重装系统后重新连接时,或者新创建的云服务器使用的是以前曾经分配给过你的 IP 地址等情况,即 IP 地址相同,但本地记录的主机密钥信息已经发生了变化。只需在本地计算机执行以下命令,即可移除指定 IP 地址旧的主机密钥记录(使用具体的 IP 地址替换命令中的 SERVER_IP_ADDRESS):

ssh-keygen -R SERVER_IP_ADDRESS

现在,重新连接服务器试试看。

第二步 — 身份认证

身份认证这一步涉及使用密码或使用私有 SSH 密钥验证你有是否有权以 root 用户身份登录。

如果你在创建云服务器时添加了 SSH 公钥,并且在本地电脑上安装了与之相对应的私钥,OpenSSH 就会使用密钥对 root 账户进行身份认证。如果你所使用的密钥带有密码短语,则需要输入正确的密码短语才能完成登录过程。此时,如果你无法登录,则需要使用以下命令启动 ssh-agent 并添加 SSH 密钥(假设你的密钥名为 “id_rsa”),然后回到第一步重新开始:

eval `ssh-agent -s`
ssh-add ~/.ssh/id_rsa

如果你在创建云服务器时并未添加 SSH 公钥,则会提示你输入临时密码,同时,你应该在登录后第一时间修改 root 密码。按下列步骤操作:

  1. 从 E-mail 中复制临时 root 密码,并在提示输入密码时粘贴到命令行
  2. 输入 passwd root 并根据提示修改 root 密码
  3. (current) UNIX password 粘贴临时密码
  4. Enter new UNIX password 输入新的 root 密码
  5. Retype new UNIX password 再输入一次新的 root 密码

不要忘记你新设置的 root 密码。

现在,你已经成功登陆到远程服务器了!

选择二:PuTTY (Windows)

双击 putty.exe 即可启动程序并显示配置界面。

注意:本指南并不涉及通过 PuTTY 使用 SSH 密钥认证方面的内容。如果你有此需要,可使用 PuTTYgen 生成并加载密钥。

第一步 — 配置连接

使用 putty 连接 SSH,需确保设置好以下几项:

  • Host Name (or IP address):输入服务器的公网 IP 地址
  • Port:22(默认)
  • Connection Type:SSH(默认)

你可以在 “Saved Sessions” 字段中输入一个名字,然后点击 “save” 保存配置,以便下次使用。

第二步 — 启动连接

要进行连接,双击保存的会话名并接受安全提示(安全提示仅在首次连接服务器时显示)。

第三步 — 身份认证

身份认证这一步设计到使用用户名和临时密码连接到服务器,请按以下步骤操作:

  1. login as 命令提示符下输入 root
  2. 从 E-mail 中复制临时 root 密码,并在粘贴到命令行
  3. 输入 passwd root 并根据提示修改 root 密码
  4. (current) UNIX password 粘贴临时密码
  5. Enter new UNIX password 输入新的 root 密码
  6. Retype new UNIX password 再输入一次新的 root 密码

不要忘记你新设置的 root 密码。

恭喜你,已经能够通过 SSH 连接到云服务器了!

{{ headers["x-wp-total"] }} 条评论

{{ post_id = '2268' }}

回复 {{ reply_to }}