SSHとは?
自分のPCしか使っていない人が、 突然「サーバへ(遠隔=リモート)ログインしてください」と言われても何のことやら?となるでしょう。
リモートでコンピュータを操作することに対してイメージが湧かないよねぇ
- ふだんは目の前の自分のPCにログイン(パスワードを入れて画面が出てくる状態になる)しています。これはローカルにログイン
- 目の前にないPCにログインするには、入りたいPCへネットワークごしに接続した上でログインします。 だからリモートログイン
- リモートログインするプログラムには、 1980年代前半 4.2BSD (バークレイ Unix)で登場した telnet rlogin rsh などがありますが、 暗号化や高度な認証機能がありません。 1990年代になると rsh のような使い方ができて、通信の暗号化機能や公開鍵暗号認証をおこなえる ssh (Secure SHell)が登場し、 これがデファクトスタンダードになりました。
- 現在ひろく使われているソフトウエアはOpenBSDプロジェクトが開発しているOpenSSHで、 Unix系OSだけでなくMacOSXやWindows10もOpenSSHを搭載しているので、 事実上すべてのOSで利用可能と言っておいて大丈夫でしょう
使い方
使い方は、sshにスペース区切りで引数を追加して実行します。オプションも多数あります。
典型的な使い方は、次のようなパターンでしょう。 入りたいPCのユーザ名が同じとは限りません。その場合はユーザ名をオプション指定する必要があります。 また本番運用のサーバではSSHサーバのポート番号がデフォルトの22/tcpとは異なることもあります。 その場合ポート番号をオプションで指定してください
ssh PC名
ssh ユーザ名@PC名
ssh -l ユーザ名 PC名
ssh -p ポート番号 -l ユーザ名 PC名
ssh -p ポート番号 ユーザ名@PC名
ssh PC名 コマンド
ssh ユーザ名@PC名 コマンド
ssh -l ユーザ名 PC名 コマンド
ssh -p ポート番号 -l ユーザ名 PC名 コマンド
ssh -p ポート番号 ユーザ名@PC名 コマンド
動かないとき
歴史
- オリジナルのsshはフィンランドのT. Ylonenさんです。 T. Ylonenは、のちにSSH Communication Security 社を設立し、フリーソフトウエアとしてsshをサポートを続けました
- すぐに世界中で広く使われるデファクトスタンダードになりました
- version 1.2.12を最後にライセンスが変わることになり全世界で困ってしまいました。
- バークレイUnix系でセキュリティを意識したOSを開発しているOpenBSDのひとたちが、
1.2.12を参考にしつつ、3ヶ月くらいの突貫工事でOpenSSHをつくりあげました。
このときからOpenSSHがデファクトスタンダードになっています。もちろんライセンスはBSDライセンスなので安心して使えます
- 企業はサポートがあるとかないとか気にするのでオリジナルのSSHを使うことがあります