SSH 環境を作成する - AWS Cloud9

SSH 環境を作成する

AWS Cloud9 コンソールを使用して AWS Cloud9 SSH 開発環境を作成します。(コードで SSH 環境を作成することはできません)。

Prerequisites

  • まず、 のセットアップAWS Cloud9 でステップを完了していることを確認し、AWS Cloud9 コンソールにサインインして環境を作成できるようにします。

  • 既存のクラウドコンピューティングインスタンス (例えば、AWS アカウントの Amazon EC2 インスタンス)、またはお客様自身のサーバーで AWS Cloud9 を環境に接続したいものを特定します。

  • 既存のインスタンスまたは独自のサーバーが、すべての を満たしていることを確認しますSSH ホスト要件 これには、特定のバージョンの Python、Node.js、およびその他のコンポーネントをインストールしていること、ログイン後に AWS Cloud9 をスタートしたいディレクトリに具体的なの許可を設定していること、関連した Amazon Virtual Private Cloud を設定していることなどが含まれます。

SSH 環境を作成する

  1. 前述の前提条件を完了していることを確認してください。

  2. SSH クライアントを使用して既存のインスタンスまたは独自のサーバーに接続します (まだ接続していない場合)。これは、この手順で後ほど説明するように、必要なパブリック SSH キー値をインスタンスやサーバーに追加するために必要です。

    注記

    既存の AWS クラウドコンピューティングインスタンスに接続するには、以下のリソース (1 つ以ぺ上) を参照してください。

    独自のサーバーに接続するには、「ssh コマンドを使用してサーバーに接続」 (macOS/Linux から)、または「PuTTY を使用してサーバーに接続」 (Windows から) などの語句を使用してインターネットを検索してください。

  3. https://console.aws.amazon.com/cloud9/ でAWS Cloud9 コンソールにサインインします。

  4. AWS Cloud9 コンソールにサインインした後、上部のナビゲーションバーで、環境を作成する AWS リージョンを選択します。利用可能な AWS リージョン の一覧については、AWS 全般のリファレンスAWS Cloud9 を参照してください。

    
                     AWS コンソールの AWS Cloud9 リージョンセレクター
  5. 今回、開発環境を初めて作成する場合は、ウェルカムページが表示されます。左新規AWS Cloud9環境パネルで、[ 環境を作成 ]を選択します。

    以前に開発環境を作成したことがある場合は、画面の左側にあるペインを展開し、お客様の環境を選択してから、環境を作成するを選択します。

    ようこそ」ページで:

    
                     ウェルカムページが表示される場合は、[Create environment (環境の作成)]ボタンを選択する

    または、「お客様の環境」ページで:

    
                     ウェルカムページが表示されない場合は、[Create environment (環境の作成)]ボタンを選択する
  6. Name environment (環境に名前を付ける)」ページの[Name (名前)]に 対しては、環境の名前を入力します。

  7. 環境の説明を追加するには、[Description (説明)]に入力します。

  8. Next step]を選択します。

  9. Environment type (環境タイプ)]で [Connect and run in remote server (SSH) (リモートサーバーに接続して実行する)]を選択します。

  10. User (ユーザー)]に、この手順でインスタンスまたはサーバーに接続するために前に使用したログイン名を入力します。たとえば、AWS クラウドコンピューティングインスタンスの場合は、ec2-userubunturoot などを入力します。

    注記

    最善の結果を得るには、ログイン名をインスタンスやサーバーの管理者許可または管理者ユーザーに関連付けることをお勧めします。特に、このログイン名はインスタンスやサーバーの Node.js インストールを所有している必要があります。これをチェックするには、インスタンスやサーバーのターミナルから、ls -l $(which node) (または nvm を使用している場合は ls -l $(nvm which node)) コマンドを実行します。このコマンドは、Node.js インストールの所有者名 (およびインストールの許可、グループ名、場所) を表示します。

  11. Host (ホスト)]に、インスタンスまたはサーバーのパブリック IP アドレス (優先) またはホスト名を入力します。

  12. Port (ポート)]に、インスタンスまたはサーバーとの接続に AWS Cloud9 で使用するポートを入力します。または、デフォルトポートのままにしておきます。

  13. ログイン後に AWS Cloud9 をスタートしたいインスタンスやサーバー上のディレクトリのパスを指定すること。この手順の前提条件で、以前、これを確認しました。アドバンスト設定を拡張した後、環境パスにパスを入力します。空白のままにすると、AWS Cloud9 はログイン後に通常インスタンスまたはサーバーが開始されるディレクトリを使用します。これは通常、ホームまたはデフォルトのディレクトリです。

  14. インスタンスまたはサーバーの Node.js バイナリへのパスを指定するには、[Advanced settings (詳細設定)]を展開し、[Node.js binary path (Node.js バイナリパス)]にパスを入力します。パスを取得するには、インスタンスまたはサーバーでコマンド which node を実行します (nvm を使用している場合は nvm which node)。たとえば、パスは /usr/bin/node のようになります。空白のままにした場合、AWS Cloud9 は接続の試行時に Node.js バイナリの場所の推測を試みます。

  15. インスタンスまたはサーバーが使用するジャンプホストを指定するには、[Advanced settings (詳細設定)]を展開し、ジャンプホストに関する情報を [SSH jump host (SSH ジャンプホスト)]を入力します。形式は USER_NAME@HOSTNAME:PORT_NUMBER を使用します (例: ec2-user@:ip-192-0-2-0:22)。

    ジャンプホストは、次の要件を満たしている必要があります。

    • SSH を使用してパブリックインターネット経由で到達可能とする必要があります。

    • 特定のポートを経由したすべての IP アドレスからのインバウンドアクセスを許可する必要があります。

    • 既存のインスタンスまたはサーバーの ~/.ssh/authorized_keys ファイルにコピーされたパブリック SSH キー値を、ジャンプホストの ~/.ssh/authorized_keys ファイルにもコピーする必要があります。

    • Netcat をインストールする必要があります。

  16. Copy key to clipboard (キーをクリップボードにコピー)]を選択します (これは [View public SSH key (パブリック SSH キーの表示)]と [Advanced settings (詳細設定)]の間になります)。コピーしたパブリック SSH キー値を、この手順で前に接続した既存のインスタンスやサーバーの ~/.ssh/authorized_keys ファイル内に貼り付けます (~ は、この手順で前に [User (ユーザー)]に指定したログイン名のホームディレクトリを示します)。

    注記

    コピーしたパブリック SSH キーの値を確認するには、[View public SSH key (パブリック SSH キーの表示)]を展開します。

  17. Next step]を選択します。

  18. Review (見直し)]ページで、[Create environment (環境の作成)]を選択します。AWS Cloud9 が環境を作成する間、待機します。これには数分間かかる場合があります。

少なくとも 5 分後、AWS Cloud9 に IDE が表示されない場合は、ウェブブラウザ、 AWS アクセス許可、インスタンス、または関連するネットワークに問題がある可能性があります。可能な修正については、トラブルシューティング環境を開くことができない を参照してください。

注記

ご使用の環境がプロキシを使用してインターネットにアクセスしている場合は、プロキシの詳細を AWS Cloud9 に提供して、依存関係をインストールできるようにする必要があります。詳細については、「注意:コラボレーションサポートの依存関係をインストールできませんでした」を参照してください。