インストラクター：2つの理由があるので､
先に謝っておきます｡
まず､ これは本当に長い講義だ｡
そしてもうひとつは､ おそらく2､ 3回は通読する必要があるだろうということだ｡
なぜなら､ このレッスンの情報は､ テストのかなりの割合を占めるからだ｡
これらのレッスンやビデオの中で､ これから暗記を始めるものがあるとすれば､
これはあなたのためのものになるだろう｡
では､ 注意しなければならないポートやプロトコルをひとつひとつ説明していこう｡
そして､ それぞれのポート番号とプロトコルを指定する｡
さて､ 試験では､ HTTPにはどのポートが使われるのか､ といった簡単な問題が出題されるかもしれない｡
そして､ 選択肢の中から正しいポート番号（この場合は80）を選択する必要がある｡
しかし､ このビデオからの情報に頼ることになる質問は他にもたくさんあり､
これほどきれいに､ 簡単に､ 直接的に質問されることはないだろう｡
試験で､ このレッスンで学んだ知識を実際に問う問題をたくさん見た｡
例えば､ あるユーザーがWindowsベースのオフィス・ネットワーク内の共有ドライブに接続できないと不満を漏らしている､
というような問題が出題されるかもしれません｡
あなたは､ ホストベースのファイアウォールがこのサービスをブロックしているのではないかと考えている｡
ファイアウォール内で開いていることを確認すべきポートは？
この質問に答えるには､ いくつかのことを理解する必要がある｡
まず､ Windowsベースのネットワーク内でファイル転送やファイル共有を可能にするために､
どのようなサービスが使われているのか｡
その答えがSMB（サーバー・メッセージ・ブロック・プロトコル）だ｡
さて､ それがわかったら､
次にSMBが使っているポートは何かという質問に答えなければならないが､
この場合はポート445だ｡
セキュリティにおいて最も重要なことのひとつは､ システムにどのような開口部を設けたかを確実に理解することである｡
コンピュータとネットワークに関して言えば､
これらの開口部のほとんどはポートによって作られることになる｡
さて､ ポートとは､ あなたのコンピューターやサーバーに存在する論理的な通信エンドポイントのことである｡
例えば､ ウェブサーバーを運営している場合､
80番ポートを開き､ 潜在的な訪問者からのインバウンドリクエストをリッスンしていることでしょう｡
現在､ ポートはインバウンドポートとアウトバウンドポートに分類される｡
インバウンドポートは､ コンピューターやサーバーが接続をリッスンしているときに使用される｡
先ほどの例と同じように､ ウェブサーバーはポート80を開いていた｡
これはインバウンドポートだ｡
誰かがやってきて､ それにつながるのを待っているんだ｡
一方､ アウトバウンドポートは､
コンピューターがサーバーに接続しようとするときに開かれる｡
もし私のコンピューターがあなたのウェブ・サーバーにポート80で接続しようとしたら､
私のコンピューターはポート52363のようなランダムな高い番号のポートを開き､
そのウェブ・サーバーにアウトバウンド・リクエストをすることになる｡
さて､ 現実の世界ではどうだろうか？
さて､ 私のラップトップがSSHでリモート・サーバーに接続しようとするとき､
インバウンドとアウトバウンドのポートがどのように使われるかの例を見てみよう｡
まず､ 画面上部にサーバーがあり､ パブリックIPアドレスが割り当てられていて､
ポート22でリッスンしている｡
つまり､ ポート22は新しい接続を待つインバウンドのポートであり､
この場合､ ポート22は開いている｡
画面の下には､ 接続を行いたがっている私のラップトップがある｡
現在､ 私のノートパソコンにはプライベートIPアドレスが割り当てられているが､
これは私のネットワークがルーターでNATを使用しているためで､
これによってさらなる保護が与えられている｡
つまり､ この時点では､
私のノートパソコンにはまだポートが開いていない｡
だから今､ 私のラップトップはSSH接続を確立しに行きたがっている｡
そして､ SSHサーバーのインバウンドポートであるポート22を経由して､ SSHサーバーにリクエストを送る｡
124. 63. 13.
さて､ サーバーはこのリクエストを受け取ると､ それに応答しなければならない｡
つまり､ 私のラップトップのIPと開かれたアウトバウンドポートに情報のパケットを送り返すのだ｡
この場合､ ポート51233で､ 実際にはルーターのパブリックIPアドレスになるのだが､ この例ではプライベートIPアドレスの192を使うことにする｡
168. 1. 45.
私のノートパソコンがサーバーにリクエストを出し､
サーバーがそのリクエストに答えたので､ これでセッションが確立され､ 両デバイスは必要に応じて相互に通信できるようになった｡
セッションが終了すると､ 接続は閉じられ､ 私のノートパソコンは不要になったのでアウトバウンドポートを閉じ､
サーバーはインバウンドポートを開いたままにして､ 次に使いたいユーザーからのリクエストを受け取れるようにする｡
さて､ ポートが実際の世界でどのように機能するかを示したところで､
ポートそのものについてもう少し詳しく話そう｡
インバウンドポート､ アウトバウンドポートと呼ばれるだけでなく､
ポートには番号が割り当てられる｡
この数字は0から65,535の間であるが､ この大きな範囲は実際には3つの小さなグループに分かれている｡
最初のグループはウェルノウン・ポートと呼ばれる｡
これは､ 0から1,023までのすべてのポートが対象である｡
これらは､ IANA（Internet Assigned Numbers
Authority）によって指定され､ 一般的に使用されるプロトコルとポートに割り当てられるため､
ウェルノウン・ポートと呼ばれる｡
例えば､ 安全なウェブ閲覧は誰もが知っていることだ｡
HTTPSで､ ポート443を使っている｡
Telnetも有名なものだ｡
ポート23だ｡
この2つは有名なポートであり､ その他にも何百ものポートがある｡
2つ目のグループは､ 1,024から49,151までのポートをカバーする｡
この範囲を登録ポートと呼ぶのは､ 各ベンダーが独自のプロトコルに使用するためで､
各ベンダーは使用前にIANAに登録することになっている｡
例えば､ マイクロソフトのSQLサーバーは1433番ポートを使っているが､
これも登録されているポートだ｡
リモート・デスクトップ・プロトコルは､ RDPと呼ばれるマイクロソフト独自のプロトコルである｡
ポート3389で動作する｡
最後の3番目のグループは､ ダイナミック・ポートとプライベート・ポートと呼ばれる｡
これは49,152から65,535までのポートを使用する｡
これらのポートは､ 最初にIANAに登録することなく､ いつでもどのアプリケーションでも使用することができる｡
さて､ この範囲は通常､ クライアントがアプリケーション用にランダムな高番号のポートを選ぶときに使用される｡
一時的なアウトバウンド接続が必要な場合は､
いつでもこの範囲を使用する｡
これはインスタントメッセージやチャットだけでなく､
ゲームでもよく使われる｡
このレッスンを始めるにあたって､ プロトコルとポート番号､
そしてそれが何に使われるのかを説明しよう｡
まず､ ファイル転送プロトコル（FTP）がある｡
FTPはポート20と21で動作する｡
FTPは､ コンピュータネットワーク上のクライアントとサーバー間でファイルを転送するために使用されます｡
しかし､ これは安全でない方法であり､
データは暗号化されていないクリアな状態で送信される｡
だから､ FTPを使うのはもう安全ではない｡ 特に､ 機密性の高いファイルを転送するのであれば､
インターネット上でFTPを使うのは安全ではない｡
覚えておいてほしいのは､ FTPには暗号化がないため､
ポート20と21を使ってファイルを送信すると､
ネットワーク上の誰でも､ あなたの会話を盗聴する可能性があるということだ｡
要約すると､ ファイル転送プロトコル（FTP）はポート20と21で実行され､
安全でないファイル転送を提供する｡
次に紹介するのはSecure Shell（SSH）だ｡
これはポート22で動作する｡
では､ SSHは何をするのか？
まあ､ コマンドシェルを使って他のコンピューターを遠隔操作することができる｡
リモート・ログイン機能として最もよく知られており､
暗号化ネットワーク・プロトコルである｡
つまり､ 暗号化を使用しているため､ インターネットのようなセキュリティで保護されていないネットワーク上でも安全に使用でき､
詮索される心配もない｡
例えば､ ウェブ・サーバーの設定を変更したい場合､
プエルトリコにある自宅から､ カリフォルニアにあるファイル・サーバーまで､ インターネット経由でSSHを使ってログインすることができます｡
つまり要約すると､ Secure Shell（SSH）はポート22で動作し､
テキストベースの環境を使って他のマシンを安全にリモートコントロールできる｡
次に紹介するのはSecure File Transfer
Protocol（SFTP）で､ これもファイル転送の方法のひとつだが､
今回は暗号化を使って安全に行う｡
SFTPはポート22で動作し､ SSH（Secure
Shell）で使っているのとまったく同じポートだ｡ 正直なところ､ ここでやっているのは､
FTPプロトコルをSSHでトンネリングして､
ファイル転送を安全に行う方法だ｡
要約すると､ Secure File Transfer Protocol（SFTP）はポート22で実行され､
安全なファイル転送を提供してくれる｡
次にTelnetだが､ これはSSHと同じように動作する｡
実際､ TelnetはSSHより何年も前に登場している｡
しかし､ Telnetの問題点は安全ではないということだ｡
Telnetは､ 仮想端末接続を使用した双方向のテキスト指向対話型通信を提供するために使用される｡
さて､ Telnetがコマンド・プロンプト経由のリモート・アクセスを提供するというだけで､
ずいぶんと言葉が多くなってしまった｡
問題は､ 暗号化せずにすべてをクリアな状態で設定していることだ｡
つまり､ すべてのデータを設定することになり､
ユーザー名やパスワードを送信する場合も含めて､ 誰かが私たちの行動を見ることができる｡
FTPと同様､ Telnetは安全でないと考えられており､
インターネットのような安全でないネットワーク上でTelnetを使うべきではありません｡
このようなことをすると､ データ漏洩の被害者になります｡
つまり､ 要約すると､ Telnetはポート23で実行され､
テキスト・ベースの環境を使って他のマシンを安全にリモート・コントロールできる｡
次に､ SMTP（Simple Mail Transfer Protocol）である｡
これはポート25で動作する｡
電子メッセージや電子メールを送信するためのインターネット標準である｡
1982年のRFC（Request
for Comments）821で設立された｡
そして2008年､ RFC 5321を使用する現在のバージョンが登場した｡
では､ これらのRFCを知る必要があるのだろうか？
いや｡
いや､ そんなことはない｡
1982年から2008年､
そして現在に至るまで､ 私たちがどれほど長い間SMTPを使って電子メールを送信してきたかを知ってもらうためだ｡
要約すると､ SMTPと聞けば､ ポート25で実行され､
ネットワーク上で電子メールを送信する機能を提供することを思い出してほしい｡
次に､ DNS（ドメイン・ネーム・システム）があり､
ポート53を使用する｡
さて､ DNSは､ 私たちのコンピュータやサービス､
プライベートネットワークやインターネットに接続されたその他のリソースに､
階層的な分散型命名システムを提供するものである｡
これでドメイン名がIPアドレスに､ IPアドレスがドメイン名に変換される｡
例えば､ diontraining. comなら､ 66のような長いIPアドレスよりずっと覚えやすいだろう｡
12. 54. 85.
なぜなら､ 私たち人間は数字よりも名前や言葉について考える方が得意だからだ｡
だから､ ディオントレーニングを覚えるのは簡単なんだ｡ comまたはcopt｡
とかそんな感じでしょ？
そこで､ コンピューターとインターネットを人々が使いやすくするために､
IPアドレスの代わりにドメイン名に頼ろうとするわけだが､
DNSはそれを可能にする｡
とりあえず覚えておいてほしいのは､ DNSは53番ポートで実行され､
ドメイン名をIPアドレスに､ IPアドレスをドメイン名に変換するということだ｡
次に紹介するのはDHCP（ダイナミック・ホスト・コンフィギュレーション・プロトコル）で､
ポート67と68で動作する｡
現在､ DHCPサーバーは､ IPアドレスやその他のネットワーク・コンフィギュレーション・パラメーターをネットワーク・クライアントに自動的に割り当てるために使用され､
ネットワークの管理を簡素化するのに役立っています｡
これによって､ コンピューターはIPアドレスとネットワーク・パラメーターを自動的に取得できるようになる｡
DHCPはポート67と68で動作し､
クライアントに割り当てられたIPアドレス､
サブネットマスク､ デフォルトゲートウェイ､ DNSサーバーなどのネットワークパラメータを自動的に提供することを覚えておいてほしい｡
次に､ 80番ポートで動作するHTTP（Hypertext Transfer
Protocol）がある｡
これがワールドワイド・ウェブのデータ通信の基盤である｡
HTTPは､ さまざまなタイプのデバイスを使った共同プレゼンテーションやハイパーメディア・プレゼンテーションのために設計されています｡
このビデオをご覧になっているということは､
このウェブサイトにアクセスするために､ すでにHTTPまたはそのセキュアバージョンであるHTTPSのいずれかを使用しているということです｡
HTTPは安全でないバージョンだが､
HTTPSは暗号化を使う｡
まとめると､ HTTPと聞いたら､ ポート80で動作し､
安全でないウェブブラウジングに使われるものだと覚えておいてほしい｡
次に紹介するのは､ Post Office Protocol Version
Three（POP3）です｡
POP3はポート110を使用し､ ローカル・メール・クライアントがTCPIP接続を介してリモート・サーバーからメールを取得するために使用する｡
POP3は､ 受信または着信電子メールにのみ使用されます｡
POP3もまた､ ストア・アンド・フォワード方式を採用している｡
つまり､ 誰かがあなたにメールを送ると､ そのメールはあなたのメールサーバーに送られ､
あなたが受信できるようになるまでそこで待機する｡
受信の準備ができたら､
メールクライアントがポート110を使ってPOP3でサーバーに接続し､
メールをダウンロードします｡
すると､ メールクライアントはサーバーにそのコピーを残すように指示するか､
サーバーからメールを削除するように指示する｡
いずれにせよ､ POP3がこれを処理してくれる｡
POP3はこの古い電子メール受信方法だが､
現在でも多くの人に多用されている｡
要約すると､ Post Office Protocol
Version Three､ つまりPOP3はポート110ゼロで動作し､
受信メールの受信に使われるということを覚えておいてほしい｡
次にNetBIOSだが､ これはポート137と139で動作するNetBIOS接続を介して､
名前の問い合わせ､ データの送信､ その他の機能を実行するために使用される｡
NetBIOSは､ ファイルやプリンターを共有するために､
別のコンピューター上のアプリケーションがローカルエリアネットワーク上で通信できるようにするサービスを提供する｡
Windowsネットワークでファイル共有やプリンター共有を使っている場合､
おそらくNetBIOSを使っているのでポート139が開いているはずだ｡
まとめると､ NetBIOSはポート137と139で動作し､ Windowsネットワークでファイルやプリンターを共有するために使われる｡
次に､ インターネット・メール・アプリケーション・プロトコル（IMAP）で､
ポート143で操作する｡
現在､ IMAPは､ TCPIP接続を介してメールサーバーから電子メールメッセージを取得する機能を電子メールクライアントに提供している｡
IMAPは新しいタイプの電子メール検索プロトコルで､
古いPOP3方式よりもいくつかの点を改善するように設計されている｡
基本的にIMAPは､ エンドユーザーが､ サーバー上にあるにもかかわらず､
あたかも自分のマシンにローカルに保存されているかのようにメッセージを見たり操作したりすることを可能にする｡
POP3では､ ラップトップやタブレットからログインすると､
一方では未読と表示され､ もう一方では既読と表示されることがあったからだ｡
しかし､ IMAPを使えば､
サーバーが私のすべてのデバイスでこれらすべてを同期させてくれる｡
なぜなら､ 私たちのほとんどはラップトップ､ デスクトップ､
スマートフォン､ そしてもしかしたらタブレットも持っているかもしれないからだ｡
まとめると､ IMAPはポート143で動作し､ 古いPOP3方式を改良した新しい受信メール取得方式であることを覚えておいてほしい｡
次に､ SNMP（Simple Network Management
Protocol）がある｡
これはポート161と162で動作する｡
SNMPは､ IPネットワーク上のすべての管理対象デバイスに関する情報を収集し､
整理する機能を提供します｡
これには､ ルーター､ スイッチ､ VoIP電話､ その他のデバイスなどが含まれる｡
SNMPは､ デバイスの動作を変更することによって情報を変更することができ､
任意のデバイスの稼働時間やダウンタイム､ その他の状態を監視する能力を提供することができます｡
とりあえず覚えておいてほしいのは､ SNMPはポート161と162で動作し､
SNMPはネットワーク機器に関するデータを収集し､ その状態を監視するために使われるということだ｡
次に､ LDAP（Lightweight
Directory Access Protocol）である｡
L-D-A-PまたはLDAPはポート389で動作し､ 分散ディレクトリ情報サービスにアクセスし､
維持するためのベンダーニュートラルなオープン業界標準です｡
さて､ LDAPはウィンドウズのアクティブ・ディレクトリのようなものだと考えてほしい｡
その代わり､ アクティブ・ディレクトリはLDAPのプロプライエタリ・バージョンであり､
このためLDAPとアクティブ・ディレクトリはどちらもポート389を使って通信する｡
では､ LDAPは具体的に何をするのか？
まあ､ ディレクトリサービスだからね｡
つまり､ マイクロソフト・アウトルックのような電子メール・クライアントを使っていて､
誰かの名前をアドレス帳で調べようとした場合､ 実際にはLDAPを使っていることになる｡
これに加えて､ LDAPはユーザーとそのグループに関する情報を保存することができる｡
要約すると､ LDAPはポート389で動作し､ ネットワークにディレクトリサービスを提供するために使用される｡
次に､ ハイパーテキスト・トランスファー・プロトコル・セキュア､
つまりHTTPSによる安全なウェブ閲覧がある｡
HTTPSは443番ポートで動作し､ 基本的には､ ハイパーテキスト転送プロトコル（Hypertext
Transfer Protocol）の非暗号化バージョンであるHTTPが行っていたことをすべて行うが､ 暗号化されたトンネル上で行うこともある｡
このトンネルは､ セキュア・ソケット・レイヤー（SSL）またはトランスポート・レイヤー・セキュリティー（TLS）のいずれかを使用して動作する｡
現在､ TLSは新しくより安全な方法であり､
SSLは古くより安全でない方法である｡
HTTPにTLSまたはSSLトンネルを使用することで､ クライアントとウェブサーバーの間にエンドツーエンドで暗号化されたトンネルができ､
eコマースや銀行へのログイン､
その他のウェブサイトへのアクセスなどがより安全に行えるようになります｡
要約すると､ HTTPSは443番ポートで動作し､ 安全で暗号化されたウェブ・ブラウジングとして使用されます｡
次に､ SMB（サーバー・メッセージ・ブロック・プロトコル）である｡
これはポート445で動作する｡
サーバー・メッセージ・ブロック・プロトコルは､
ファイル､ プリンター､ その他ネットワーク上のさまざまなデバイス間の通信への共有アクセスをシステムに提供する｡
NetBIOSでも多くの場合動作する｡
NetBIOSはポート139で認証を行い､
Server Message Blockはそのデータを渡すことで､
ファイルやプリンター・サービスの実際の受け渡しを処理する｡
要約すると､ SMBはポート445で動作し､ Windowsネットワーク上のWindowsファイルとプリンターの共有サービスに使われる｡
次に､ リモート・デスクトップ・プロトコル（RDP）だ｡
さて､ RDPはポート3389で動作する｡
だから､ ここで注意してほしい｡
3389は､ LDAPで取り上げた389によく似ているため､
受験生はこの2つのポート番号を試験でよく取り違えてしまいます｡
このため､ 試験作成者は､
RDP､ LDAP､ またはLDAPSに関する問題が出題されると､
必ず389と3389の両方を選択肢に入れたがるので､
この点には注意が必要です｡
リモート・デスクトップ・プロトコルは､ マイクロソフト社が独自に開発したプロトコルで､
グラフィカル・インターフェースを使用してコンピュータを遠隔操作することができる｡
RDPはSSHやTelnetと似ていて､
他のコンピュータやサーバーを遠隔操作することができる｡
マウスとキーボードを使って､
あたかもそのマシンの前に座っているかのように操作できる｡
SSHやTelnetがあったころは､ コマンドラインやシェルを使ったテキストベースのコマンドでしかコンピュータを操作できなかったが､
RDPでは完全なグラフィカル・ユーザー・インターフェイスが使える｡
ご覧のように､ Android携帯がウェブ・ブラウザ経由でRDPを使い､
Windowsマシンをリモート・コントロールしている｡
これにより､ RDPソフトウェアを使用しているユーザーは､
ポート3389を使用している限り､
インターネット経由であろうとネットワーク内であろうと､ どこからでも自分のコンピューターにアクセスできるようになります｡
まとめると､ RDPはポート3389で動作し､
別のクライアントやサーバーをグラフィカルにリモートコントロールできる｡
さて､ たくさんの情報だったね｡
さっきも言ったように､ これは本当に重要なビデオで､
マスターしなければならない濃い内容のものがたくさんある｡
プロトコルとポート､ そしてこのレッスンで取り上げたそれぞれの用途を覚えておく必要があります｡
約束しよう｡ このビデオを一度見ただけでは､
そのすべてを頭に叩き込み､
暗記するには十分ではない｡ だから､
これらのプロトコルとポートを確実に暗記するために､
もう一度このビデオを見直してほしい｡
また､ フラッシュカードを作成し､ これらのポートやプロトコルに関するクイズに挑戦することをお勧めする｡
片面にはポート番号を書き､ もう片面にはプロトコルを書いてほしい｡
そうすれば､ 自分自身を試しながら始めることができる｡
残念ながら､ これらの多くを暗記する簡単な方法はない｡
ただ､ 時間をかけて記憶に定着させ､
テスト当日までに忘れないように､
頻繁にクイズをする必要がある｡
ポート､ プロトコル､ そしてそれが何に使われるかを覚えていれば､
試験当日にはこれらの問題で良い結果を出せるだろう｡