search
LoginSignup
24
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

updated at

AWS EC2にSSHでアクセスする方法

AWSでEC2を立てて、ターミナルでローカルからSSH接続する方法について説明します。

環境
OS: Mac OSX

大まかな手順
  1. EC2インスタンス作成(無料枠)
  2. アクセス鍵作成
  3. ローカルからSSH接続

aws.png

EC2とはAWSで提供されているクラウドサービスの1つで、仮想サーバーを利用できます。

1. EC2インスタンス作成(無料枠)

ステップ 1: AMIの選択

EC2のページを開き、ダッシュボード画面から「インスタンスを起動」を選択します。
スクリーンショット 2021-01-16 13.33.18.png

今回は、無料枠の[Amazon Linux 2 AMI (HVM), SSD Volume Type]を利用します。
赤枠の選択ボタンをクリックします。
スクリーンショット 2021-01-16 13.36.32.png

ステップ 2: インスタンスタイプの選択

[t2.micro]を選び、[次のステップ:インスタンスの詳細の設定]をクリックします。
スクリーンショット 2021-01-16 13.40.25.png

ステップ 3: インスタンスの詳細の設定

特に変更の必要なく、[次のステップ:ストレージの追加]をクリックします。
スクリーンショット 2021-01-16 13.46.17.png

ステップ 4: ストレージの追加

30GBまで無料枠みたいですが、その範囲内で必要な量で設定します。
今回はとりあえず、8GiBにして、[次のステップ:タグの追加]をクリックします。
スクリーンショット 2021-01-16 13.50.18.png

ステップ 5: タグの追加

タグはなくてもいいですが、複数プロジェクトを作成している場合や複数インスタンスを利用する場合はあると便利です。
[次のステップ:セキュリティーグループの設定]をクリックします。
スクリーンショット 2021-01-16 13.53.31.png

ステップ 6: セキュリティグループの設定

接続設定します。今回は個人情報を含まないサーバーを立ち上げるので、0.0.0.0で問題ありません。
[ルールの追加]ボタンから、SSH, HTTP, HTTPSを選んで追加し、[確認と作成]をクリックします。
スクリーンショット 2021-01-16 13.54.52.png

ステップ 7: インスタンスの作成と確認

内容を一応確認して、設定が正しくできていれば[起動]をクリックします。
スクリーンショット 2021-01-16 13.57.07.png

[既存のキーペアを選択するか、新しいキーペアを作成します。]ウィンドウが立ち上がったら、
①:「新しいキーペアの作成」を選択→②:わかりやすいキーペア名を入力→③→④の順でクリックしてインスタンスを作成します。
スクリーンショット 2021-01-16 14.06.31.png

すると作成ステータスの画面が表示されるので、[インスタンスの表示]をクリック
スクリーンショット 2021-01-16 14.17.00.png

作成されたインスタンスの状態が表示されるので、
青文字のインスタンスIDをクリックしてインスタンスの詳細を開きます。
スクリーンショット 2021-01-16 15.08.32.png

詳細が表示されたら、画面右側の[接続]をクリックします。
スクリーンショット 2021-01-16 14.18.55.png

インスタンスへの接続方法が表示されます。
ダウンロードした鍵ファイル(myaccesskey.pem)の保存場所で、赤枠の2つのコマンドを実行すればSSHでの接続は完了です。
スクリーンショット 2021-01-16 15.06.26.png

$ chmod 400 myaccesskey.pem
$ ssh -i "myaccesskey.pem" ec2-user@ec2-00-000-000-000.ap-northeast-1.compute.amazonaws.com

       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-2/
2 package(s) needed for security, out of 5 available
Run "sudo yum update" to apply all updates.

(続き)

sudo yum updateを実行してください」と表示されているので、sudo yum updateを入力してEnter

Run "sudo yum update" to apply all updates.
[ec2-user@ip- ~]$ sudo yum update

(続き)

[ec2-user@ip- ~]$ sudo yum update
読み込んだプラグイン:extras_suggestions, langpacks, priorities, update-motd
amzn2-core                                               | 3.7 kB     00:00     
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ chrony.x86_64 0:3.2-1.amzn2.0.5 を 更新
---> パッケージ chrony.x86_64 0:3.5.1-1.amzn2.0.1 を アップデート
--> 依存性の処理をしています: libnettle.so.4()(64bit) のパッケージ: chrony-3.5.1-1.amzn2.0.1.x86_64
---> パッケージ cloud-init.noarch 0:19.3-3.amzn2 を 更新
---> パッケージ cloud-init.noarch 0:19.3-4.amzn2 を アップデート
---> パッケージ p11-kit.x86_64 0:0.23.21-2.amzn2.0.1 を 更新
---> パッケージ p11-kit.x86_64 0:0.23.22-1.amzn2.0.1 を アップデート
---> パッケージ p11-kit-trust.x86_64 0:0.23.21-2.amzn2.0.1 を 更新
---> パッケージ p11-kit-trust.x86_64 0:0.23.22-1.amzn2.0.1 を アップデート
---> パッケージ tzdata.noarch 0:2020a-1.amzn2 を 更新
---> パッケージ tzdata.noarch 0:2020d-2.amzn2 を アップデート
--> トランザクションの確認を実行しています。
---> パッケージ nettle.x86_64 0:2.7.1-8.amzn2.0.2 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

