いろいろなツールでAWSにSSH接続する(WinSCP、MySQL Workbench、CloudBerry)
仕事でAWSを使う際にいろいろとDB周りの接続やらが必要だったけど、
用語に対する理解も曖昧だった部分もあったし、
調べながらやったのでメモしておく。
AWSについての基礎はここを読んでおく。超わかりやすかった。
(下準備編)世界一丁寧なAWS解説。EC2を利用して、RailsアプリをAWSにあげるまで - Qiita
固定IPの取得・設定
インターリンクで取得し、以下のヘルプサイトを見ながら設定を行った。
Windows 10の設定 ■マイIP ソフトイーサー版■
固定IPアドレスは英語でFixed IP Addressなのか。
Staticではないのかな?
固定IPアドレス ‐ 通信用語の基礎知識
各プロトコルの違い
これも接続設定時にいろいろ出てきたが違いがわかっていないので調べた。
SCPとSFTPの違い | Skyarch Broadcasting
【3分で把握】ポート番号とは?と代表的なポート番号まとめ
TCPやUDPにおけるポート番号の一覧 - Wikipedia
AWS上で穴あけを行う
既にAWS上で動いているWebアプリケーションにアクセスしようにも、WinSCPやMySQL WorkbenchやCloudBerry経由でDBアクセスしようにもまずAWS上で穴あけを行わなくてはならない。つまりセキュリティグループのインバウンドルールに対して固定IPを設定していく。
「EC2 > セキュリティグループ > グループ選択 > インバウンド > 編集 > ルールの追加」で設定しようと思いきや、「送信元は CIDR ブロックまたはセキュリティグループ ID にする必要があります。」とのエラー文が。
→IPアドレスの後ろに「/32」をつけて解決!
参考:AWSのEC2のセキュリティのインバウンドのルールでIPを設定する場合は/32をつける - Qiita
・インバウンドルール:どんな通信が来たら許可するのか
・CIDRブロック:VPCが使用できるIPの範囲のこと(10.0.0.0/28(16IPアドレス) ~ 10.0.0.0/16(65,536IPアドレス)まで選択可能)。
PuTTY
ここからダウンロード。
基本的に下の参考にしたサイトの方法で出来たけど、どうやらPCを再起動した後に接続しなおす場合は、ppkファイルをpageant.exeに再度ドラック&ドロップして秘密鍵を登録しなおす必要がある。
・確認方法
Windowsの右下のインジケータ(バッテリーのアイコンの横などにある上矢印のアイコン)をクリック
→pageant.exeと同じアイコンを右クリック
→Views Keyをクリック
踏み台サーバを使ってサーバにアクセスする場合の設定方法は以下。
・カテゴリ > セッション > 接続先の指定
ホスト名 | 踏み台サーバーのElasticIP |
他はデフォルトでOK。
・カテゴリ > 接続 > SSH
サーバに送られるデータ | ssh 最終的な接続先のプライベートIP(ssh 170.20.20.20) |
他はデフォルトでOK。
参考:PuTTYでプライベートなAmazon Linuxサーバへ多段ログインしてみた | Developers.IO
Cloud Berry
ここからダウンロード。
左上の「File > New Amazon S3 Account」を押下。
名前表示 | 任意の表示名 |
Access key | AWS IAMでユーザを追加したときのアクセスキー |
Secret key | AWS IAMでユーザを追加したときのシークレットキー |
OKを押下。
タブに「My Computer →(名前表示で設定した表示名)」となっていることを確認。
あとは「Source:」を切り替えて表示する内容を自由に変更させる。
WinSCPで多段接続
ここからダウンロード。
・Session
Host name | 最終的な接続先のプライベートIP |
User name | ユーザー名 |
・Advanced...(Passwordの下) > Connection > Tunnel
Host name | 踏み台サーバーのElasticIP |
Port number | 22 |
User name | ユーザ名(Sessionと同じ) |
Private key file | 秘密鍵のファイル(.ppk) |
OKを押下し、初めの画面に遷移しSaveを押してLogin。
新しく接続させる場合は「New Session」タブを押す。
参考:AWSの仮想マシンにWinSCPでの接続 - ts0818のブログ
MySQL Workbench
ここからダウンロード。
MySQL Connectionsの右側の+アイコンを押す。
Connection Name | 任意の名前 |
・Connectionタブ
Connection Method | Standard TCP/IP overSSH |
・Parametersタブ
SSH Hostname | Elastic IP:22 (13.100.100.100:22) |
SSH Username | ユーザー名 |
SSH Password | - |
SSH Key File | 秘密鍵のファイル(.ppk) |
MySQL Hostname | ~~~.rds.amazonaws.com |
MySQL Server Port | 3306 |
Username | ユーザー名 |
「:22」を付けてなくて嵌った。