SSH Remote Connection - shujishigenobu/omics-collab-cm-nibb GitHub Wiki

SSH 接続先情報の確認

仮想マシンへ SSH 接続の手順を実施する前に、 SSH 接続に必要なパブリック IPv4 アドレスまたは、パブリック IPv4 DNS の確認を行います。

上部の検索窓にEC2と入力し、「EC2」を選択します。

k-hiraki-screenshot_01_2023_05_19_101818

「インスタンス(実行中)」を選択します。

k-hiraki-screenshot_01_2023_05_19_102058

続いて①の箇所にチェックを入れると、下部が表示されます。 ②または③が今回使用するパブリック IPv4 アドレスまたは、パブリック IPv4 DNS となりますので、メモ帳等に控えてください。

k-hiraki-screenshot_01_2023_05_19_102231

warning EC2 は停止・開始することができます。 EC2 を停止した場合、上記のパブリック IPv4 アドレスまたは、パブリック IPv4 DNS は別の値に置き換わります。 再度起動(停止・開始)する場合には、もう一度パブリック IPv4 アドレスまたは、パブリック IPv4 DNS の確認をお願いいたします。

補足

パブリック IPv4 アドレス

EC2インスタンスに割り当てられたグローバルなネットワークアドレスです。 これにより、インターネット上からEC2インスタンスにアクセスできます。 パブリック IPv4 アドレスは一意であり、EC2インスタンスが起動中である限り一貫して同じアドレスを保持します。 パブリック IPv4 アドレスは、EC2 インスタンスが再起動(停止・開始)するたびに変更されるため注意が必要です。 ※ 同じパブリック IPv4 アドレスを継続して使用したい場合は、Elastic IP アドレスを使用する必要があります。

パブリック IPv4 DNS

パブリック IPv4 DNS は、Amazon DNS サーバーがパブリック IPv4 DNS に表記されている名前の名前解決を試みると、 インスタンスのパブリック IPv4 アドレスおよび、インスタンスのプライベート IPv4 アドレスを返します。 パブリック IPv4 DNS は EC2 インスタンスが再起動(停止・開始)するたびに変更される可能性があるので注意が必要です。 ※ 同じパブリック IPv4 DNS を継続して使用したい場合は、Elastic IP アドレスを使用する必要があります。

SSH リモート接続

使用している PC の OSによって接続手順が異なります。Mac の場合はこちらから、 Windows の場合はこちらから実施してください。

Mac

「ターミナル」アプリを起動します。

ターミナル起動後、事前に Set Up AWS via Console / for CloudFormation の項目で作成しダウンロードされたキーペアを作成したフォルダへ移動します。 <>の中に実際のパスを入力してください。

mv <キーペアが保存されたファイルのパス> ~/.ssh

例) mv /Users/Handson-user/Downloads/handson.pem ~/.ssh

続いてキーペアのアクセス権限を変更します。

chmod 600 ~/.ssh/handson.pem

接続の準備ができたため下記コマンドで SSH リモート接続をします。 <>の中に事前に確認したパブリック IPv4 アドレスまたは、パブリック IPv4 DNS を入力してください。

ssh -i ~/.ssh/handson.pem ubuntu@< EC2 インスタンスのパブリックIPアドレス>

例) ssh -i ~/.ssh/handson.pem [email protected]

SSH リモート接続完了へ進んでください。

Windows

初回SSH接続時はこちらから、2回目以降の場合はこちらから実施してください。

wsl のインストール(初回のみ)

アプリの検索からPowerShellと入力し、右クリックし「管理者として実行」を選択します。

k-hiraki-screenshot_01_2023_05_19_115534

PowerShell 上で下記コマンドを実行します。

wsl --install

下記が出力されたらインストールが完了です。

Ubuntu はインストールされました。
要求された操作は正常に終了しました。変更を有効にするには、システムを再起動する必要があります。
PS C:\windows\system32>

アプリの検索からwindowsの機能と入力し、「windowsの機能の有効化または無効化」を開きます。

