NetBSD2 | NetBSD | 1.6 | amd | autoconf | apache | bind | booting | boot/install/disk | boot-cd | build.sh | (daily) | Canna | CF+sendmail | cvs | dhcpd | dvi2ps | emacs-20 | ftpmirror | fvwm2 | gcc | gettext | ghostscript | inn | IPv6 | jitterbug | Install(OHP) | kernel | (old) | majordomo | make build | MHonArc | MRTG | namazu | ndtpd | PHP + PostgreSQL | netatalk | netboot | NFS | NIS | ntp | opie | Open Firmware | perl | procmail | sendmail | sharutils | smtpfeed | tcsh | TeX | time make | ucspi-tcp | w3 | wget | Wnn | wu-ftpd | X11 | Site Map |
全文検索

OPIE, One-time Password In Everything

URL's
ftp://ftp.nrl.navy.mil/pub/security/opie/
ftp://ftp.inner.net/pub/opie/
ftp://ftp.win.or.jp/pub/network/security/opie/
やさしい使い方(client 側の話)
http://rigs.st.ryukoku.ac.jp/otp/
opie-2.4.0 を NetBSD に入れる場合
- m Makefile を三か所直しておく 必要がある

どのような操作があるか

man page のあるもの

opiegen       Example OPIE-based OTP generator
opieinfo      Extract  sequence  number  and seed for future OPIE challenges
opiekey
opielogin     login の置換
opiepasswd    password を変更する。
opieserv
opiesu        su の置換

making opie

./configure すると次のように言う (あるいは ./configure --enable-access-file=/etc/opieaccess ) Binaries are going to be installed into /usr/local/bin, Manual pages are going to be installed into /usr/local/man. creating Makefile Have you read the README file? 構わず time make (NetBSD/sparc 1.4M, SS-10) 65.927u 14.594s 1:28.31 91.1% 0+0k 40+970io 42pf+0w (NetBSD/sparc 1.4.1, SS-2) 125.210u 33.496s 3:42.18 71.4% 0+0k 914+1603io 108pf+0w (NetBSD/macppc 1.3J, 603e/240) 32.557u 20.827s 1:06.26 80.5% 0+0k 194+1185io 102pf+0w makoto@harry 9:43:20/991209(...src-harry/opie-2.32)> ./opietest opietest: executing 13 tests ( 1/13) testing opieatob8... passed ( 2/13) testing opiebtoa8... passed ( 3/13) testing opiebtoe... passed ( 4/13) testing opieetob... passed ( 5/13) testing opiegenerator... passed ( 6/13) testing opiegetsequence... passed ( 7/13) testing opiehash(MD4)... passed ( 8/13) testing opiehash(MD5)... passed ( 9/13) testing opieinsecure... passed (10/13) testing opiekeycrunch... passed (11/13) testing opielock... skipped (12/13) testing opierandomchallenge... passed (13/13) testing opieunlock... skipped opietest: completed 13 tests. 11 tests passed, 2 tests skipped, 0 tests failed. makoto@harry 9:43:23/991209(...src-harry/opie-2.32)>

make install

client 側は全部入れる。server 側は su を入れない。ftpd も場合 によっては入れない (su の場合、opiesu のようにすれば使えるから)。 ただし僕の場合、一度 make install してから必要なものを戻している。 注意することは、

あやむらさんも書いているが、 別の窓で root になっておいて、login/su の 動作が確認出来るまで その窓の root から抜けないこと。

他の機械に login するために必要なもの、つまり client だけだったら make client-install で良いその時に入るものは次の通り。

-r-s--x--x  1 root  bin     54021 Dec  9 08:13 opiepasswd
-r-xr-xr-x  1 root  bin     17749 Dec  9 08:13 opieinfo
lrwxr-xr-x  1 root  wheel      22 Dec  9 08:13 otp-md5 -> /usr/local/bin/opiekey
lrwxr-xr-x  1 root  wheel      22 Dec  9 08:13 otp-md4 -> /usr/local/bin/opiekey
-r-x--x--x  1 root  bin     44382 Dec  9 08:13 opiekey
opie-2.4.0 を NetBSD に入れる場合 Makefile を三か所直しておく 必要がある
make intall

入るものは次の通り ( - が付いているのは元のもの )
  ./usr/bin/login
  ./usr/bin/su
- ./usr/bin/login.opie.old
  ./usr/bin/su.opie.old
  ./usr/libexec/ftpd
- ./usr/libexec/ftpd.opie.old
  ./usr/local/bin/opiekey
  ./usr/local/bin/opieinfo
  ./usr/local/bin/opiepasswd
  ./usr/local/man/man1/opiekey.1
  ./usr/local/man/man1/opiegen.1
  ./usr/local/man/man1/opieinfo.1
  ./usr/local/man/man1/opielogin.1
  ./usr/local/man/man1/opiepasswd.1
  ./usr/local/man/man1/opieserv.1
  ./usr/local/man/man1/opiesu.1
  ./usr/local/man/man4/opie.4
  ./usr/local/man/man5/opiekeys.5
  ./usr/local/man/man5/opieaccess.5
  ./usr/local/man/man8/opieftpd.8
  ./etc/opiekeys
(これは試しなので、元に戻しておく)

# login はそのままでもいいかも知れない
mv /usr/bin/login /usr/bin/login.opie
mv /usr/bin/login.opie.old  /usr/bin/login
chmod 4755 /usr/bin/login

# su は戻す
mv /usr/bin/su              /usr/bin/opie.su
mv /usr/bin/su.opie.old     /usr/bin/su
chmod 4755                  /usr/bin/su

# ftpd も戻す
mv /usr/libexec/ftpd  /usr/libexec/opie.ftpd
mv /usr/libexec/ftpd.opie.old /usr/libexec/ftpd
chmod 555 /usr/libexec/ftpd

/etc/opieaccess

./configure --enable-access-file=/etc/opieaccess として組立てた場合
/etc/opieaccess (see man 5 opieaccess) に隣の機械を書いておけば、 そういう設定がしてある機械からだと、
login: makoto
otp-md5 413 yy1234 ext
Response or Password: 
という表示が出て、通常の passwd を入力すれば login 出来る。

/etc/opiekeys

ここに login するための情報が書いてある。これを写せば、別の機械 でも同様に opie 経由で login 出来る
これは local で opiepasswd として設定する。

Last Update
10:52:40 03/12/08
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Apache/2.4.46 (Unix) PHP/7.4.15
Count.cgi
(since 1999/12/09)