【えすえすえいち】

SSH とは?

💡 リモートサーバーへの「暗号化されたトンネル」
📌 このページのポイント
SSH(Secure Shell)暗号化接続 クライアント SSH接続要求 秘密鍵で認証 コマンド送信 暗号化トンネル 鍵交換・暗号化通信 データは全て暗号化 サーバ 公開鍵で検証 認証OK→接続許可 コマンド実行 公開鍵認証 安全性が高い(推奨) パスワード認証 簡易だがリスクあり 通信を暗号化し、安全にリモートサーバへ接続する仕組み
SSHのイメージ
ひよこ ひよこ

SSHって何のために使うの?

ペンギン先生 ペンギン先生

リモートのLinuxサーバーにログインして操作するための必須ツールだよ。「ssh user@server-ip」でサーバーに接続して、あたかも目の前にいるかのようにコマンドを実行できる。通信は全て暗号化されるから、カフェのWi-Fiからでも安全に操作できるんだ

ひよこ ひよこ

パスワード認証と公開鍵認証の違いは?

ペンギン先生 ペンギン先生

パスワード認証は毎回パスワードを入力する方式。ブルートフォース攻撃に弱い。公開鍵認証は鍵ペア(秘密鍵+公開鍵)を使う方式で、秘密鍵を持っている人だけがログインできる。セキュリティが段違いに高いから、本番サーバーでは公開鍵認証のみに制限するのが鉄則だよ

ひよこ ひよこ

SSH鍵の作り方は?

ペンギン先生 ペンギン先生

「ssh-keygen -t ed25519」コマンドで作成するよ。ed25519は現時点で最もおすすめの鍵種。生成された公開鍵(~/.ssh/id_ed25519.pub)をサーバーの~/.ssh/authorized_keysに追加する。GitHubのSSH接続にも同じ鍵が使えるよ

ひよこ ひよこ

SSHの便利な使い方は?

ペンギン先生 ペンギン先生

①~/.ssh/config でホスト名のエイリアスを設定(ssh myserver で接続)、②SSHトンネリング(-L オプション)でリモートのDBに安全にアクセス、③ProxyJump(-J)で踏み台サーバー経由の多段SSH、④ssh-agent で鍵のパスフレーズを一度だけ入力。これらを使いこなすとサーバー操作が格段に快適になるよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「SSH」って出てきたら「リモートサーバーに暗号化して安全に接続する仕組み」と思えればだいたいOK!
📖 おまけ:英語の意味
「Secure Shell」 = セキュアシェル
💬 Secure(安全な)Shell(シェル操作)。Telnet(暗号化なし)の安全な後継だよ
← 用語集にもどる