TELNET/SSH はインターネット上でサーバ(UNIXサーバ)を利用するための通信手段のひとつです。
サーバが TELNET/SSH サービスを提供していれば、手元のパソコンでTELNET/SSH アプリケーションを起動してログインし、あたかもそのサーバと直接接続されている端末機であるかのようにサーバを利用できます。
スポンサードリンク
TELNETはインターネット上でサーバ(UNIXサーバ)を利用するための通信手段のひとつです。
サーバがTELNETサービスを提供していれば、手元のパソコンでTELNETアプリケーションを起動してログインし、あたかもそのサーバと直接接続されている端末機であるかのようにサーバを利用できます。
TELNETプロトコルは、TCP/IP上のプロトコルで、通常23番ポートを使ってアクセスします。
SSH(Secure SHell) は、TCP/IPネットワーク上の通信を暗号化することによりセキュリティを向上させるためのプロトコル、およびそれに準拠したサーバ用およびクライアント用プログラムのパッケージの総称です。 (以下では TELNET の代替機能のみに限定して説明します。)
接続時に公開鍵暗号方式を利用し、生のパスワードが認証中に流れないようになっています。
一般の通信 (TELNET など) は暗号化されておらず、データがそのまま流れているので、経路上を流れているパスワードを簡単に盗聴される恐れがあります。しかしながら、 SSH を用いることで、 一般の通信 よりも格段にセキュリティが高い通信が可能となります。
SSH プロトコルは、TCP/IP上のプロトコルで、通常22番ポートを使ってアクセスします。
telnet コマンドは次のような書式で利用します。
% telnet [ホスト名] <RET>
リモートホスト「host.example.com」 にユーザ「who」がログインする実行例を示します。
$ telnet host.example.com Trying 123.456.0.0... Connected to host.example.com. Escape character is '^]'. login: who Password: ******** host$ _
ポート番号を指定するとそのポートに接続できます。試しに http プロトコルの get コマンド 「GET /index.html」 を送ってみましょう。以下はその例です。
$ telnet host.example.com Trying 123.456.0.0... Connected to host.example.com. Escape character is '^]'. GET /index.html <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <HTML><HEAD> <TITLE>302 Found</TITLE> </HEAD><BODY> <H1>Found</H1> The document has moved <A HREF="http://host.example.com/">here</A>.<P> <HR> <ADDRESS>Apache/1.3.26 Server at host.example.com Port 80</ADDRESS> </BODY></HTML> Connection closed by foreign host.
SSHが組み込まれていない場合は、OpenSSHをインストールする必要があります。また、OpenSSH は OpenSSL と一緒に用いるため、まずOpenSSL をインストールします。
% ./config <RET> % make <RET> % make test <RET> % make install <RET>
次に OpenSSH をインストールします。
% ./config <RET> % make <RET> % make install <RET>
ssh コマンドは次のような書式で利用します。
% ssh -l [ユーザ名] [ホスト名] <RET>
リモートホスト「host.example.com」にユーザ「who」がログインする実行例を示します。
% ssh -l who host.example.com Host key not found from the list of known hosts. Are you sure you want to continue connecting (yes/no)? yes Host 'host.example.com' added to the list of known hosts. who@host.example.com's password: ******** Last login: Mon Oct 19 23:33:40 2003 from host1.example.com Copyright (c) 2001, 2002, 2003 The Regents of the University of California. All rights reserved. host% _
SSH を利用して接続するのが初めてなら、3行目のように host の ホスト公開鍵 を known hosts ファイルに追加するかどうかの確認が行われます。ここで 「yes」 を選択すると、~/.ssh/known_hosts にホスト公開鍵が追加されます。
リモートホストごとにユーザ名が異なる場合、毎回「-l ユーザ名」を設定するのは面倒です。
alias 設定を行ってもよいですが、次の設定が必要な場合もあります。
$ emacs ~/.ssh/config
ファイルには次のように記述します。
Host ホスト名 User ユーザ名 Host
スポンサードリンク
スポンサードリンク