2021/03/24

Visual Studio Codeを使用してインスタンスにSSH接続する方法|SSH接続に向けてAWSでの準備5ステップ

 
  

AWS EC2 インスタンスにSSH接続

Visual Studio Codeを使用してインスタンスにSSH接続する方法をご紹介します。インスタンスとはAWSサービスであるAmazon EC2の仮想コンピューティング環境のことです。 Visual Studio Codeを使うとローカルPCからのクラウドにあるインスタンスのファイルやフォルダを操作することができます。

SSH接続に向けてAWSでの準備5ステップ

インスタンスにSSH接続するために必要な準備を5つ解説します。

1.EC2 インスタンスの準備

まずはSSH接続したいインスタンスの準備をAWSマネジメントコンソールから行います。今回はLinuxインスタンスを対象とします。 AWSマネジメントコンソールのAWSサービスからEC2を選択します。EC2コンソールからインスタンスの項目を選択して表示します。 次に、インスタンスを起動します。起動とはインスタンスを作成することです。必要な設定を選択し、作成してください。 AWSのマネジメントコンソールでインスタンスのステータスチェックが成功していることを確認できれば、インスタンスの準備は完了です。

2.パブリックIPアドレスの取得

今回はインスタンスのパブリックIPv4アドレスを使ってSSH接続します。 パブリックIPアドレスは、インスタンスの起動時の設定で「自動割り当てパブリックIP」を有効にするか、インスタンスの起動後にElastic IP(静的IPアドレス)を割り当てます。 AWSマネジメントコンソールからEC2を選択し、インスタンスを選択するとインスタンスの情報が表示されるので、SSH接続するインスタンスのパブリックIPv4アドレスを確認しましょう。

3.キーペアの確認

キーペアはインスタンス起動時に指定した.pemファイルです。SSH接続時に必要ですので、ファイルのパス(ファイルの保存先)を確認しましょう。 キーペア名を忘れてしまった場合はAWSマネジメントコンソールのインスタンスの画面から確認することができます。ただし、SSH接続に必要なのはファイルのパスなので注意しましょう。

4.ユーザー名の確認

インスタンスにSSH接続に使用するユーザー名は、ユーザーアカウントまたはデフォルトのLinuxユーザーアカウントのユーザ名です。今回はデフォルトLinuxユーザーアカウントのユーザー名を使って接続します。 ユーザー名はインスタンスがどのAmazonマシンイメージ(AMI)を選択し、作成されたかによって決まります。例えば、Amazon Linuxを選択した場合のユーザー名は「ec2-user」です。 AWS公式のドキュメントにユーザー名の記載があるので、確認します。
Amazon Linux 2 または Amazon Linux AMI の場合は、ユーザー名は ec2-user です。 CentOS AMI の場合、ユーザー名は centos です。 Debian AMI の場合は、ユーザー名は admin です。 Fedora AMI の場合、ユーザー名は ec2-user または fedora です。 RHEL AMI の場合は、ユーザー名は ec2-user または root のどちらかです。 SUSE AMI の場合は、ユーザー名は ec2-user または root のどちらかです。 Ubuntu AMI の場合は、ユーザー名は ubuntu です。https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide…

5.セキュリティグループの設定

ローカルPCからインスタンスにSSH接続ができるようにインスタンスのセキュリティを設定します。 セキュリティグループのインバウンドルールを設定します。AWSマネジメントコンソールから接続したいインスタンスに割り当てたセキュリティグループを確認できます。 手順 1.設定するセキュリティグループ画面を開きます。 2.「インバウンドルールを編集」を選択し、編集画面を開きます。 3.インバウンドルールの画面下部にある「ルールを追加」を選択します。 4.タイプからSSHを選択します(プロトコル:TCP、ポート範囲:22) 5.ソースはマイIPを選択すると自動的に使用しているPCのパブリックIPが入力されます。 または、IPアドレスの範囲を指定することも可能です。 6.説明はオプションなので入力は任意です。 7.「ルールを保存」を選択してセキュリティグループの設定を保存します。 これでセキュリティグループの設定は完了です。

