Macで.pemを使ってAmazon EC2インスタンスへSSH接続する方法

最近Amazon EC2に「○○.pem」ファイル(キーペア)を使ってSSH接続する必要があったので、接続手順を備忘録として残しておきます。
キーペア(.pemファイル)
EC2では、インスタンス作成時にキーペアと呼ばれる接続に必要なファイルを作成します。
作成したキーペアは紛失すると再発行ができなくてログインできなくなるので、扱いには注意が必要です。
「○○.pem」の形式でファイルとしてダウンロードされます。
キーペアの配置
ダウンロードしたキーペアを「~/.ssh/keys」にコピーします。
コピーはターミナルで「cp [コピー元のパス] [コピー先のパス]」のコマンドを実行すればコピーできます。
$ cp ~/Downloads/○○.pem ~/.ssh/keys次にコピーしたファイルの権限設定を行います。
デフォルトだと「644」に設定されているようですが、キーペアは権限が多く付与されすぎているのもよくないみたいです。
とりあえず「600」に変更します。
$ chmod 600 ~/.ssh/keys/○○.pemSSHログイン
キーペアの配置ができたら、sshコマンドを使って接続します。
コマンドは「ssh [ユーザー]@[IP] -i [キーファイルの指定]」の形式で実行します。
ユーザーはデフォルトだと「ec2-user」で、IPはインスタンスの「説明」タブ内にある「IPv4 パブリック IP」を入力します。
$ ssh ec2-user@XX.XX.XX.XX -i ~/.ssh/keys/○○.pemこれで無事に接続できました。
キーペアを無くしてしまうと、インスタンスごと作り直す必要があるみたいなので注意が必要です。
「.ssh」配下にしかない状態だと、Macが壊れた場合などに取り返しのつかないことになります。
コピー元のファイルをどこかに保管しておくようにしましょう。

アイコンフォントをPCにインストールしている場合は、コーディング後の確認に注意
さくらのレンタルサーバで.htaccessが原因で500エラーになってしまう場合のチェックリスト
Visual Studio Codeで英単語のスペルチェックをしてくれる拡張機能「Code Spell Checker」
CSSやJavaScriptでスクロールバーの横幅を取得する方法
iTerm2でさらに細かい機能の設定ができる環境設定の「Advanced」タブ
JetpackでのError during WebSocket handshakeの解決方法
HTTP/2が設定されているはずなのに、ブラウザ上でHTTP/1.1になってしまう場合はセキュリティソフトを確認
Visual Studio CodeからFTPソフトのTransmitを使用する拡張機能「Transmit」
ファビコンや各種アイコンの作成と設定方法
CSSでclassがついていないタグにだけスタイルを当てる方法
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
軽量で高速なターミナルエミュレーター「Ghostty」の設定方法
Eagleで実現するクリエイティブ素材の簡単管理
かゆいところに手が届く「Supercharge」でMac環境を便利にカスタマイズする
超軽量なコードエディタ 「Zed」をサブエディタとして活用する
Bartender 6で追加されたWidgets機能で自作メニューバーアイテムを簡単に作成する
Googleカレンダーを便利に活用するための小技集(祝日だけを表示・月末の繰り返しイベントを追加)
Obsidianを使った「自己流PKM」で行う知識トレーニング
テキストエディタ・ノートアプリ関連のショートカットキーをKeyboard Maestroで統一する
Path Finderを使ってキーボードだけでファイル操作する方法(応用編)