Windows TIPS
[Network]
  Windows TIPS TOPへ
Windows TIPS全リストへ
内容別分類一覧へ

UNIXからTelnetサービスに接続できない

デジタルアドバンテージ
2002/03/29
対象OS
Windows 2000 Professional
Windows 2000 Server
Windows 2000 Advanced Server
Telnetサービスを使うと、コンピュータのリソースをリモートから使うことができる。TelnetではCUIのみとなるが、管理的な作業ならばこれでも十分に役に立つ。
ただしWindows 2000のTelnetサービスのデフォルト認証方式はNTLM認証という特殊な方式なので、UNIX上のTelnetクライアントなどから接続するときは、これを通常のLogin認証に変更しないと接続できない。


解説

 「Telnet」を使えば、リモートのコンピュータのリソースを仮想的な端末(「仮想端末」)を介して利用できるようになる。CUIのみではあるが、管理的な作業なら十分役に立つ。

 Windows 2000/Windows XP Professionalには、標準でこのTelnetのサーバ機能が提供されている(Windows XP Home Editionにはサーバ機能はない)。だがデフォルトではTelnetサーバ用のサービスが開始されていないので、利用にあたってはあらかじめTelnetサービスを開始させておく必要がある。この詳細については別稿の「Windows TIPS:Telnetサービスを起動する」を参照されたい。

UNIXの標準的な認証方式とは異なるWindows 2000のデフォルト認証方式

 ただしWindows 2000のTelnetサービスでは、UNIXのTelnetなどと違って、NTLM認証(Windows NT LAN Manager認証)という認証方法がデフォルトになっている。そのためUNIX上のTelnetクライアントなどから接続しようとしても、拒否されてしまうことがある。もともとのTelnetプロトコルではユーザー名やパスワードを暗号化せずにクリアテキスト(平文)で送信するLogin認証方式になっているが、NTLM認証では、ユーザー名やパスワードは暗号化して送信される(しかもこれらはWindowsにログオンしたときの情報が自動的に送信されるので、Telnetサーバに接続するときでも、ユーザー名やパスワードを再入力する必要はない)。だがこのNTLM認証はWindows 2000における拡張機能であり、一般的なTelnetクライアントではサポートされていない。従ってUNIX上のTelnetクライアントなどからWindows 2000のTelnetサービスへ接続したい場合は、この機能を無効にする必要がある。このためには、tlntadmnツールを使って、次のように認証方法を変更する。

C:\>tlntadmn……管理ツールを起動する


Microsoft (R) Windows 2000 (TM) (Build 2195)
Telnet Server Admin (Build 5.00.99201.1)

次のオプションから 1 つを選択してください:


0) このアプリケーションを終了します
1) 現在のユーザーの一覧を表示します
2) ユーザーのセッションを終了します ...
3) レジストリの設定を表示/変更します ...……これを選択する
4) サービスを開始します
5) サービスを停止します

[0 - 5] のいずれかの番号を入力してオプションを選択してください: 3 …3を選択


次のオプションから 1 つを選択してください:

0) このメニューを終了します
1) AllowTrustedDomain
2) AltKeyMapping
3) DefaultDomain
4) DefaultShell
5) LoginScript
6) MaxFailedLogins
7) NTLM
8) TelnetPort
[0 - 8] のいずれかの番号を入力してオプションを選択してください: 7…7を選択
NTLM の現在の値 = 2
この値を変更しますか? [y/n]y…yを入力する
NTLM [ 現在の値 = 2; 使用できる値は 0、1、2 のいずれかです ] :0…0は通常のLogin認証、1は併用、2はNTLM認証
NTLM を 0 に設定しますか? [y/n]y…yを入力する

Telnet サービスを再起動すると新しい設定が適用されます…サービスを再起動すること

 一方、Windows XP ProfessionalのTelnetサービスでは、Windows 2000のTelnetサービスとは違って、デフォルトではNTLM認証(Windows NT LAN Manager認証)と、クリアテキスト(平文)によるLogin認証の両方が有効になっている(最初にNTLM認証を行い、失敗すればLogin認証を行う)。従ってWindows XPのTelnetサーバでは、特に設定を行わなくても、UNIXなどのTelnetクライアントからも接続することが可能である。しかしNTLM認証はWindows 2000/Windows XPにおける拡張機能であり、一般的なTelnetクライアントではサポートされていないし、(可能ならば)自動的にログオンしてしまうので、コンソールを空けたすきにドメイン内のコンピュータへ自由にTelnet接続されてしまう危険性もある。必要なら、tlntadmnコマンドで認証方法を変更してNTLM認証を禁止することもできる。

 Windows XPのTelnetサービスで、NTLMやLogin認証を有効にしたり、無効にしたりするには次のようにする。“NTLM”(NTLM認証)や“passwd”(Login認証)の直前に“+”を付けると有効に、“-”を付けると無効になる。両方とも無効にすることはできない。End of Article

C:\>tlntadmn config sec = -NTLM +passwd……NTLM認証を無効に、Login認証を有効にする例
 
関連記事
  Windows TIPS:Telnetサービスを起動する
     
「Windows TIPS」


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間