k-hiraki-screenshot_01_2023_05_19_134344

「windowsの機能」が開いたら、Linux 用 Windowsサブシステム仮想マシンプラットフォームの左側にチェックを入れ、「OK」を選択します。

k-hiraki-screenshot_01_2023_05_19_134603

PC の再起動を促されるため、PC 再起動をお願いいたします。

再起動完了後、ubuntu アプリが起動します。

k-hiraki-screenshot_01_2023_05_19_121500

下記の質問に対して任意のユーザ名とパスワードを設定します Enter new UNIX username: 任意のユーザ名 New password: 任意のパスワード Retype new password: パスワードをもう一度入力 ※パスワードを入力する際は、パスワード自体は画面に表示されませんので注意してください。 また、のちほど使用するため覚えやすいものを設定してください。

k-hiraki-screenshot_01_2023_05_19_121831

アプリの検索からPowerShellと入力し、右クリックし「管理者として実行」を選択します。

k-hiraki-screenshot_01_2023_05_19_115534

下記コマンドで WSL のデフォルトバージョンをWSL2にします。

wsl --set-default-version 2

下記コマンドで ubuntu に切り替えます。 ここでプロンプト(コマンドの前にあらかじめ書かれているもの)が、 PS C:\Users\(windowsユーザ名)>から<ユーザ名>@<PC端末名>:/mnt/c/Users/(windowsユーザ名)$に切り替わります。

wsl

下記を実行します。 ※パスワードが要求されるため事前に設定したパスワードを入力してください。

sudo apt-get update

下記コマンドを実行します。

sudo apt install gcc -y

下記コマンドを実行して、キーペアを wsl 上にコピーします。 パスの指定の仕方が、

  • 「\(バックスラッシュ)」から「/(スラッシュ)」
  • 「C:」から「/mnt/c/」

に変わるため注意してください。

cp <キーペアが配置されているパス> /tmp/

例)Windows上のパスが"C:\Users\xxxxxxx\Downloads\handson.pem"の場合
cp /mnt/c/Users/xxxxxxx/Downloads/handson.pem /tmp/

続いてコピーしたキーペアの権限を変更します。

sudo chmod 600 /tmp/handson.pem

下記コマンドで SSH 接続します。 ここで事前に控えた EC2 インスタンスの パブリックIPv4アドレスまたは パブリック IPv4 DNS を使用します。

ssh -i /tmp/handson.pem ubuntu@<EC2 インスタンスの パブリックIPv4アドレスまたは パブリック IPv4 DNS>

例)
ssh -i /tmp/handson.pem [email protected]
または
ssh -i /tmp/handson.pem [email protected]

SSH接続2回目以降

アプリの検索からPowerShellと入力し、「PowerShell」を開きます。

k-hiraki-screenshot_01_2023_05_19_150234

下記コマンドで ubuntu に切り替えます。 ここでプロンプト(コマンドの前にあらかじめ書かれているもの)が、 PS C:\Users\(windowsユーザ名)>から<ユーザ名>@<PC端末名>:/mnt/c/Users/(windowsユーザ名)$に切り替わります。

wsl

下記コマンドで SSH 接続します。 ここで事前に控えた EC2 インスタンスの パブリックIPv4アドレスまたは パブリック IPv4 DNS を使用します。

ssh -i /tmp/handson.pem ubuntu@<EC2 インスタンスの パブリックIPv4アドレスまたは パブリック IPv4 DNS>

例)
ssh -i /tmp/handson.pem [email protected]
または
ssh -i /tmp/handson.pem [email protected]

SSH リモート接続完了へ進んでください。

SSH リモート接続完了

仮想マシンへリモート接続に成功するとコンソールに以下の様なメッセージが表示され、ubuntu@[ip-address]のプロンプトが表示されます。ubuntu@[ip-address]のプロンプトが表示されない場合は SSH 接続手順を見直してみてください。

ssh

仮想マシン上で必要なソフトウェアのインストールを行うため以下の手順に進んでください。

Install software

⚠️ **GitHub.com Fallback** ⚠️