DOKK / manpages / debian 10 / manpages-ja / telnet.1.ja
TELNET(1) General Commands Manual TELNET(1)

名前

telnetTELNET プロトコルのユーザーインターフェース

書式

telnet [-8ELadr] [-S tos] [-e escapechar] [-l user] [-n tracefile] [host [port]]

説明

telnet コマンドは TELNET プロトコルを用いて他のホストと相互通信をするために使われる。 このプログラムは、("telnet> ") というプロンプトを表示して、 コマンドモードで開始される。 引き数 host を付けて telnet が起動されると、 open コマンドが暗黙のうちに実行される。 以下の説明を参照すること。

オプション:

8 ビット動作を行う。 入力・出力の両方で、 TELNET BINARY オプションを用いるようにネゴシエーションを行う。 デフォルトの telnet は 8 ビットクリーンではない。
エスケープ文字の機能を無効にする。 つまり、エスケープ文字を「無視する文字」に設定する。
出力に 8 ビットデータパスを指定する。 出力のみで TELNET BINARY オプション使用のネゴシエーションを行う。
自動ログインをさせる。 現在のところ、リモートホストが ENVIRON オプションの USER 変数をサポートしている場合、この変数がログイン名として送信される。 ユーザ名は getlogin(3) を使って取得される。
の初期値を TRUE に設定する。
rlogin(1) をエミュレートする。 このモードでは、デフォルトのエスケープ文字はチルダ (~) である。 また、エスケープ文字の解釈は変更される。 エスケープ文字の後にドット (.) を続けると telnet をリモートホストから切断する。 エスケープ文字の後に ^Z を続けると telnet を中断する。 ^] (デフォルトの telnet エスケープ文字) を送ると通常の telnet プロンプトが表示される。 これらのコードは行頭にある場合にのみ受け付けられる。
tos
telnet 接続のための サービスタイプ (type-of-service, TOS) オプションの値を tos に設定する。
escapechar
エスケープ文字を escapechar に設定する。 文字を何も指定しない場合、エスケープ文字は使われない。 接続されている間にエスケープ文字が入力されると、 telnet はコマンドモードになる。
user
リモートシステムにログインするユーザーとして user を指定する。 これは指定された名前を環境変数 USER として送信することで実現されるので、 リモートシステムが TELNET ENVIRON オプションをサポートしている必要がある。 このオプションは、暗黙のうちに -a オプションが使われ、 open コマンドとともに使われる。
tracefile
トレース情報を記録するためにファイル tracefile を開く。 以下の set tracefile コマンドを参照すること。
host
ネットワーク越しに接続するホストを指定する。
port
接続するポート名またはサービス名を指定する。 指定されない場合、 telnet ポート (23) が使われる。

プロトコル:

接続がオープンされると、 telnetTELNET LINEMODE オプションを有効にしようとする。 これが失敗した場合、 telnet は 2 つの入力モード “character at a time” と “old line by line” のうちどちらかを選択する。 これはリモートシステムがどちらをサポートしているかに依存する。

LINEMODE が有効になっている場合、文字処理はリモートシステムの制御下におかれた ローカルシステムで実行される。 入力の編集や文字のエコーが無効にされた場合、 リモートシステムはその情報を中継する。 リモートシステムは生成された特殊文字も中継する。 これにより、ローカルシステムにも効果が及ぶ。

“character at a time” モードでは、 入力されたテキストの大部分は、処理のためにリモートシステムへすぐに送信される。

“old line by line” モードでは、 すべてのテキストはローカルでエコーされる。 そして、(通常は) 完全な行のみがリモートホストに送信される。 “local echo character” (初期設定では “^E”) は ローカルエコーのオン・オフを切替えるために使われる (これはパスワードをエコーせずに入力する場合によく用いられる)。

LINEMODE オプションが有効になっている場合、または localchars の切替えが TRUE の場合 (これは “old line by line“ のデフォルトである。以下を参照)、 ユーザーの quit, intr, flush 文字はローカルでトラップされ、 TELNET プロトコルシーケンスとしてリモート側に送信される。 LINEMODE が有効になっている場合、 ユーザーの suspeof も TELNET プロトコルシーケンスとして送信される。 そして、 quitBREAK ではなく TELNET ABORT として送信される。 オプションとしては、 (リモートホストが TELNET シーケンスを認識するまで) 端末へのサブシーケンス出力をフラッシュするもの (以下の toggle autoflushtoggle autosynch を参照) や、 (quitintr の場合に) それまでの端末への入力をフラッシュするものがある。

