【モード別】ChromebookでEC2にSSHする2つの方法

まいど、大阪の市田です。
下記のエントリなどで度々出ているChromebookですが、大阪オフィスにも1台存在します。今回はその端末を使ってChromebookからEC2にSSHしてみたいと思います。

利用するChromebook

今回利用するChromebookは上記で紹介しているものは異なり「ASUS Chromebook Flip C101PA 」を使っています。

ASUS Chromebook Flip C101PA | 2-in-1 製品 | ASUS 日本

小さい筐体ながら液晶を360度回転させて、タブレットの様に使うこともできて個人的にはかなり魅力的です。

c101pa

c101pa2

通常モードでSSHする

Chromebookには「通常モード」「開発者モード」という2つのモードがあります。まずは「通常モード」でSSH接続してみましょう。

SSHといえばコマンドラインなので、Ctrl+Alt+Tでターミナルを起動してSSHコマンドを実行してみます。すると、下記のように「Secure Shell App」の利用を促すメッセージが表示されます。

01-crosh-ssh

表示されたURLにアクセスして「Secure Shell App」をインストールしましょう。

https://chrome.google.com/webstore/detail/pnhechapfaindjhompbnflcldabbghjo

02-secure-shell-app

「Secure Shell App」を利用するには秘密鍵と公開鍵の両方を用意する必要があります。その為、EC2にログインするキーペアの秘密鍵から公開鍵を予め作成しておきます。

ssh-keygen -y -f keyname.pem > keyname.pub

尚、キーペアでダウンロードした秘密鍵は「.pem」という拡張子が付いていますが「Secure Shell App」では秘密鍵に拡張子があると読み込めない仕様になっています。 その為、秘密鍵は拡張子の無いファイル名に変更しておきましょう。

mv keyname.pem keyname

この辺りの詳細については、下記のサポートサイトに記載されているので、気になる方は一度目を通しておくと良いでしょう。

hterm and Secure Shell - nassh/doc/FAQ.md

03-faq

拡張子の無い秘密鍵と公開鍵(.pubファイル)が準備できたら、この2つの鍵ファイルをS3などを経由してChromebookに保存します。

準備ができたら「Secure Shell App」を起動します。

04-launch-app

起動すると下記のように、ログインするサーバを設定する画面が表示されます。

05-server-setting

各項目に設定情報を入力します。一番上の入力箇所は「接続名」になるので分かりやすい名前を付けておくとよいでしょう。

06-server-setting2

次に鍵ファイルをインポートします。

07-import

インポートする時は、秘密鍵と公開鍵の両方を指定します。
(Chromebook上でスクリーンショットが取れなかったのでスマホで撮影してます…)

08-select-files

インポートできたら「ID」欄にファイル名が入ります。

09-ok-import

これで準備完了です。「[ENTER]接続」をクリックしてみましょう。

10-enter

SSHで接続できました!

11-ok-ssh

ログアウトすると下図のようなメッセージが表示されます。「再接続」だと再度同じホストに接続できます。

12-exit

開発者モードでSSHする

通常モードではChrome拡張からSSH接続できることが分かりました。しかし都度「Secure Shell App」を起動するのは面倒くさいですね。そんな時は「開発者モード」を使いましょう。ただし開発者モードに変更すると端末のローカルデータが消去されてしまうので、利用時はご注意ください。

開発者モードにする方法は、下記のエントリでご紹介していますので割愛させて頂きます。

Chromebook(ASUS C302CA) ファースト・インプレッション

開発者モードに変更できたら、先程と同じようにターミナルを起動してshellコマンドを実行します。するとbashを起動することができます。

13-shell-bash

sshコマンドが存在しますね。

14-ssh-usage

後は、必要に応じて秘密鍵のパーミッションを変更して、普通にssh接続するだけです。無事にEC2に接続することができました。
(今回は秘密鍵をホームディレクトリの.sshディレクトリに移動させてます)

15-ssh-ec2

最後に

Chromebookでも簡単にSSH接続することができました。これで普段の業務も問題なくできる?のではないでしょうか。
次回はRDP接続を試してみたいと思います。

以上です。