読み方 : エスエスエイチコマンド
sshコマンド【ssh command】
sshコマンドとは?

かつて遠隔ログインには「telnet」や「rlogin」といったツールが使われていたが、これらは通信が平文(原文そのまま)で流れるため、ネットワーク上で内容を盗み見られる危険があった。sshはこうした点を改良し、接続時から暗号化を行いやり取りを保護する仕組みを備えている。コマンドとしてのsshはLinuxやmacOSには標準でインストールされており、Windowsでも近年は「OpenSSH」によるsshコマンドが組み込まれてコマンドプロンプトやPowerShellから利用できる。
基本的な使い方は「ssh ユーザー名@接続先ホスト名」の形式で実行することである。接続が確立すると、手元の画面に相手サーバのシェル(コマンド操作環境)が表示され、コマンドの実行や設定の変更、テキストファイルの編集といった作業をローカル環境と同じ感覚で行える。文字のやり取りだけで動作するため、通信速度が遅い環境でも軽快に使える。
認証方式にはパスワード認証と公開鍵認証の二種類がある。パスワード認証は手軽だが、公開鍵認証では事前に生成した秘密鍵と公開鍵のペアを使って本人確認を行うため、パスワードそのものをネットワーク上に流す必要がなく、より強固なセキュリティを確保できる。実務の現場では公開鍵認証が標準的に採用されている。
sshは遠隔操作にとどまらず、関連ツールの基盤としても機能している。ファイル転送にはscpやsftpが、ファイル同期にはrsyncがそれぞれ内部的にsshの暗号化通信を利用している。さらにポートフォワーディングと呼ばれる機能を使えば、ssh接続を経由して他のサービスの通信を安全に中継することもでき、アクセス制限のある環境での作業にも活用される。