コマンド:

以下の telnet コマンドが使用可能である。 他と区別がつく範囲で、後ろの方を省略することもできる。

argument ...
TELNET AUTHENTICATE プロトコルオプションを制御する。 telnet が認証なしでコンパイルされた場合、 auth コマンドは使えない。 このコマンドに使える引き数は以下の通りである。
type
指定した認証タイプを使用不可にする。 指定可能な認証タイプの一覧を見たい場合は、 auth disable ? コマンドを使うこと。
type
指定した認証タイプを使用可能にする。 指定可能な認証タイプの一覧を見たい場合は、 auth enable ? コマンドを使うこと。
認証タイプの現在の状態をリストする。

現在のバージョンの telnet は認証をサポートしていない点に注意すること。

リモートホストへの接続がある場合は、接続を閉じ、コマンドモードに戻る。
argument ...
toggle で設定された値 (以下を参照) の全て、または一部を表示する。
argument ...
encrypt コマンドは TELNET ENCRYPT プロトコルオプションを制御する。 telnet が暗号化なしでコンパイルされた場合、 encrypt コマンドはサポートされない。

このコマンドに指定可能な引き数は以下の通りである。

type [input|output]
指定した暗号化タイプを使用不可にする。 input または output を指定しない場合、両方の暗号化が無効にされる。 指定可能な暗号化タイプの一覧を見るには、 ``encrypt disable ?'' を使うこと。
type [input|output]
指定した暗号化タイプを使用可能にする。 input または output を指定しない場合、両方の暗号化が有効にされる。 指定可能な暗号化タイプの一覧を見るには、 ``encrypt enable ?'' を使うこと。
``encrypt start input'' と同じ。
``encrypt stop input'' と同じ。
``encrypt start output'' と同じ。
``encrypt stop output'' と同じ。
[input|output]
暗号化を開始する。 input または output を指定しない場合、両方の暗号化を開始する。
暗号化モジュールの現在の状態を表示する。
[input|output]
暗号化を停止する。 input または output を指定しない場合、両方の暗号化を停止する。
type
その後の ``encrypt start'' コマンドや ``encrypt stop'' コマンドで使われる 暗号化のデフォルトタイプを設定する。

現在のバージョンの telnet は、暗号化をサポートしていない点に注意すること。

arguments...
コマンドは TELNET ENVIRON プロトコルオプションを用いて telnet リンクを通して環境変数を渡すために使われる。 シェルからエクスポートされる全ての変数が定義されるが、 デフォルトでは環境変数 DISPLAYPRINTER のみが送信するために選ばれる。 コマンドラインオプション -a または -l が使われた場合、 環境変数 USER が送信するために選ばれる。

environ コマンドに指定可能な引き数は以下の通りである。

