telnetlogin —
telnetd
のための login
のラッパー
telnetlogin [
-h
host]
[
-p]
telnetlogin は、
login(1)
を実行する setuid
ラッパーである。
このプログラムは、
telnetd(8)
から起動されることになっている。
この考えにより、telnetd
を root
として実行する必要性がなくなる。
telnetlogin はモード 4750,
ユーザー root, グループ
telnetd で
インストールされているべきである。
そうすれば、telnetd は
/etc/inetd.conf
から、ユーザー ``nobody'',
グループ ``telnetd''
で、オプション
-L
path-to-telnetlogin
をつけて実行できる。
telnetlogin
は、上に示したような
login(1)
のオプションの一部のみを、その順番で受け付ける。
これは、
telnetd(8)
が通常このプログラムに与えるオプションの順番である。
さらに
telnetlogin
は、環境変数
TERM,
DISPLAY,
POSIXLY_CORRECT,
REMOTEHOST
のみしか受け付けない。
標準入力・標準出力・標準エラーのストリームは、
端末上に開いていなければならない。
また、このプログラムは、フォアグラウンドプロセスの
プロセスグループリーダーでなければならない。
これら全ての条件をチェックした後、
上記の環境変数の値が正当な値であるかをチェックし、
シグナルハンドラをリセットするなどして、
login を実行する。
関連項目¶
login(1),
inetd.conf(5),
inetd(8),
telnetd(8)
telnetlogin は login に対して
-f
オプションの使用を許可しておらず、ユーザー名を渡すことも許されていない。
そのため、Kerberos や SSL
を使って認証を行う
telnetd
と一緒には使えない。
このプログラムは、現在のところ実験的なコードである。
注意して使うこと。
telnetlogin は、NetKit 0.17
の開発のなかで書かれた。