見出し画像

SSH接続について2024

最終更新日:2024年4月16日(SSH鍵の自作コマンドについて形式の指定方法など追記あり)

わーさんが初心者なのにFediverse自鯖ハウツー本を書こうとして下書きしていた原稿からの転載になります。
目次記事はこちら。

※2024年4月14日時点での個人的な所感です。

 SSHとは、Secure Shellの略称です。SSH接続は、VPSだけに限らずリモートコンピューターと接続・通信するためのプロトコル(通信手順)の一つで、認証部分を含めたネットワーク上の通信が全て暗号化されるため、安全に通信することができるそうです。

 様々な認証方法があるようですが、有名なのは、SSH鍵という、まさに文字通り鍵のようなものを割符的な符号に使い、ターミナル、Terminus(これらはWindowsにもMacにもあります)やTeraTerm、Putty、RLogin(これらはWindowsにあります)といったSSH接続に対応したアプリでVPSサーバーに接続する方法です。
 適切なアプリ(Terminusなど)が見つかりさえすれば、iPhoneやAndroidなどのスマートフォンからでも、SSH接続することができます。(実際、筆者はTerminusでiPhoneから自鯖の管理を行なっていることも多いです。)

 公開鍵を持っているコンピューター(サーバー)に秘密鍵を使って接続します。


SSH鍵の作り方

VPSでサーバーを借りる際のオプションとして作ってもらう

 少なくともKAGOYA、ConoHa、シン・VPSでは、サーバー作成時にオプションとしてSSH鍵を一緒に作成することができます。作成された秘密鍵をダウンロードすることを忘れずに!
 また、後述のコマンドで作成した「自作の公開鍵」を登録することも可能です。

 さくらのVPSでも、「自分で作成した公開鍵」をサーバー作成時に登録することは可能です。

SSH鍵のペアを自作する

 SSH接続に対応したアプリでは、SSH鍵を自作できることがあります。使用するコマンドは、少なくともターミナルでは、

ssh-keygen

です。(VPS側で鍵の形式を指定されている場合は、ssh-keygen -t ed25519やssh-keygen -t rsaのように、-t 鍵形式、で指定できるようです)
 鍵の保存場所指定時に、鍵のファイル名を変更することができます。複数の鍵を管理したいときなどに、ご活用ください。

有名かもしれない、SSH接続に使えるアプリたち

ターミナル

  • MacにもWindowsにも標準でついてくるアプリ(無料)です。

  • コピペはMacの場合、Command+C、Command+V

Terminus

  • 様々なデバイスで使えるアプリですが、設定の同期などは有料のようです。

  • 筆者はこれをiPhoneで使用しています。コマンドを登録しておけるのが便利。

Tera Term

https://ja.osdn.net/projects/ttssh2/

  • Windows用のフリーウェア(無料ソフト)です。

  • コピペはAlt+C、Alt+V

  • かつてはWebARENA IndigoのUbuntuに接続できない問題がありましたが、現在は解決されています。

PuTTY

  • おそらくWindows向けのフリーウェア(無料ソフト)です。

  • ドラッグした部分が自動でコピーされ、右クリックすると、コピーしたものが貼り付けられるらしいです。

RLogin

  • Windows用のフリーウェア(無料ソフト)です。

  • Ctrl+Vでペースト

SSH接続に必要な下準備

  • 秘密鍵の作成・保存

  • 接続したい鯖のIPアドレス(ホスト番号、とも書かれている場合があります。デフォルトの設定ではIPv4の方で行けることが多いです)

  • 接続したい鯖の接続用ポート番号(デフォルトでは22が多いです)

  • ユーザー名(VPSサーバーによりデフォルトユーザー名が違います)

ターミナルで取り敢えず接続できるか試す方法

ssh ユーザ名@IP -p ポート番号 -i 鍵へのパス

 以上のコマンドを打ち込み、エンターキーです。

 毎回これを入力するのは大変なため、configファイルに登録するという手段があるようです。

初回限定の警告

  • 初回接続時だけ、「(意訳)初めて接続するけど大丈夫か?」みたいな警告が出ます。

  • アプリによっては、フィンガープリントという、指紋認証するための指紋とったぜみたいな模様が出てきて面白いです。

  • いずれにせよ、初回限定なので、接続続行で大丈夫です。

  • VPSをリセットした時は、このフィンガープリントが残っていることでエラーとなることがあります。
    対処法は、以下のコマンドです。

ssh-keygen -R 該当IP


この記事が気に入ったらサポートをしてみませんか?