PR

Telnetとは?IT初心者向けに1分でわかりやすく解説

IT-Skills

Telnet(テルネット)は、インターネット上やLAN内のコンピュータに接続し、そのコンピュータ上でコマンドを実行できるようにするためのプロトコルです。ユーザーがネットワーク上の他のコンピュータに接続し、そのコンピュータに存在するリソースやアプリケーションにアクセスできるようにすることを目的としています。

Telnetとは
図1:Telnetとは?

参考 プロトコルとは?

主にTCP/IPで使用され、デフォルトではTCPポート番号23を利用して通信します。

このページではTelnetとは何か?どのような原理で動作するか?をIT初心者向けに1からわかりやすく、また同時にSSHとの違いについても解説します。

このページで学べる内容
  • Telnetとは?
    • Telnetを利用したサーバへの接続方法
  • SSHとの違い

ネットワークエンジニアを目指す方であれば知らないと恥ずかしい超・基本知識の1つです。是非最後までご覧ください。

スポンサーリンク

Telnetとは?

Telnetは、インターネット上でリモートコンピュータ(=サーバ)に接続し、そのコンピュータ上でコマンドを実行できるようにするためのプロトコルです。主にTCP/IPネットワークで使用され、デフォルトでTCPポート23を利用して通信します。

Telnetとは
(再掲)図1:Telnetとは?

参考 通信プロトコル / TCPIP / ポート番号

Telnetは、クライアント-サーバーモデルを採用しています。

これは、あなたのコンピュータ(クライアント)がリモートのコンピュータ(サーバー)に接続し、コマンドを実行できるという意味です。インターフェースはテキストベースで、コマンドラインで操作を行います。

ポイント Telnetの動作原理

  1. クライアント-サーバーモデル
    • Telnetはクライアント-サーバーモデルに基づいて動作。ユーザーはTelnetクライアントソフトウェアを使用して、Telnetサーバーに接続する。
  2. TCP/IPプロトコル
    • TelnetはTCP/IPプロトコルを使用してデータを送受信する。通常、Telnet通信はTCPポート23を使用。
  3. リモートセッション
    • 接続が確立されると、ユーザーはリモートマシン上でコマンドを実行できるようになります。これは、ユーザーがリモートマシンのコマンドラインインターフェースを操作しているようなイメージでOK。
  4. テキストベースの通信
    • Telnetはプレーンテキスト(=平文)での通信を行います。このため、暗号化されていないデータがネットワークを介して転送されるため、セキュリティ上のリスクがあります。

Telnetの注意点

Telnetはデータの暗号化や認証機能がなくセキュリティが低いため、現在ではほとんど使われていません。代わりに、SSH(Secure Shell)などのより安全なプロトコルが一般的に利用されています。たまに、平成初期から稼働しているようなレガシーシステムや、このページで記載しているようなネットワークエンジニアの教育目的での使用がまだ残っている、というような状況。

現代のモダンなシステムでTelnetを利用することはほとんどありませんが、このページではTelnetとは何か?をイメージしやすいように実際にTelnetを利用してサーバへ接続する方法をご紹介します。

あまり利用頻度は多くはありませんが、Telnetのイメージが深まると思いますので、是非一度試してみてください。

Telnetを利用したサーバへの接続方法

Telnetを利用したサーバ接続方法の作業ステップは↓の通り。

ステップ1Telnetクライアントのインストール
Windowsの場合、コントロールパネルから「プログラムと機能」を選択し、「Windowsの機能の有効化または無効化」でTelnetクライアントを有効化。MacやLinuxでは、通常はTelnetクライアントが標準でインストールされています。

ステップ2コマンドプロンプトまたはターミナルを開く
Windowsでは「cmd」または「PowerShell」、MacやLinuxでは「ターミナル」を開きます。

ステップ3Telnetコマンドを入力する
次の形式でTelnetコマンドを入力します。

telnet [ホスト名またはIPアドレス] [ポート番号(オプション)]

例えば、ホスト名がexample.comで、デフォルトのポート番号(23)を使用する場合、以下のように入力します。

telnet example.com

ポート番号が異なる場合は、次のように指定します(ここではポート番号は2323とします)。

telnet example.com 2323

一般的には最近のサーバはファイアウォールでTelnet接続を許可していない(TCPポート23を閉塞している)ため、このような接続は恐らく失敗します。やるのであれば自前のVPSやローカルの開発環境を利用するようにしましょう。

参考 ファイアウォールとは?

接続が成功すると、リモートサーバのログイン画面が表示されます。指示に従って、ユーザー名とパスワードを入力してログインします。ログインに成功すると、リモートサーバでコマンドを実行することが可能になります。あとは、いつも通り自分の端末でコマンドで様々な操作をするようなイメージで、サーバ側の操作を行うことができます。

操作が終わったら、「exit」または「logout」コマンドを入力して接続を終了します。

Telnetはセキュリティが低いため、本番環境では使用しないでください。代わりにSSHを使用しましょう。

Tips:Telnet=汎用的なネットワークプロトコルクライアント

実はTelnetは汎用的なネットワークプロトコルクライアントとして機能します。つまり、Telnetサーバ(telnetd)だけでなく、FTPSMTPHTTPなどの他のプロトコルを使用しているサービスへの接続も可能です。これはTelnetがTCP/IP接続を確立し、テキストベースの通信を行うことが理由です。

