Ubuntuにtelnetで接続可能にする。一般ユーザだけでなく、rootユーザでも接続可能にする。

telnetがインストールされているかの確認。

#dpkg -l | grep telnet

「apt-show-versions」コマンドでもインストールに成功しているかを確認可能。

インストールされていない場合は、apt-getでインストールする。

#apt-get -y install telnetd xinetd

localhosttelnetで接続してみる。

$telnet localhost

失敗した。

pingは通るので、ファイアウォール(今回はiptables)の設定を確認する。

#/sbin/iptables -L

iptablesは稼働している模様。
iptablesの設定ファイルを確認する。

#ls /etc/sysconfig/iptables
No Such File or Directory

存在しないため、設定ファイルを作成する。
ここでは、/etc/iptables.rulesにiptablesのルールファイルを作成し、そこに基本事項を出力することを記載する。

# /sbin/iptables-save -c > /etc/iptables.rules

iptablesの設定をいじるまえに、そもそもiptablesを停止してtelnet接続が可能かを確認する。

#/etc/init.d/xinetd stop

接続できない。
rootユーザではなく、一般ユーザで試しても接続できない。

おかしいぞと思い、telnetが起動しているかを確認したら、起動していなかった。あほw。

#/etc/init.d/xinetd status

起動する。

#/etc/init.d/xinetd start

しかし、これでも接続できない。
nmapを使用して開放されているポートを調べる。

#nmap localhost

23番ポートが開かれていない。

telnetdは起動しているはずなのに、何故だろうか。
inetutils-inetdをインストールする。

#apt-get install inetutils-inetd

そして、
/etc/inetd.confを編集して次の記述を追記する。

telnet stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.telnetd

# vi /etc/inetd.conf

最後に、「/etc/init.d/inetutils-inetd restart」を実行し、telnetを起動する。
これでうまく行った。

telnetを使用するのにこれほど苦労したことはない。。。