Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

telnet

telnetプロトコルを使用して、リモートホストにログインする
2015/05/20 08:00

対応OS: linux , freebsd, solaris
telnet [-E] [HOST]

 telnetコマンドは、HOSTで指定したリモートホストに接続して、ログインするための仲介役をします。telnetコマンドには、コマンド入力モード(プロンプト「telnet>」が表示された状態をいう)があり、いくつかのコマンドを実行することができます。

リモートホスト

 リモートホストとは、ネットワーク上に存在する他のコンピュータのことです。ホストというのは、1台のホストマシンにたくさんのTTY端末を接続して利用していたことからきている言葉です

オプション
① -E
エスケープ文字の機能を無効にします。つまり、エスケープ文字を入力しても通常の入力扱いとします。
エスケープ文字

 telnetの接続を強制的に終了するための特殊な文字のことを、エスケープ文字といいます。通常は、「^]」([Ctrl]+[]])です。

引数
① HOST

ログインするリモートホストを指定します。「takeda@takeda.jp」のようなドメイン名、あるいは「192.168.0.1」のようなIPアドレスで指定します。

 コマンド入力モードで使用できるコマンドを次の表に示します。[/dd]

IPアドレス

 IPアドレスは、ネットワークに接続されたコンピュータに割りあてられた、0~255の4組の数字で構成され、コンピュータ同士が通信するために用いられます

telnet操作を行うコマンド
コマンド内容
open [-l USER] HOSTHOSTに指定したホストと接続する。オプション「-l USER」では、リモートシステムにログインするユーザ名を「USER」で指定する
closeリモートホストとの接続を終了する
! [COMMAND]ローカルシステムのサブシェルで、COMMANDに指定したコマンドを1つ実行する。COMMANDを省略すると、サブシェルを対話モードで起動する
? [COMMAND]COMMANDで指定したコマンドのヘルプを表示する。COMMANDを省略した場合は、ヘルプの一覧を表示する
ztelnetをサスペンドする
quittelnetコマンドの実行を終了する
ローカルシステム

 ローカルシステムとは、telnetでログインしているシステムに対して、telnetコマンドを実行したシステムのことをいいます

サブシェル

 サブシェルとは、telnetコマンドから起動されるシェルのことです。telnetのコマンドモードからローカルシステムでコマンドを実行する場合には、シェルを起動しなければなりません。telnetから起動されたシェル上で起動したコマンドが終了すると、そのシェルも終了します

サスペンドする

 サスペンドするとは中断することを指し、この場合は、telnetコマンドをバックグランドジョブとしてシェルに戻ることです。fgコマンドを実行してtelnetコマンドに復帰することができます

telnetプロトコルを使ってログインする
$ telnet localhost 
リモートホスト「localhost」(自身)にログインする
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Red Hat Linux release 8.0 (Psyche)
Kernel 2.4.18-14 on an i686
login: takeda
ログインユーザ名を入力
Password:
パスワードはエコーバックされない
Last login: Sun Apr 13 21:49:05 from localhost
[takeda]$
ログイン成功
telnetプロトコルを使ってログインする
$ telnet 
telnet>
コマンド入力モード
telnet> open localhost -l takeda
リモートホスト「localhost」に、ユーザ名「takeda」でログインする
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Password:
Last login: Sun Apr 13 22:09:34 from localhost
[takeda]$
ログイン成功
エスケープ文字を入力すると、コマンド入力モードに戻る
telnet> close
接続を終了する
Connection closed.
telnet> quit
telnetを終了する
$
telnetを使いこなす

 UNIXのよいところは、ネットワーク越しに他のマシンに入り込んで作業ができることではないでしょうか?例えば、あなたが加入しているプロバイダにtelnetでログインしたことはありますか?telnetで入ることを許可していないプロバイダもありますが、個人設定を行うためにtelnetを使用する場合があります。メール転送の設定や、ディスクの使用量を表示するなどプロバイダによって使える機能はいろいろですが、今やtelnetはあたり前に使えないといけないコマンドなのかもしれません。筆者は、ネットワークで接続されたUNIXマシンを複数台管理している関係上、telnetを使わない日はないといってもよいくらい、その使用頻度は高いのです。これからUNIXマシンがどんどんネットワークに接続され、UNIXマシンを接続した友達同士でお互いのマシンにtelnetで入って作業をするということも日常的に行われるのではないかと思っています。

関連タグ

UNIXコマンド辞典トップページに戻る

All contents copyright © 2005-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5