EP Net Fan
1999年11月19日座学編レジュメ

sshとOTP


1.ssh

sshはネットワークを介してコンピュータにログインするプログラムで, 遠隔地のマシンでコマンドを実行したり,他のマシンへファイルを移したり するために使われる.

sshがtelnetやftpと違う点は通信内容を暗号化するということである. telnetやftpは通信内容をそのままネットワークに流すため,盗聴されると 通信内容(パスワードも含む)は盗聴者にすぐにわかってしまう.

しかし,sshは盗聴されても,暗号が解かれるまでは,通信内容がわからないので, 盗聴対策になる.

したがって,telnetやftpにかわって,sshを使う方がより安全である.





2.sshの使用法

ここを参照





3.OTP

sshは通信を暗号化することによって,情報の漏洩を防いでいる. したがって,通信する2つの機械の両方に暗号化するためのプログラム(つまりssh)が インストールされていなければならない.

しかし,専攻サーバのように多数の機械からの接続をサポートしなければならない場合, 接続してくるすべての機械に,sshがインストールされているとは限らない. sshがインストールされていない機械からログインする場合,telnetやftpを使ってログインする ことになるのだが,上で述べたように,この時にパスワードを盗み見られる可能性がある. これを防ぐためにOTP(One-Time Password)を利用する方法がある.

OTPとは名前の通り,一度きりの使い捨てのパスワードという意味である. つまり,アクセスするたびに毎回違うパスワードを使えば,たとえパスワードを 盗み見られても,盗み見られたパスワードでは,次回からアクセスすることが できないので平気であると言うことである.

具体的には,ホスト側からチャレンジと呼ばれる値を示し,ユーザーは自分だけが 知っているパスフレーズに対し,チャレンジに基づいて演算を加えて得られた結果 (レスポンス)を返すといった方法で実現される.





4.OTPの使用法

専攻サーバには,OTPシステムとして,OPIE(One-time Passwords In Everything) が導入されている.そこで,ここでは,OPIEの導入された機械に,telnetを使って ログインする方法を示す.





4.0.パスフレーズの設定

OTPを利用するには,あらかじめパスフレーズと言うものを設定しておかなければならない. パスフレーズの設定は,OPIEの導入された接続先にログインして,opiepasswdコマンドを 実行することによって行なう.パスフレーズを設定していない場合,telnetでログインすることは できないので,sshでログインする.

例として,以下に makkura というユーザーが hokkaidoudaigaku というパスフレーズを 登録する手順を示した.

<注意>

この例では,説明の都合上,パスフレーズを簡単なものにしているが,実際に使う パスフレーズには,自分には覚えやすく,他人に簡単に推測されないようなものを 使わなければならない.
また,OPIEでは,パスフレーズは,10文字以上127文字以下と決まっているので, その範囲におさまるようなパスフレーズを使わなければならない.

4.0.1.OPIEの導入された接続先にsshでログインする

localhost:$ ssh opiehost -l makkura

4.0.2.opiepasswdコマンドを入力する.

opiehost:$ opiepasswd

と入力すると,次のような応答が返ってくる.

Adding makkura:
You need the response from an OTP generator.
New secret pass phrase:
otp-md5 499 re6717
Response:

この中の 499 re6717 というのがチャレンジと呼ばれるものである.

4.0.3.チャレンジと登録したいパスフレーズを基にレスポンスを計算する

この例では,OTP計算機として,opiekeyを使った.(OTP計算機については, 「4.2.OTP計算機について」を参照)

opiehost:$ opiekey 499 re6717

と入力すると,

Using the MD5 algorithm to compute response.
Reminder: Don't use opiekey from telnet or dial-in sessions.
Enter secret pass phrase:

と返してくるので,ここで新しいパスフレーズ(この例では,hokkaidoudaigaku)を入力すると

WHOM WONT TOOL SEED RAFT OX

と返してくる.これがレスポンスである.

4.0.4.レスポンスを入力する

Response: に計算したレスポンスを入力するとパスフレーズが登録される.

Response: WHOM WONT TOOL SEED RAFT OX

以上で,パスフレーズの設定が終了した.





4.1.telnetを使ってログインする

localhost:$ telnet opiehost

と入力すると,

login:

と,ログイン名を聞かれる.ここで,ログイン名を入力すると,

login: makkura
otp-md5 234 bl0782 ext
Response:

と,チャレンジ(ここでは, 234 bl0782 )が表示されるので,パスフレーズの 設定の時と同様に,レスポンスを計算する.ただし,レスポンスの計算時に 入力するパスフレーズは,先ほど登録したパスフレーズ(この例では, hokkaidoudaigaku) を使う.計算したレスポンスを,Response: 以下に入力すれば,ログインできる.

Response: SLOB AREA ON BASH HURL RISE





4.2.OTP計算機について

上の例の中でも述べたように,レスポンスの計算には,OTP計算機が必要である. したがって,ユーザー各自がOTP計算機を持っていなければならない.
どんなOTP計算機があるかについては,ここを参照して欲しい.





5.参考文献

・「UNIX USER 1998年10月号 特集 : セキュリティ強化を図ろう」 ソフトバンク
・「Software Design 1999年5月号 特集 : 快適! 安全! リモートネットワーキング」 技術評論社
One-Time Password , http//rigs.st.ryukoku.ac.jp/otp/index.shtml
ssh FAQ , http://www.vacia.is.tohoku.ac.jp/~s-yamane/FAQ/ssh/ssh-faq.html


最終更新日 : 2001年7月7日
三浦 優司