参考 Telnetを使用したプロトコル接続の例

  1. FTP(File Transfer Protocol):
    • FTPサーバに接続するためにTelnetを使用することが可能。
    • 通常のFTPクライアントと同様に、Telnetを介してFTPコマンドを送信→ファイル転送やディレクトリを操作することが可能。
  2. SMTP(Simple Mail Transfer Protocol):
    • SMTPサーバに対して、Telnetを使用して電子メールを送信することができます。
    • これにより、メールの送信プロセスを手動で実行し、SMTPサーバの動作をテストすることが可能となる。
  3. HTTP(Hypertext Transfer Protocol):
    • HTTPサーバ(Webサーバ)への接続にもTelnetを使用できます。
    • Webサーバへのリクエストを手動で送信し、レスポンスを確認するためのデバッグツールとして利用されることがあります。

TelnetとSSHの違い

TelnetとSSHは、どちらもリモートコンピュータへの接続やコマンド実行を行うためのプロトコルですが、主にセキュリティの面で大きな違いがあります。以下に、それぞれの特徴と違いをわかりやすく解説します。

項目SSHTelnet
セキュリティデータが暗号化されるためセキュリティが向上する平文(暗号化せずにそのまま)で接続を行うためデータが傍受される可能性がある
認証公開鍵認証やパスワード認証をサポートしセキュリティを強化できるパスワード認証のみをサポートしている
ポート番号ポート番号22を使用するポート番号23を使用する
プロトコルTCPを使用するTCPまたはUDPを使用できる
機能ファイル転送やポート転送など様々な機能がある機能が限定されており基本的なコマンドライン操作のみが可能
Telnet SSH 違い
図2:Telnet/SSHの違い

まとめると、TelnetとSSHは同様の目的で使用されますが、セキュリティ面で大きな違いがあり、現代ではSSHが一般的に使用されるプロトコルということになります。

Telnetのまとめ
  • Telnetは、インターネット上でリモートコンピュータ(=サーバ)に接続し、そのコンピュータ上でコマンドを実行できるようにするためのプロトコル。主にTCP/IPネットワークで使用され、デフォルトでTCPポート23を利用して通信します。
  • Telnetは、通信内容が暗号化されずにプレーンテキストで送受信されます。そのため、第三者がネットワーク上で通信内容を傍受した場合、ユーザー名やパスワード、実行されたコマンドなどが漏洩するリスクがあります。
  • Telnetはセキュリティ上の問題から、現代ではほとんど使用されません。代わりに、SSHが一般的にリモート接続やコマンド実行に利用されています。
【コラム】Telnetの歴史と発展

Telnetの歴史は、インターネットの黎明期に遡ります。このプロトコルは、初期のインターネット技術の発展において重要な役割を果たしました。

参考 Telnetの起源と発展

  1. 初期の開発 (1969年):
    • Telnetは1969年に開発されたプロトコル。
    • ARPANET(先進研究プロジェクト機関ネットワーク)の一環として誕生。これは、世界で最初の実装されたパケット交換ネットワークであり、インターネットの前身。
  2. 標準化 (1983年):
    • Telnetプロトコルは、1983年にInternet Engineering Task Force(IETF)によって標準化。
    • RFC 854として文書化され、リモートコンピュータへのログインおよびセッション管理のための基本的なフレームワークが定義される。

参考 Telnetの重要性と影響

  1. リモートコンピューティング:
    • Telnetは、ユーザーが自分のコンピュータから離れた場所にあるコンピュータにリモートでアクセスし、コントロールできる能力を初めて提供しました。
      →ネットワークベースのコンピューティングの基礎を築くのに役立ちました。
  2. 普及と利用:
    • 1970年代から1990年代にかけて、Telnetが広く使われるようになりました。
    • 大学、研究機関、企業などで、リモートでのシステムアクセスやネットワークリソースの利用に活用された。

参考 セキュリティ問題と衰退

  1. セキュリティの懸念:
    • Telnetはデータを暗号化せずに送信するため、セキュリティ上のリスクが高いとされるように。
    • 1990年代後半から2000年代初頭にかけて、セキュリティ意識の高まりと共に、Telnetの使用は徐々に減少。
  2. SSHへの移行:
    • より安全な通信プロトコルであるSSH(Secure Shell)が登場し、徐々にTelnetが代替される。

Telnetはインターネットの初期の発展において重要な役割を果たし、リモートコンピューティングの基礎を築きましたが、セキュリティの懸念から現代ではあまり使用されていません。

ネットワーク学習の決定版(ネットワークエンジニアを目指すなら必見!)

blank
インターネットのプロトコルTCP/IP入門書の決定版!

↑ページ数が多く誰でも手軽に読める内容ではありませんが、ネットワークエンジニアであれば、ほぼ全員が一度は読んだことがある超・有料書籍。是非一度読破しておきたい1冊のご紹介です。

読者特典> 0から学ぶネットワーク入門

このWebサイトは現役のエンジニアが以下3点を目的として運営しています。

  1. 勉強:一度理解した内容を忘れないように。
    → アウトプットは「最強のインプット」である! 
  2. 備忘:忘れたとしても後から見返せるように。
    → 未来の自分への「お手紙」を書いています。 
  3. 共有:〇〇ってこうだったんだ!の感動をシェアできるように。
    → あなたの知識は誰かにとっての「価値ある情報」です。 

副業ブログの始め方はこちらから

スポンサーリンク
IT-SkillsNetwork
シェアする
ビズドットオンラインをフォローする
タイトルとURLをコピーしました