1.目的
Windowsでtelnetd(telnetサーバ)を"0円"で動かします。
2.用意するべきもの
3. cygwinのダウンロードとインストール
これに関しては、以下のページの方が詳しいです。
4. cygwinの環境設定
実はここまでで、大半の作業が終わってしまっているんですけどね(^^;
/etc/passwdファイルの作成を行います。
NT4.0にインストールした時は、勝手に作られるようですが、
Windows98にインストールした場合は、作られないようなので、
作成する必要があります。
フォーマットは、以下のとおりです。
ユーザ名:パスワード:ユーザID:グループID:ユーザフルネーム:ホームディレクトリ:シェル
ここで、パスワードはcryptコマンドを使って作成します。
ex) パスワードが「hogehoge」の場合。
$ crypt hogehoge
70TDRFINpHCUU
ここで表示された、「70TDRFINpHCUU」を、passwdファイルのパスワードフィールドにコピーします。
こんな感じになるでしょう。
hogehoge:70TDRFINpHCUU:1:500:Hoge User:/home/hoge:/usr/bin/bash
5. telnetdの環境設定
今回は、in.telnetdをinetd経由で動かすことにします。
5-1) /etc/inetd.confファイルの作成
telnet stream tcp nowait hogehoge /usr/sbin/in.telnetd
hogehogeの部分は、実際に起動するユーザに置き換えて下さい。
5-2) /etc/servicesファイルの作成
今回は、telnetdしか起動しないので、以下の記述だけでOKです。
telnet 23
6. 稼動!
ここまで設定できたら、実際に動かしてみましょう。
inetdを起動するコマンドは、以下のとおりです。
/usr/sbin/inetd -d
こんなのが出てれば、OKでしょう。
$ /usr/sbin/inetd -d
ADD : telnet proto=tcp, wait=0, user=hogehoge builtin=0 server=/usr/sbin/in.telnetd
registered /usr/sbin/in.telnetd on 4
7. 接続してみる
telnetdが起動したので、早速接続してみます。
いきなりPasswordを聞かれる画面になりますが、
どうやら、inetd.confで設定したユーザがデフォルトになるようです。
最初にパスワードを間違うと、ユーザ名を聞いてきます。
ちなみに、送信改行コードを「CR+LF」にしていると、
2回改行を送ってしまうようなので、「CR」にすることをおすすめします。