================================================================================
 Package            アーキテクチャー
                                バージョン                リポジトリー     容量
================================================================================
更新します:
 chrony             x86_64      3.5.1-1.amzn2.0.1         amzn2-core      258 k
 cloud-init         noarch      19.3-4.amzn2              amzn2-core      924 k
 p11-kit            x86_64      0.23.22-1.amzn2.0.1       amzn2-core      321 k
 p11-kit-trust      x86_64      0.23.22-1.amzn2.0.1       amzn2-core      130 k
 tzdata             noarch      2020d-2.amzn2             amzn2-core      481 k
依存性関連でのインストールをします:
 nettle             x86_64      2.7.1-8.amzn2.0.2         amzn2-core      329 k

トランザクションの要約
================================================================================
インストール               ( 1 個の依存関係のパッケージ)
更新          5 パッケージ

総ダウンロード容量: 2.4 M
Is this ok [y/d/N]: 

コレでアップデートしていいか確認されたので、yを入力してEnter

Is this ok [y/d/N]: y
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
(1/6): cloud-init-19.3-4.amzn2.noarch.rpm                        | 924 kB  00:00:00     
(2/6): chrony-3.5.1-1.amzn2.0.1.x86_64.rpm                       | 258 kB  00:00:00     
(3/6): nettle-2.7.1-8.amzn2.0.2.x86_64.rpm                       | 329 kB  00:00:00     
(4/6): p11-kit-0.23.22-1.amzn2.0.1.x86_64.rpm                    | 321 kB  00:00:00     
(5/6): p11-kit-trust-0.23.22-1.amzn2.0.1.x86_64.rpm              | 130 kB  00:00:00     
(6/6): tzdata-2020d-2.amzn2.noarch.rpm                           | 481 kB  00:00:00     
----------------------------------------------------------------------------------------
合計                                                        10 MB/s | 2.4 MB  00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  更新します              : p11-kit-0.23.22-1.amzn2.0.1.x86_64                     1/11 
  インストール中          : nettle-2.7.1-8.amzn2.0.2.x86_64                        2/11 
  更新します              : chrony-3.5.1-1.amzn2.0.1.x86_64                        3/11 
  更新します              : p11-kit-trust-0.23.22-1.amzn2.0.1.x86_64               4/11 
  更新します              : tzdata-2020d-2.amzn2.noarch                            5/11 
  更新します              : cloud-init-19.3-4.amzn2.noarch                         6/11 
  整理中                  : p11-kit-trust-0.23.21-2.amzn2.0.1.x86_64               7/11 
  整理中                  : tzdata-2020a-1.amzn2.noarch                            8/11 
  整理中                  : cloud-init-19.3-3.amzn2.noarch                         9/11 
  整理中                  : p11-kit-0.23.21-2.amzn2.0.1.x86_64                    10/11 
  整理中                  : chrony-3.2-1.amzn2.0.5.x86_64                         11/11 
  検証中                  : p11-kit-trust-0.23.22-1.amzn2.0.1.x86_64               1/11 
  検証中                  : nettle-2.7.1-8.amzn2.0.2.x86_64                        2/11 
  検証中                  : p11-kit-0.23.22-1.amzn2.0.1.x86_64                     3/11 
  検証中                  : cloud-init-19.3-4.amzn2.noarch                         4/11 
  検証中                  : tzdata-2020d-2.amzn2.noarch                            5/11 
  検証中                  : chrony-3.5.1-1.amzn2.0.1.x86_64                        6/11 
  検証中                  : tzdata-2020a-1.amzn2.noarch                            7/11 
  検証中                  : p11-kit-trust-0.23.21-2.amzn2.0.1.x86_64               8/11 
  検証中                  : p11-kit-0.23.21-2.amzn2.0.1.x86_64                     9/11 
  検証中                  : chrony-3.2-1.amzn2.0.5.x86_64                         10/11 
  検証中                  : cloud-init-19.3-3.amzn2.noarch                        11/11 

依存性関連をインストールしました:
  nettle.x86_64 0:2.7.1-8.amzn2.0.2                                                     

更新:
  chrony.x86_64 0:3.5.1-1.amzn2.0.1       cloud-init.noarch 0:19.3-4.amzn2             
  p11-kit.x86_64 0:0.23.22-1.amzn2.0.1    p11-kit-trust.x86_64 0:0.23.22-1.amzn2.0.1   
  tzdata.noarch 0:2020d-2.amzn2          

完了しました!

コレでSSHでEC2サーバーへの接続は完了です。試しに ls -aコマンドを実行してみると、最小限のファイルだけあることが確認できました。

[ec2-user@ip- ~]$ ls -a
.  ..  .bash_logout  .bash_profile  .bashrc  .ssh

参考ページ:AWS EC2上にPHPサイトを立ち上げて、独自ドメインでアクセスできるようにするまでの全手順

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
24
Help us understand the problem. What are the problem?