putty 連接亞馬遜服務器

使用 PuTTY 從 Windows 鏈接到亞馬遜雲的 Linux 實例

轉載 2016年07月22日 14:09:47
 

使用 PuTTY 從 Windows 鏈接到亞馬遜雲的 Linux 實例

啓動您的實例以後,您能夠鏈接到該實例,而後像使用您面前的計算機同樣來使用它。php

Notehtml

啓動實例後,須要幾分鐘準備好實例,以便您能鏈接到實例。檢查您的實例是否經過了狀態檢查 - 您能夠在Instances (實例) 頁上的 Status Checks (狀態檢查) 列中查看此信息。ubuntu

如下說明介紹如何使用 PuTTY(適用於 Windows 的免費 SSH 客戶端)鏈接到您的實例。若是您在嘗試鏈接到您的實例時收到錯誤消息,請參閱排查實例的鏈接問題緩存

先決條件

使用 PuTTY 鏈接到您的 Linux 實例以前,請先完成如下先決條件:安全

  • 安裝 PuTTY網絡

    從 PuTTY 下載頁面下載並安裝 PuTTY。若是您安裝的是舊版本的 PuTTY,建議您下載最新版本。確保安裝整個套件。ssh

  • 得到實例的 IDide

    您能夠經過使用 Amazon EC2 控制檯(位於 Instance ID (實例 ID) 列中)得到您的實例的 ID。若是您願意,您可使用 describe-instances (AWS CLI) 或 ec2-describe-instances (Amazon EC2 CLI) 命令。工具

  • 得到實例的公有 DNS 名稱優化

    您可使用 Amazon EC2 控制檯獲取實例的公有 DNS(勾選 Public DNS (公有 DNS) 列;若是此列處於隱藏狀態,請單擊 Show/Hide (顯示/隱藏) 圖標並選擇 Public DNS (公有 DNS))。若是您願意,您可使用 describe-instances(AWS CLI) 或 ec2-describe-instances (Amazon EC2 CLI) 命令。

  • 查找私有密鑰

    您須要使用您在啓動實例時指定的密鑰對的 .pem 文件的徹底限定路徑。

  • 容許從您的 IP 地址到您的實例的入站 SSH 流量

    確保與您的實例關聯的安全組容許來自您的 IP 地址的傳入 SSH 流量。有關更多信息,請參閱受權網絡訪問您的實例

    Important

    默認狀況下,您的默認安全組不容許傳入 SSH 流量。

使用 PuTTYgen 轉換您的私有密鑰

PuTTY 自己不支持 Amazon EC2 生成的私有密鑰格式 (.pem)。PuTTY 有一個名爲 PuTTYgen 的工具,可將密鑰轉換成所需的 PuTTY 格式 (.ppk)。您必須將私有密鑰轉換爲此格式 (.ppk),而後才能嘗試使用 PuTTY 鏈接到您的實例。

轉換您的私有密鑰

  1. 啓動 PuTTYgen(例如,在「Start」菜單中,依次單擊「All Programs > PuTTY > PuTTYgen 」)。

  2. 在 Type of key to generate (要生成的密鑰類型) 下,選擇 SSH-2 RSA。

    PuTTYgen 中的 SSH-2 RSA 密鑰
  3. 單擊「Load」。在默認狀況下,PuTTYgen 僅顯示擴展名爲 .ppk 的文件。要找到您的 .pem 文件,請選擇顯示全部類型的文件的選項。

    選擇全部文件類型
  4. 爲啓動實例時指定的密鑰對選擇 .pem 文件,而後單擊 Open。單擊 OK (肯定) 關閉確認對話框。

  5. 單擊 Save private key (保存私有密鑰),以 PuTTY 可用的格式保存密鑰。PuTTYgen 顯示一條關於在沒有口令的狀況下保存密鑰的警告。單擊 Yes (是)。

    Note

    私有密鑰的口令是一層額外保護,所以,即便您的私有密鑰被泄露,在沒有口令的狀況下,該密鑰仍不可用。使用口令的缺點是讓自動化變得更難,由於登陸到實例或複製文件到實例須要進行人爲干預。

  6. 爲該密鑰指定與密鑰對相同的名稱(如,my-key-pair)。PuTTY 自動添加 .ppk 文件擴展名。