variable value
環境変数 variable が値 value を持つと定義する。 このコマンドで定義された環境変数は、 引き渡す (``エクスポートする'') ために自動的に選択される。 値 value はシングルクォートやダブルクォートで囲ってもよい。 このようにすると、タブやスペースを値に含めることができる。
variable
既に存在する環境変数 variable の定義を削除する。
variable
指定した環境変数をリモートホストに渡されるように設定する。
variable
指定した環境変数をリモートホストに渡されないように設定する。 リモートホストはエクスポートされない (渡されない) 変数について 明示的に問い合わせることもある。
現在の環境変数の一覧を表示する。 * でマークされた環境変数はリモートホストに渡される。 リモートホストは他の環境変数について明示的に問い合わせることもある。
コマンドについてのヘルプ情報を表示する。
プロトコルオプションをリモートホストに送る。 このコマンドは close コマンドに似ている。 リモートホストが LOGOUT オプションをサポートしていない場合は、何も起こらない。 サポートしている場合、このコマンドにより接続を閉じる。 リモート側が再接続のためのユーザーセッションのサスペンドも サポートしている場合、logout コマンドはセッションを即時終了することを意味する。
type
type はセッションの状態に依存するいくつかのオプションのうちの 1 つである。 telnet は要求されたモードに入るようにリモートホストに要請する。 リモートホストがそのモードに入ることが可能であると返答すると、 そのモードが有効になる。
オプションを無効にする。 また、リモート側が LINEMODE オプションを解釈できない場合は、 “character at a time“ モードに入る。
オプションを有効にする。 また、リモート側が LINEMODE オプションを解釈できない場合は、 “old-line-by-line“ モードに入ろうとする。
(-isig)
オプションの TRAPSIG モードを有効 (無効) にしようとする。 LINEMODE オプションが有効になっている必要がある。
(-edit)
オプションの EDIT モードを有効 (無効) にしようとする。 LINEMODE オプションが有効になっている必要がある。
(-softtabs)
オプションの SOFT_TAB モードを有効 (無効) にしようとする。 LINEMODE オプションが有効になっている必要がある。
(-litecho)
オプションの LIT_ECHO モードを有効 (無効) にしようとする。 LINEMODE オプションが有効になっている必要がある。
コマンドのヘルプ情報を表示する。
host [[-l] user][- port]
指定したホストと接続をオープンする。 ポート番号が指定されない場合、 telnet は telnet デーモンと標準ポート (23) で接続しようとする。 ホストの指定はホスト名でも IP アドレスでもよい。 -l オプションは、コマンドラインでの -l オプションと同様に、 リモートシステムに渡されるユーザー名を指定するために使われる。

telnet ポート以外のポートと接続する場合、 telnet は telnet プロトコルによるネゴシエーションを試みない。 これにより telnet プロトコルをサポートしていないサービスと 失敗することなく接続することができる。 ポート番号の前にダッシュを置くことにより、 プロトコルネゴシエーションを強制的に行わせることができる。

接続が確立した後、ユーザーの .telnetrc ファイルの中でリモートホストと関連づけられている 全てのコマンドが実行される。

.telnetrc ファイルのフォーマットは次のようになっている。 # で始まる行と空行は無視される。 ファイルのそれ以外の部分には、ホスト名とそのホストに対して使われる telnet コマンドのシーケンスが含まれる。 コマンドは 1 行に 1 つで、空白でインデントされていなければならない (訳注: 行頭には空白が必要)。 空白で始まっていない行はホスト名として解釈される。 名前がファイル中で指定されているホストに接続すると、 そのホストに関連付けられたコマンドが実行される。

全ての開いているセッションを閉じて telnet を終了する。 コマンドモードで end of file 条件を入力した場合も、 これと同じ動作が行われる。
arguments
1 つ以上の telnet プロトコルシーケンスをリモートホストに送る。 以下はここで指定できるコード (引き数) である (1 つのコマンドの中で複数のコードが指定できる)。
(Abort Processes) シーケンスを送る。
(Abort Output) シーケンスを送る。 リモートシステムに対して、 リモートシステム から ユーザー端末 への 出力をフラッシュさせる。
(Are You There?) シーケンスを送る。 リモートシステムはそれに応答するかしないかを選択できる。
(Break) シーケンスを送る。 リモートシステムにとって重要な意味を持つ場合もある。
(Erase Character) シーケンスを送る。 最後に入力された文字をリモートシステムに消去させる。
(Erase Line) シーケンスを送る。 現在入力中の行をリモートシステムに消去させる。
(End Of File) シーケンスを送る。
(End of Record) シーケンスを送る。
現在の telnet エスケープ文字を送る。
(Go Ahead) シーケンスを送る。 リモートホストにとってたぶん意味がない。
リモート側が TELNET STATUS コマンドをサポートしている場合、 getstatus はサーバに現在のオプションの状態を送るように要求する。
(Interrupt Process) シーケンスを送る。 現在実行しているプロセスをリモートホストに中止させる。
(No Operation) シーケンスを送る。
(Suspend Process) シーケンスを送る。
シーケンスを送る。 このシーケンスは、それまでに打ち込まれた入力 (ただし、まだ読まれていないもの) をリモートシステムに破棄させる。 このシーケンスは TCP 緊急データとして送られる (リモートシステムが 4.2BSD の場合は動作しないかもしれない -- 動作しない場合は小文字 “r” が端末にエコーされる)。
cmd
 
