Linux豆知識 106
telnetコマンド
公開日:2012年06月22日
「Telnet」は、ネットワークを介して2つのホスト間で通信を行うためのプロトコルです。Telnetを使うと、遠隔地にあるホストを、仮想端末ソフトを利用して操作することができます。サーバ・クライアント方式で提供され、Telnetサーバが操作される側、クライアントが操作する側で動作します。
UNIXは、その登場当初から複数のユーザが同時に利用するという前提の下で開発されていたため、当初よりシリアルポート等に複数の端末を接続して使用できました。ここでの端末とホストの通信を、ネットワーク上でも可能にしたのがTelnetプロトコルだということができます。
しかし、Telnetには、「通信を平文で行う」という致命的な弱点があります。このため、通信内容が筒抜けになってしまう恐れがあり、セキュリティ上問題があります。このため、リモートホストを操作する際は「SSH」を利用する機会が多くなっています。ディストリビューションによっては、Telnetコマンドがデフォルトでインストールされていないものもあります。
それでも「Telnetコマンド」は利用価値があります。Telnetコマンドは、
$ telnet 192.168.0.1 80
のように、ホストに続けてポート番号を指定することで(この例ではホストに192.168.0.1、ポート番号80を指定)、指定したポートで通信を行うことができます。80番ポートは通常HTTPが利用するポートですから、この操作によって、サーバのHTTPプロトコルでの通信が行えるようになります。この時、サーバ側は、HTTPプロトコルでのコマンドを受け付けますので、ここでたとえば
GET /index.html
のようにコマンドを打つと、index.htmlファイルが帰ってきます。
この利用の仕方でTelnetコマンドを使うと、サーバが正常に動作しているのか、どのように動作しているのか、といったことがわかるため、使いこなせると非常に便利です。一方、自分が管理していないサーバに対しては、セキュリティ攻撃と間違われる可能性もありますので、このような使い方は、自分が管理しているサーバに対してのみ行うようにしてください。上手く使うとサーバ管理に強力な道具となります。是非、試してみてください。