您的私有密鑰格式如今是正確的 PuTTY 使用格式了。您如今可使用 PuTTY 的 SSH 客戶端鏈接到實例。

啓動 PuTTY 會話

經過如下過程使用 PuTTY 鏈接到您的 Linux 實例。您將須要已爲私鑰建立的 .ppk 文件。若是您在嘗試鏈接到您的實例時收到錯誤消息,請參閱排查實例的鏈接問題

啓動 PuTTY 會話

  1. (可選)您能夠在本地系統(而不是實例)上使用如下命令之一驗證明例上的 RSA 密鑰指紋。若是您從第三方的公用 AMI 啓動了實例,則可能須要這樣作。找到 SSH HOST KEY FINGERPRINTS 部分,記下 RSA 指紋(例如 1f:51:ae:28:bf:89:e9:d8:1f:25:5d:37:2d:7d:b8:ca:9f:f5:f1:6f)並將它與實例的指紋進行比較。

    • get-console-output (AWS CLI)

      aws ec2 get-console-output --instance-id instance_idaws ec2 get-console-output --instance-id instance_idinstance_id
    • ec2-get-console-output (Amazon EC2 CLI)

      ec2-get-console-output instance_idec2-get-console-output instance_idinstance_id

    Note

    SSH HOST KEY FINGERPRINTS 部分僅在實例首次啓動以後可用。

  2. 啓動 PuTTY(在「Start」菜單中,單擊「All Programs > PuTTY > PuTTY」)。

  3. 在「Category (類別)」窗格中,選擇 Session (會話) 並填寫如下字段:

    1. 在 Host Name (主機名) 框中,輸入 user_name@public_dns_name。確保爲您的 AMI 指定相應的用戶名。例如:

      • 對於 Amazon Linux AMI,用戶名稱是 ec2-user

      • 對於 RHEL5 AMI,用戶名稱爲 root 或 ec2-user

      • 對於 Ubuntu AMI,用戶名稱是 ubuntu

      • 對於 Fedora AMI,用戶名稱爲 fedora 或 ec2-user

      • 對於 SUSE Linux,用戶名稱是 root 或 ec2-user

      • 另外,若是 ec2-user 和 root 沒法使用,請與 AMI 供應商覈實。

    2. 在 Connection type (鏈接類型) 下,選擇 SSH。

    3. 確保 Port (端口) 爲 22。

    PuTTY 配置 - 會話
  4. 在 Category (類別) 窗格中,展開 Connection (鏈接),再展開 SSH,而後選擇 Auth (身份驗證)。完成如下操做:

    1. 單擊 Browse (瀏覽)。

    2. 選擇您爲密鑰對生成的 .ppk 文件,而後單擊 Open (打開)。

    3. (可選)若是打算稍後從新啓動此會話,則能夠保存此會話信息以便往後使用。在 Category (類別) 樹中選擇Session (會話),爲 Saved Sessions (已存會話) 中的會話輸入一個名稱,而後單擊 Save (保存)。

    4. 單擊 Open (打開) 開始 PuTTY 會話。

    PuTTY 配置 - 身份驗證
  5. 若是這是您第一次鏈接到此實例,PuTTY 會顯示安全警告對話框,詢問您是否信任您要鏈接到的主機。

  6. (可選)驗證安全警報中的指紋是否與在步驟 1 中獲取的指紋匹配。若是這些指紋不匹配,則表示有人可能在試圖實施「中間人」攻擊。若是匹配,請繼續到下一步。

  7. 單擊 Yes (是)。此時會打開一個窗口而且您鏈接到了您的實例。

    Note

    若是您在將私有密鑰轉換成 PuTTY 格式時指定了口令,當您登陸到實例時,您必須提供該口令。

若是您在嘗試鏈接到您的實例時收到錯誤消息,請參閱排查實例的鏈接問題

使用 PuTTY 安全複製客戶端將文件傳輸到您的 Linux 實例

