Web教材一覧> ネットワーク> アプリケーションプロトコル
FTP,TELNET、SSH、NTP、SNTP
アプリケーション層には多くのプロトコルがありますが、その主なものを掲げます。
ポート番号 プロトコル サービス内容
(他ページ」で扱うプロトコル)
53 DNS 名前解決
80 HTTP Webページ閲覧
443 HTTPS 同上(セキュリティ)
25 SMTP 電子メール(送信・転送)
110 POP3 同上(受信)
143 IMAP 同上(IMAP)
(ここで扱うプロトコル)
20 FTP ファイルの転送(データ)
21 FTPFTP 同上(制御)
23 TELNET 遠隔ログイン
22 SSH セキュアログイン
123 NTP 時刻同期
123 SNTP 時刻同期(簡略版)
ここで扱うプロトコルの中には、FTPのように、WebブラウザからURLで呼び出すものもありますが、一般的には、WindowsなどのOSからコマンドラインで対話的に行う形式になっています。しかし、それを利用者に求めるのは困難なので、これらの利用をサービスしているWebページで指定すると内部でコマンドを発行して実行できるようになっています。
FTPはファイル転送のプロトコルです。プログラムのダウンロードやWebページ作成でのアップロードに利用されます。FTPの特徴は,転送するファイルに制約がないことで,テキストデータもバイナリデータも元のまま転送できます。
FTPは、WebブラウザからURLで指定することもできます。
ftp://library/prog.exe
以下はコマンドラインでの指定です。ここまでにサービス提供サーバとの接続はできているものとします。
制御用FTPでは,次のようなコマンドがあります。
USER ユーザIDの入力
PASS パスワードの入力
RETR FTPサーバからデータをダウンロードする
STOR FTPサーバにデータをアップロードする
DELE FTPサーバのファイルの削除
LIST ファイル一覧表の表示
QUET 正常終了
ABOR 処理の異常打切り
例えば,次のようなやりとりになります(パッシブモードでのダウンロード)。
← 220 ftp FTP server ready. →USER kogure ← 331 Password required for username. →PASS xxxxxx ← 230 User username logged in. →PORT 10,0,0,1,120,55 ← 200 PORT command successful. →RETR prog.exe ← 150 ・・・ 'prog.exe' (1563 bytes). ここでダウンロードが行われる ← 226 Transfer complete. →QUIT ← 221 Goodbye.
データ用FTPは,RETRコマンドやSTORコマンドにより,実際にファイルを転送します。このように二つにわけている理由は,これらを一つにすると,ファイル転送中にコマンドを送信できないとか,転送を中止することができないからです。
上記のように,FTPではパスワードを要求しますが,不特定多数にフリーソフトなどのファイルのダウンロードをサービスする目的のFTPサーバもあります。それを匿名(anonymous)FTPサーバといいます。ユーザIDで「anonymous」や「guest」とすれば,パスワードは何でもよく(一般には電子メールアドレス)で使えるようになっています。
逆に,セキュリティを重視して,SSHを用いたSFTP(Secure FTP)やSCP(Secure CoPy)などを備えたFTPサーバもあります。
データ転送用のデータコネクションを確立する方向の違いです。
・アクティブモード:サーバが確立する。
運用上はデータ転送ポートが20だけなので運用しやすい。しかし、不正アクセス」のリスクがある。
・パッシングモード:クライアントが確立する。
通常はこのモードが多い。
┌──────┐FTPをしたい (21)┌─────┐ ┌──────┐FTPをしたい (21)┌─────┐ │ ├─────────→┤ │ │ ├─────────→┤ │ │クライアント│ │ サーバ │ │クライアント│OK: (XX)を使ってくれ│ サーバ │ │ │ │ │ │ ├←─────────┤ │ └──┰───┘OK: (20)で送受信する└──┰──┘ └──┰───┘OK: (XX)で送受信する└──┰──┘ ┗←━━━━━━━━━━━━━━━━┛ ┗━━━━━━━━━━━━━━━━→┛ (任意) (20) (任意) (xx) アクティブモード パッシングモード ( )はポート番号
SSH方式を用いて、ファイルを暗号化して転送します(ポート22)。
ネットワークを通して他のコンピュータにログオンすることをリモートログインといいます。
社員がオフィス外から社内のサーバや自分のパソコンを、あたかも自分がそこにいるような操作ができるような環境にします。
TELNETは,リモートログインを行うプロトコルです。コマンド・モードでホストへのパイプを作り、セッション・モードでホストを遠隔操作します。
通常はポート番号23で接続しますが、80を指定すればWebページ閲覧、25を指定すれば電子メール送信などを行うことができます。
便利な機能ですが、通信が平文で伝送されるので、盗聴されてなりましされると、サーバが乗っ取られたようなことになります。そのため、TELNETのポートを塞いでアクセスさせないのが通常です。
TELNETを暗号化通信にしたものです。SSHを実現するソフトウェアにOpun SSHがあります。
本文だけでなく認証に関わるユーザIDやパスワードなどの情報もすべて暗号化してセキュリティを強化しています。暗号方式では、RSAとDSAが使えます。
パソコンなどの内部時計を、インターネットを介して標準時計に同期させるプロトコルです。
NTPを管理するサーバは階層になっており、最上位は標準電波や原子時計などから時刻を得ており、アクセス分散のために、下位階層のサーバにコピーしています。通信遅延を校正する機能ももっています。
NTPは、高速な伝送速度が求められ、データ量が少なくアクセスが多い特徴から、TCPではなくUDP(123番ポート)を使用します。
最近は電子取引が普及し、そのタイプスタンプが重要になりました。そのため、NTP利用頻度が急激に増大しています。
NTPの簡易版プロトコルです。階層的に構築されたネットワークを使用するNTPの機能を簡略化し、時刻を同期する機能のみに特化したプロトコルです。NTPサーバの1つをSNTPサーバとし、そこから時刻情報を得ます。階層的になっていないので、管理が簡単になります。
オフィスでは、数台のパソコンで1台のプリンタを共有するのが通常ですし、場合によっては、インターネットにより遠隔地のプリンタに出力することもあります。
TCP/IPによりプリンタを操作する方法(プロトコル)を掲げます。
本ページURL=http://kogures.com/hitoshi/webtext/nw-application/index.html|最終更新日=2021年1月4日
著者(木暮 仁)自己紹介|著者メールアドレス|この教材について(著作権等)
スタートページへ|Web教材一覧へ