メインコンテンツへスキップ

ubuntuからLinuxサーバ(AWS Lightsail Ubuntu)へのSSH接続方法

Windowsからのアクセスについては、Windows11からLinuxサーバ(AWS Lightsail Ubuntu)へのSSH接続方法を参照してください

概要

AWS Lightsailでは、SSH接続時に毎回秘密鍵 .pem ファイルを指定する必要がありますが、ローカル環境に設定を行うことで、コマンド一発で自動ログインできるようにすることが可能です。


前提条件

  • Lightsailから .pem 形式の秘密鍵をダウンロード済み

  • ローカル端末が macOS または Linux(Ubuntu等)

  • SSH クライアントが使用可能な状態


ステップ 1:秘密鍵の保存とパーミッション設定

以下ではAWS Lightsailからダウンロードした秘密鍵のファイル名をlightsail-key.pem、ホスト名を<ホスト名>、
サーバのグローバルIPアドレスをxxx.xxx.xxx.xxxとしています。読み替えて使用してください。

  1. .pem ファイルをホームディレクトリ配下に保存
    (例:~/.ssh/lightsail-key.pem)


  2. 秘密鍵ファイルのパーミッションを設定(読み取り専用)
    chmod 600 ~/.ssh/lightsail-key.pem

ステップ 2:SSH設定ファイルの編集

  1. SSH設定ファイル(~/.ssh/config)を作成または編集

    nano ~/.ssh/config

    nanoの代わりにgeditを使ってもよい

  2. 以下の内容を追記

    Host <ホスト名>
        HostName xxx.xxx.xxx.xxx        # ← LightsailのパブリックIP
        User ユーザー名                   # Amazon Linuxなら ec2-user
        IdentityFile ~/.ssh/lightsail-key.pem
    
    • <ホスト名>は識別できる任意の名前
    • <IPアドレス>は自身のLightsailインスタンスのパブリックIPに置き換える。

ステップ 3:接続確認

設定完了後、以下のコマンドで簡単にログインできるようになります。

ssh <ホスト名>

セキュリティ補足
・pem ファイルや ~/.ssh/config は第三者に漏れないよう注意してください。
・pem ファイルのパーミッションは 600 にする必要があります。そうでないと SSH: Unprotected private key file というエラーになります。
・公共PCや共有アカウント環境ではこの設定は避けてください。