Visual Studio Codeを使用してSSH接続

Visual Studio Codeの設定

事前準備としてVisual Studio Codeをインストールして起動します。 SSH接続をするには、Visual Studio Codeの拡張機能である「Remote-SSH」をインストールする必要があります。 インストールが完了すると、画面に新しい項目が2つ追加されます。1つ目は、画面左側のアクティビティバーにリモートエクスプローラーのアイコンが表示されます。2つ目は、画面下のステータスバーに新しい項目のインジケーターが表示されます。

SSH接続設定の編集

簡単にSSH接続できるように、SSH構成ファイルを編集します。「SSH接続に向けてAWSでの準備5ステップ」で取得した情報をここで使用します。 SSH構成ファイルを開くには、リモートエクスプローラー内のSSH TARGETの右側にある歯車マークをクリックしファイルを選択するか、F1キーを押して表示できるコマンドパレットで「Remote-SSH:Open Configuration File…」を実行してファイルを選択します。 SSH構成ファイルを開いたら、以下のように情報を入力して保存します。
Host ”リモートエクスプローラーでの表示名”
    User ”ユーザー名”
    HostName ”パブリックIPv4アドレス”
    Port 22
    IdentityFile ”キーペアのパス”

インスタンスにSSH接続

設定が完了したのでSSH接続を開始します。今回は2つの接続方法をご紹介します。1つ目は、ステータスバーの左下隅にあるインジケーターをクリックして始める方法です。 クリック後、リモート拡張コマンドのリストから「Remote-SSH:Connect to Host…」コマンドを選択すると、SSH接続設定で入力した「リモートエクスプローラーでの表示名」が表示されます。 複数のインスタンスを設定した場合は一覧で全て表示されます。一覧から接続したいインスタンスを選択します。新しいウィンドウを開いてSSH接続が開始します。2つ目は、リモートエクスプローラーからSSH接続を開始する方法です。 リモートエクスプローラーの画面左側にある「SSH TARGETS」の下にSSH接続設定で入力した「リモートエクスプローラーでの表示名」が表示されているのを確認して、選択します。表示名の右側のウィンドウマークをクリックすると新しいウィンドウを開いて接続を開始します。 新しいウィンドウを開かずに現在のウィンドウでSSH接続を開始したい場合は、「SSH TARGETS」の下に表示されている「リモートエクスプローラーでの表示名」を右クリックします。新しいウィンドウまたは現在のウィンドウを選択することができます。 SSH接続開始後に「Select the platform of host ”ホスト名”」が表示された場合はサーバタイプを自動で検出できないていない状態です。今回はLinuxインスタンスに接続するので「Linux」を選択します。 画面左下に「リモートエクスプローラーでの表示名」が表示されていることを確認できれば、インスタンスへのSSH接続が完了しています。

SSH接続を終了

インスタンスとのSSH接続を終了する方法を解説します。 SSH接続を終了するには「ファイル」から「リモート接続を閉じる」を選択します。もしくは、Visual Studio Codeを終了してもSSH接続を切断できます。

インスタンスのファイルやフォルダを操作する

インスタンスに接続できたので作業をしてみましょう。 方法はローカルPCでの操作と同様です。ファイルを開きたい場合は「ファイル」から「ファイルを開く…」を選択します。ファイルのパスから開くファイルを選択できます。新しくファイルを作成することも可能です。「ファイル」から「新規ファイル」を選択します。 フォルダを開く場合は、「ファイル」から「フォルダーを開く…」を選択します。 簡単にインスタンスにある任意のファイルやフォルダーを開き、編集や新しく作成を行うことができます。

まとめ

Visual Studio Codeを使用してインスタンスにSSH接続する方法をご紹介しました。 Visual Studio Codeでは接続設定のカスタマイズや保存することができるので、再接続が簡単に行うことができます。また、AWSの仮想コンピューティング環境であるインスタンスでもローカルPCと同様な操作で作業ができるので、活用してみてはいかがでしょうか。
]]>

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】