AWSを始める 〜 2.SSHを使用した仮想サーバへの接続

AWSを始める 〜 1.仮想サーバの立ち上げ」では、インスタンスを作成した。
今回はそのインスタンスに、自分のPCからSSHで接続する。
クライアントツールとしてはTeraTermを使用する。これは既に自分のPCにダウンロードしてあり、仮想サーバが立ち上がっていることを前提とする。

1.TeraTermの起動
2.認証情報の入力
3.ルートパスワードの設定

1.TeraTermの起動
TeraTermを起動してIPアドレスを入力する。
入力するIPアドレスは、インスタンスの確認画面に表示されるインスタンスの「Public IP」。

2.認証情報の入力
認証情報を入力してログインする。
ユーザ名は、AWSにデフォルトで用意されている「ec2-user」を入力する。
パスワードは空白で、その代わりに認証情報として、インスタンス作成時に発行された認証キーファイルを設定する。

ログインできたことを確認する。

3.ルートパスワードの設定
ところで、ログインはできたがルートのパスワードを設定した記憶が無い。
デフォルトのec2-userはルート権限を持っているのか。

[ec2-user@ip-172-31-1-10 ~]$ touch /test
touch: cannot touch ‘/test’: Permission denied

そりゃそうだよね。rootじゃないもん。
そういうことで、ルートでログインするためにルートのパスワードを設定する。
ec2-userはsudoersだよね?そうじゃないと、何もできないからと推測して次を実行。

[ec2-user@ip-172-31-1-10 ~]$ sudo su -
Last login: Sun Sep 21 06:22:55 UTC 2014 on pts/0
[root@ip-172-31-1-10 ~]#

これでルートになれた。ルートに慣れたので、あとはパスワードを設定するだけ。

[root@ip-172-31-1-10 ~]# passwd root
Changing password for user root.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

これでルートのパスワードを設定できたので、ルートでログインしてみる。

[ec2-user@ip-172-31-1-10 ~]$ su
Password:
[root@ip-172-31-1-10 ec2-user]#

ec2-userがsudoerなので、rootでログインせずにsudoerとして操作すればいいんだけどね。

さて、gccでも打ってみるか。

gccはデフォルトではインストールされていないようだ。yumでインストールした。
便利なツールが予めインストールされているのがAMIだと思っていたがgccは便利なツールでは無いらしい。ちなみに、rubyはインストールされていたし、javaもOpenJDKが予めインストールされていた。