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が壊れた場合などに取り返しのつかないことになります。
コピー元のファイルをどこかに保管しておくようにしましょう。

SourceTreeで環境設定の「カスタムアクション」「アップデート」「高度な設定」が選択できない
ブラウザでこれ以上スクロールできない場合の挙動を制御する「overscroll-behavior」プロパティ
Vue.jsでtemplateタグ内にscriptやstyleタグを生成する方法|Tags with side effect are ignored
WordPressで「現在メンテナンス中のため、しばらくの間ご利用いただけません。」の状態でログインできなくなった場合の対処法
「EWWW Image Optimizer」を使ってWordPressをWebPに対応する方法
Visual Studio Codeを使ったコード整形方法(Fomatter)
Google Maps APIをローカル開発環境で使用するときの制限設定方法
Dart Sassを使う上で1番基本的なネストやアンパサンドの書き方|Dart Sass入門
スライドを簡単に実装できるJavaScriptライブラリ「Swiper」
WordPressの常時SSL化で、下層ページのhttpからhttpsへのリダイレクトがうまくいかない場合に確認すること
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
操作に没頭できる!Firefox版 Arcのようなブラウザ「Zen Browser」
chezmoi(シェモア)で始めるdotfiles管理
GitHubの通知を見逃さない!通知に特化したアプリ「Gitify」
Keyboard Maestroの変数基礎
Neovimを使い始める最初の一歩として便利な「LazyVim」
ウェブサイトをmacOSアプリとしてラッピングする「Unite Pro」
Keyboard Maestroの「Macro Debugger」で複雑なマクロのデバッグを行う方法
無料版でも高機能なランチャーアプリ「Raycast」の基本機能と環境設定
OnyXでターミナルを使わずにmacOSの詳細設定を行う
軽量で高速なターミナルエミュレーター「Ghostty」の設定方法