PuTTY 安全複製客戶端 (PSCP) 是一個命令行工具,您能夠用它在 Windows 計算機與 Linux 實例之間傳輸文件。若是您更喜歡圖形用戶界面(GUI),您可使用一種叫做「WinSCP」的開源 GUI 工具。有關更多信息,請參閱 使用 WinSCP 將文件傳輸到您的 Linux 實例

要使用 PSCP,您將須要在使用 PuTTYgen 轉換您的私有密鑰中生成的私有密鑰。您還須要 Linux 實例的公有 DNS 地址。

如下示例將文件 Sample_file.txt 從 Windows 計算機傳輸到 Linux 實例中的 /usr/local 目錄:

C:\> pscp -i C:\Keys\my-key-pair.ppk C:\Sample_file.txt user_name@public_dns:/usr/local/Sample_file.txtC:\>

使用 WinSCP 將文件傳輸到您的 Linux 實例

WinSCP 是適用於 Windows 的基於 GUI 的文件管理器,您能夠經過它來使用 SFTP、SCP、FTP 和 FTPS 協議將文件上傳並傳輸到遠程計算機。經過 WinSCP,您能夠將 Windows 計算機中的文件拖放到 Linux 實例或同步這兩個系統之間的全部目錄結構。

要使用 WinSCP,您將須要在 使用 PuTTYgen 轉換您的私有密鑰 中生成的私有密鑰。您還須要 Linux 實例的公有 DNS 地址。

  1. 從 http://winscp.net/eng/download.php 上下載並安裝 WinSCP。對於大多數用戶而言,採用默認安裝選項就能夠了。

  2. 啓動 WinSCP。

  3. 在 WinSCP login (WinSCP 登陸) 屏幕中,對於 Host name (主機名),請輸入實例的公有 DNS 地址。

  4. 對於 User name (用戶名),請輸入默認的 AMI 用戶名。對於 Amazon Linux AMI,用戶名是 ec2-user。對於 Red Hat AMI,用戶名是 root,而對於 Ubuntu AMI,用戶名則是 ubuntu

  5. 爲您的實例指定私有密鑰。對於 Private key (私有密鑰),請輸入私有密鑰的路徑或單擊「…」按鈕以瀏覽文件。有關更新的 WinSCP 版本,您須要單擊 Advanced (高級) 打開高級網站設置,而後在 SSH 下單擊 Authentication (身份驗證) 以查找 Private key file (私有密鑰文件) 設置。

    Note

    WinSCP 須要 PuTTY 私有密鑰文件 (.ppk)。您可使用 PuTTYgen 將 .pem 安全密鑰文件轉換成 .ppk 格式。有關更多信息,請參閱 使用 PuTTYgen 轉換您的私有密鑰

  6. (可選)在左側面板中,單擊 Remote directory (目錄),而後,對於 Directories (遠程目錄),輸入要將文件添加到其中的目錄路徑。有關更新版本的 WinSCP,您須要單擊 Advanced (高級) 打開高級網站設置,而後在 Environment (環境) 下單擊 Directories (目錄) 查找 Remote directory (遠程目錄) 設置。

  7. 單擊 Login (登陸) 進行鏈接,而後單擊 Yes (是) 將主機指紋添加到主機緩存。

    WinSCP 屏幕
  8. 創建鏈接後,在鏈接窗口中,您的 Linux 實例顯示在右側,本地計算機顯示在左側。您能夠直接將文件從本地計算機拖放到遠程文件系統。有關 WinSCP 的更多信息,請參閱 http://winscp.net/eng/docs/start 中的項目文檔。

    Note

    若是您收到一條「Cannot execute SCP to start transfer」錯誤,則必須先在您的 Linux 實例上安裝 scp。對於某些操做系統,此命令會位於 openssh-clients 程序包中。對於 Amazon Linux 變體(如經 Amazon ECS 優化的 AMI),使用如下命令安裝 scp.

    [ec2-user ~]$ sudo yum install -y openssh-clientssudo yum install -y openssh-clients

 


文章來源:
https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/putty.html

PUTY下載
http://www.chiark.greenend.org.uk/~sgtatham/putty/

Amazon EC2 Linux 實例入門 https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/EC2_GetStarted.html

相關文章
相關標籤/搜索