cmd
 
cmd
 
cmd
cmd シーケンスを送る。 コマンド cmd は、0 から 255 までの 10 進数、 または特定の TELNET コマンドの対するシンボル名である。 コマンド cmd には、既知のシンボル名を含むヘルプ情報を表示するための help または ? を指定することもできる。
コマンドのヘルプ情報を表示する。
argument value
 
argument value
コマンドは telnet 変数のうちの 1 つを特定の値、または TRUE に設定する。 特別な値 off は変数に関連付けられた機能を無効にする。 これは unset コマンドを使った場合と同じである。 unset コマンドは指定された変数を無効、または FALSE に設定する。 変数の値は display コマンドによって調べることができる。 TRUE と FALSE の切替えでなく、値が set や unset される変数を以下に列挙する。 また、 toggle コマンドによって値が切替えられる変数は、 明示的に set や unset を使って設定してもよい。
telnet が localchars モードの場合、または LINEMODE が有効になっている場合に、ステータス文字が入力されると、 TELNET AYT シーケンスがリモートホストに送られる。 "Are You There" 文字の初期値は、端末のステータス文字である。
これは、“line by line” モード時に入力された値を (通常の処理として) ローカルでエコーするのか、 (パスワード入力などのために) エコーを抑制するのかを 切替える値である (初期値は “^E” である)。
telnetLINEMODE や “old line by line” モードで動作している場合、 行頭の文字としてこの文字を入力すると、 この文字がリモートシステムに送られる。 eof 文字の初期値としては、端末の eof 文字が使われる。
telnetlocalchars モード (以下の toggle localchars を参照) であり、 かつ “character at a time” モードで動作している場合、 この文字が入力されると、 TELNET EC シーケンス (上記の send ec を参照) がリモートシステムに送られる。 erase 文字の初期値としては、端末の erase 文字が使われる。
これは、(リモートシステムと接続された場合に) telnet コマンドラインモードに入るための telnet エスケープ文字である (初期値は “^[” である)。
telnetlocalchars モード (以下の toggle localchars を参照) の場合に flushoutput 文字が入力されると、 TELNET AO シーケンス (上記の send ao を参照) がリモートホストに送られる。 flushoutput 文字の初期値としては、端末の flush 文字が使われる。
 
telnetLINEMODE モードで動作している場合に、この 2 文字が入力されると、 行の一部 (この 2 文字の間の部分) がリモートシステムに送られる。 この 2 つのフォワード文字の初期値としては、 端末の eol と eol2 が使われる。
telnetlocalchars モード (以下の toggle localchars を参照) の場合に interrupt 文字が入力されると TELNET IP シーケンス (上記の send ip を参照) がリモートホストに送られる。 interrupt 文字の初期値としては、端末の intr 文字が使われる。
telnetlocalchars モード (以下の toggle localchars を参照) であり、 かつ “character at a time” モードで動作している場合に、 この文字が入力されると、 TELNET EL シーケンス (上記の send el を参照) がリモートシステムに送られる。 kill 文字の初期値としては、端末の kill 文字が使われる。
telnetLINEMODE または “old line by line“ モードで動作している場合、 この文字が端末の lnext 文字として使われる。 lnext 文字の初期値としては、端末の lnext 文字が使われる。
telnetlocalchars モード (以下の toggle localchars を参照) の場合に quit 文字が入力されると、 TELNET BRK シーケンス (上記の send brk を参照) がリモートホストに送られる。 quit 文字の初期値としては、端末の quit 文字が使われる。
telnetLINEMODE または “old line by line“ モードで動作している場合、 この文字が端末の reprint 文字として使われる。 reprint 文字の初期値としては、端末の reprint 文字が使われる。
これは rlogin モードのエスケープ文字である。 この文字を設定すると、 コマンドラインオプション -r と同様に rlogin モードが有効になる (件の部分も参照のこと)。
オプションが有効になっている場合、 この文字が端末の start 文字が使われる。 start 文字の初期値としては、端末の start 文字が使われる。
オプションが有効になっている場合、 この文字が端末の stop 文字として使われる。 stop 文字の初期値としては、端末の stop 文字が使われる。
telnetlocalchars モードの場合、または LINEMODE が有効になっている場合に、 suspend 文字が入力されると、 TELNET SUSP シーケンス (上記の send susp を参照) がリモートホストに送られる。 suspend 文字の初期値としては、端末の suspend 文字が使われる。
TRUE の場合、または option によるトレースが TRUE の場合、このファイルに出力が書き出される。 この値が “-” に設定された場合、トレース情報は標準出力に書き出される (これがデフォルトである)。
telnetLINEMODE または “old line by line“ モードで動作している場合、 この文字は端末の worderase 文字として使われる。 worderase 文字の初期値としては、端末の worderase 文字が使われる。
(unset) で指定可能なコマンドを表示する。
state
(Set Local Characters) コマンドは、 TELNET LINEMODE オプションが有効な場合に、特殊文字の状態を設定・変更するために使われる。 特殊文字は、 (ipquit といった) TELNET コマンドシーケンスや (erasekill といった) 行編集文字にマップされる文字である。 デフォルトでは、ローカルの特殊文字がエクスポートされる。
現在の特殊文字の設定を確認する。 リモート側に現在の全ての特殊文字の設定を要求し、 ローカル側と矛盾がある場合は、ローカル側の値をリモートの値に変更する。
特殊文字をローカルのデフォルトになっている文字に変更する。 ローカルのデフォルト文字は、 telnet が起動したときのローカル端末のデフォルト文字である。
特殊文字をリモートのデフォルトになっている文字に変更する。 リモートのデフォルト文字は、 TELNET 接続が確立したときのリモートシステムのデフォルト文字である。
コマンドのヘルプ情報を出力する。
telnet の現在の状態を表示する。 この表示には現在のモードだけではなく、 もし可能ならば、リモートホストの名前も含まれる。
arguments ...
telnet のイベントしての応答を制御するフラグを (TRUEFALSE の間で) 切替える。 これらのフラグは、 setunset コマンドを用いて、 TRUE または FALSE に明示的に設定してもよい。 1 つ以上のフラグを 1 度に切替えてもよい。 フラグの状態は display コマンドで調べることができる。 指定可能なフラグは以下の通りである。
認証コードのデバッグを有効にする。 このフラグは認証のサポートが有効である場合にのみ存在する。
localchars がともに TRUE で、 ao 文字または quit 文字が認識された場合 (さらにこれらの文字が TELNET シーケンスに変換された場合。詳細は set を参照)、 TELNET シーケンスが処理されたことが (TELNET TIMING MARK オプションによって) リモートシステムに認識されるまで、 telnet はユーザーの端末にデータを何も表示しないようにする。 端末上のユーザーが "stty noflsh" を実行していない場合、 この切替えの初期値は TRUE である。 実行していた場合は FALSE である (stty(1) を参照すること)。
がネゴシエートされているとき、デフォルトではデータストリームの 実際の暗号化 (復号化) は自動的には始まらない。 autoencrypt (autodecrypt) コマンドは、 出力 (入力) ストリームの暗号化ができるだけ早く有効になるように命令する。

このフラグは暗号化のサポートが有効である場合にのみ存在する。

リモート側が TELNET AUTHENTICATION オプションをサポートしている場合、 telnet は自動認証を行うために、そのオプションを使う。 TELNET AUTHENTICATION オプションがサポートされていない場合、 ユーザーのログイン名は TELNET ENVIRON オプションを使って渡される。 このフラグを設定するのは、コマンドライン上で open コマンドに a オプションを指定するのと同じである。
localchars がともに TRUE の場合に、 intr 文字または quit 文字 (intr 文字と quit 文字の説明は上記の set を参照すること) が入力されると、 結果として送られる telnet シーケンスの後には TELNET SYNCH シーケンスが続く。 両方の telnet シーケンスのが読み込まれて作用するまでには、 この手続きにより、 リモートホストに対してそれまでの全ての入力を捨て始めるように させるべきである 。 このトグルの初期値は FALSE である。
入力と出力の両方に対して、 TELNET BINARY オプションを有効・無効にする。
入力に対して TELNET BINARY オプションを有効・無効にする。
出力に対して TELNET BINARY オプションを有効・無効にする。
これが TRUE の場合、キャリッジリターンは <CR><LF> として送られる。 これが FALSE の場合、キャリッジリターンは <CR><NUL> として送られる。 このトグルの初期値は FALSE である。
キャリッジリターンモードを切替える。 このモードが有効になっていると、 リモートホストから受信した大部分のキャリッジリターンは、 キャリッジリターンとラインフィードに変換される。 このモードは、ユーザーが入力した文字に対しては作用せず、 リモートホストから受信した文字についてのみ作用する。 このモードは、リモートホストがキャリッジリターンしか送らず、 ラインフィードしない場合を除いて、それほど役に立たない。 このトグルの初期値は FALSE である。
ソケットレベルデバッグの有効・無効を切替える (スーパーユーザー のみ使える)。 このトグルの初期値は FALSE である。
暗号化コードに対するデバッグ情報を有効にする。 このフラグは暗号化がサポートされている場合にのみ存在する。
これが TRUE の場合、 flush, interrupt, quit, erase, kill 文字 (上記の set を参照) はローカルで認識され、(うまくいけば) 適切な TELNET コントロールシーケンス (それぞれ ao, ip, brk, ec, el; 上記の send を参照) に変換される。 “old line by line” モードでの初期値は TRUE である。 “character at a time” モードでの初期値は FALSE である。 LINEMODE オプションが有効になっている場合、 localchars の値は無視され、常に TRUE であると仮定される。 LINEMODE が有効になったことがある場合、 quitabort として送られ、 eof andeof and susp として送られる。 (上記の send を参照)。
(16 進数フォーマットによる) 全てのネットワークデータの表示を切替える。 このトグルの初期値は FALSE である。
(telnet オプションを処理する際の) 内部の telnet プロトコル処理の表示・非表示を切替える。 このトグルの初期値は FALSE である。
が有効になっている場合に、 prettydump が有効になっていると、 netdata コマンドからの出力はユーザーにとって一層読みやすい形式にフォーマットされる。 出力される文字の間に空白が入れられ、 telnet エスケープシーケンスの前には、探しやすいように '*' が置かれる。
skiprc が TRUE の場合、 telnet は .telnetrc ファイルを読まない。 このトグルの初期値は FALSE である。
(16 進数フォーマットによる) 全ての端末データの表示を切替える。 このトグルの初期値は FALSE である。
TRUE の場合、 TELNET は暗号化が有効か無効かのメッセージを毎回表示する。 このトグルの初期値は FALSE である。 このフラグは暗号化がサポートされている場合にのみ存在する。
コマンドに指定可能な引き数を表示する。
telnet をサスペンドする。 このコマンドはユーザーが csh(1) を使っている場合にのみ動作する。
[command]
ローカルシステムのサブシェルで、コマンドを 1 つ実行する。 command が省略されると、サブシェルが対話モードで起動される。
[command]
ヘルプを表示する。 引き数がない場合、 telnet はヘルプの一覧を表示する。 コマンドが指定された場合、 telnet はそのコマンドのヘルプ情報を表示する。

環境変数

telnet は少なくとも環境変数 HOME, SHELL, DISPLAY, TERM を使う。 他の環境変数は TELNET ENVIRON オプションを使ってリモート側に送られる。

ファイル

~/.telnetrc
ユーザーがカスタマイズできる telnet 起動時の値。

履歴

telnet コマンドは 4.2BSD で登場した。

注意

“old line by line” モードの場合、 エコーを手動でオフにしなければならないリモートシステムもある。

“old line by line” モードや LINEMODE では、端末の eof は、それが行頭の文字である場合にのみ認識される (さらにリモートシステムに送られる)。

バグ

ソースコードが分かりやすくない。

翻訳者謝辞

この man ページの翻訳にあたり、 FreeBSD jpman project <http://www.jp.freebsd.org/man-jp/> による翻訳を参考にさせていただいた。

August 15, 1999 Linux NetKit (0.17)