【コラム】

最新IT用語解説

31 SSH(Secure Shell)

佐藤晃洋  [2002/03/28]

今週のテーマは「SSH」。このコーナーでは過去にも「IPsec」や「PGP」「S/MIME」などいろいろな暗号プロトコルを取り上げてきたが、今回解説する「SSH」もそんな暗号プロトコルの一つだ。ただSSHは「Secure Shell」という名称から「暗号化されたtelnet」とだけ認識されがちだが、実際には通常のtelnetログイン以外にもいろいろな使い方が可能。そこで今回はSSHそのものの解説はもちろん、簡単に出来るSSHの便利な使い方などを解説してみたい。

■微妙に異なるSSHとIPsec

先程も書いたように、SSHは「Secure Shell」の略称という点からもわかるように、そもそもはtelnet接続によるシェルログインを暗号化するために作られたプロトコルだ。通常のtelnetはIDやパスワードが平文でネットワーク上に流れる上、ログイン後もデータは全て生データのままでやりとりされるのでセキュリティという面では非常に危険なため、その点を回避するために生まれたのがSSHというわけだ。ただSSHはその後の改良により、シェルログイン以外にも「ポートフォワーディング」と呼ばれる方法を用いてFTPやSMTP、POP3など様々なプロトコルを暗号化することができるようになっている。

とここまで読まれた方で「SSHでいろいろなプロトコルが暗号化できるのであれば、IPsecは不要なのでは?」と思われる方もいるかもしれないが、SSHとIPsecには大きな違いがある。具体的にはIPsecはネットワーク層レベルで働き特定の2点間の通信を全て暗号化するため、ユーザは全くIPsecの存在を意識することなく普通にtelnetやFTPを使うだけで暗号化された通信が可能なのに対し、SSHはあくまでアプリケーション層レベルで動作するため、暗号化通信を行いたいクライアント/サーバにはそれぞれSSH対応ソフトのインストールが必要になる、という点が異なる。

ただ現段階で、IPsecには以前も解説したように相互接続性などの問題がある上、本格的な導入となると今のところ高価なVPN装置などの導入が事実上不可欠なのに対し、SSHにはフィンランドのSSH社が開発・販売を行っている商用版SSHの他に、オープンソースのプロジェクトとして開発が進められているOpenSSH(もちろんフリーで利用可能)が存在する。特にOpenSSHは現在OpenBSD/NetBSD/FreeBSDや、RedHat/Debian/Slackwareなど代表的なLinuxのディストリビューション、そしてMac OS Xなどに最初から組み込まれているため、簡単な設定を行うことですぐにSSHを利用することができる。またWindowsでも、TeraTerm Proのプラグインである「TTSSH」などを使用することでSSHによるシェルログインが可能なため、SSHは現在広くインターネットで普及するに至っている。

■SCPで安全にファイル転送

さて、先程も書いたようにSSHは、シェルログイン以外にも様々なプロトコルを暗号化することが可能だが、その中でも最近一部で注目を集めているのが、SSHを利用して安全なファイル転送を実現する「SCP(Secure Copy)」だ。

インターネット上でのファイル転送プロトコルというと一般のユーザにはFTPがおなじみだが、FTPも実はtelnetと同様に、ログイン時のID・パスワード情報や転送中のデータは全て生データのまま流れてしまう。そのため、セキュリティを考えるとFTPを使うのは危険度が非常に高い。それに対しSCPはSSHによる暗号化を利用してファイル転送を行うため、ID・パスワードなどはもちろん転送中のファイルなども全て暗号化されるのでセキュリティが格段に向上する、というわけ。

ただWindowsでSCPを使おうと思っても、FTPクライアント同様にグラフィカルなインタフェースでファイル転送ができる良いソフトがなかったため、これまではコマンドラインベースのツールを使うか、あるいは先程紹介したTeraTerm Pro+TTSSHの組み合わせを使ってポートフォワーディングの設定を行った上でFTPクライアントを使う、などの面倒な手間が必要だった。ところが最近になって「WinSCP」や「Secure iXplorer」などグラフィカルなインタフェースでSCPを利用できるクライアントソフトが登場してきたため、SCPを利用するための敷居は一気に低くなった。

今名前の挙がった2つのソフトはいずれも外国製のため、日本語ネイティブのFTPクライアントに比べると漢字コードの変換機能がないなどの点で若干見劣りはするが、少なくとも安全にファイル転送を行うという点では問題なく使用が可能。サーバ側がSSHによるログインに対応していればSCPも普通使えるはずなので、FTPのセキュリティが気になる方はぜひこれらのソフトを試してみて欲しい。

■日本語クライアントの開発が急務

これまで紹介してきたようにSSHは暗号化プロトコルとして非常に便利な存在なのだが、一つ難点を挙げるとすれば「日本語クライアントの整備の遅れ」が挙げられるだろうか。特にWindowsでそれが顕著だ。

上記でご紹介してきたソフトの中でも、TeraTerm Pro+TTSSHの組み合わせではSSHプロトコルのうちSSH1のみにしか対応していないのだが、よりセキュリティの堅いSSH2に対応するクライアントソフトでは、日本語の利用に難があることが多く、未だにTTSSHが幅を利かせる要因の一つともなっている。また先程のSCPの件でも、筆者の知る限り日本語ネイティブでSCPに対応するWindows用のGUIクライアントは今のところ存在しないため、せっかくのSCPも初心者には敷居の高いものになってしまいがちだ。

インターネット上のセキュリティに対する意識がこれだけ高まっている現状を考えると、そろそろ日本語対応の新たなSSH/SCPクライアントにご登場願いたいと思うのは筆者のわがままだろうか。「そう思うなら自分で作れ」と言われそうだが、自分でクライアントを開発している時間的余裕は今の筆者にはないだけに、SSHに関係している日本の開発者コミュニティの奮起にぜひ期待したい。

    新着記事

    特設サイトの情報

    求人情報

    人気記事

    一覧

    イチオシ記事

    新着記事

    特別企画

    一覧

    転職ノウハウ

    あなたの仕事適性診断

    4つの診断で、自分の適性を見つめなおそう!

    Heroes File ~挑戦者たち~

    働くこと・挑戦し続けることへの思いを綴ったインタビュー

    はじめての転職診断

    あなたにピッタリのアドバイスを読むことができます。

    転職Q&A

    転職に必要な情報が収集できます

    スカウト転職する

    企業からアプローチのメッセージが届きます。