opieによるLogin

ホーム
mgetty設定
FAXの送受信
voice設定
DTMFで遠隔操作
ポケベル送信

T-Saitoh


opie

 ネットワーク接続に利用するために、 Zaurus igeti を利用している。 これにより家のマシンに telnet によりネットワーク接続するために 使い捨てパスワードを導入し、 セキュリティ対策を検討した。

 Zaurus は More ソフトにより新たな機能をインストールすることが できることから、PDA 端末として igeti(MI-P2) を購入した。 しかしながら高速通信のために PHS を用いているため、 PIAFS 非対応の家のモデムには Dial-in 接続できない。 そこで、Zaurus の 拡張 More ソフトの中の MiniTELNET を用いて プロバイダ経由で家のマシンにネットワーク接続することを検討した。
 しかしながら Login 時のパスワードが、垂れ流しになるのでは、 セキュリティ上問題となる。 当初は ssh(Secure Shell) の More ソフトが出るのを期待することも考えたが、 Zaurus には decrypt 処理が重すぎ不可能だろうとの御指摘を頂いた。 そこで使い捨てパスワードにより TELNET で接続することにした。

使い捨てパスワード利用の設定

使い捨てパスワードを利用するために、 OPIE(Onetime Password in Everything) を導入することを検討した。 しかしながら、ローカルホストからの telnet,login,su,ftp でも 使い捨てパスワードを要求する。 安全性から考えると当然だけど....
そこで、プロバイダからの telnet 接続だけ OPIE を要求するように 設定した。よって接続した後は、 パスワードを使う処理は一切使ってはいけない。

 $ tar zxvf opie-2.32.tar.gz 
 $ cd opie-2.32
 $ ./configure
 $ make
 $ vi Makefile

Makefile を /bin/login 等を書き換えないように修正。

 SU=/bin/su
 LOGIN=/bin/login
 FTPD=/usr/sbin/in.ftpd
  ↓
 SU=/usr/local/bin/opiesu
 LOGIN=/usr/local/bin/opielogin 
 FTPD=/usr/local/sbin/opieftpd

opie 関係は /usr/local/{bin,sbin}にインストールする。

 # make install 

OPIE を利用した telnet 接続をできるように設定

Debian の telnetd は、標準で SSL を使うので、SSL を使わない物を利用する。
tcp_wrapper で設定しやすいように、telnetd の名前を opietelnetd としておく。

 # cp /usr/sbin/in.telnetd.nossl /usr/local/sbin/opietelnetd 
  • /etc/services

    通常の23番ポートを使い分けるのは、設定が難しいし、 縦断爆撃系のアタックを受けやすいので、 分かりやすい別ポート番号を利用する。

     opie-telnet 10023/tcp  # opie telnet 
    
  • /etc/inetd.conf

    tcp_wrapper を経由して telnetd が起動されるように設定する。 -Lオプションにより opielogin を 使うようにする。
    書き換え後は、inetd に kill -HUP プロセス番号を実行する。

     opie-telnet stream tcp nowait root \
          /usr/sbin/tcpd /usr/local/sbin/opietelnetd -L /usr/local/bin/opielogin 
    
  • /etc/hosts.allow

    tcp_wrapper により自分のプロバイダ以外から入られないように設定する。

     opietelnetd:  localhost .foo.bar.or.jp 
    
  • /etc/hosts.deny
     opietelnetd: ALL 
    

各ユーザの使い捨てパスワードの設定

 $ opiepasswd -c
    :
 Enter old secret pass phrase: パスワードの入力 

PDA にあらかじめ計算しておいた使い捨てパスワードを、 まとめて記録しておこう。

 $ opiekey -n 10 499 hg1234
 Using the MD5 algorithm to compute response.
 Reminder: Don't use opiekey from telnet or dial-in sessions.
 Enter secret pass phrase: パスワードの入力 
 490: KIRK STIR MITT GERM OH HALF
      :
 499: BULK EACH DRY EROS HAW MODE

◎ [ T-Saitoh電子情報福井高専 ]