Webとファイル転送のプロトコル
HTTP、HTTPS、FTPと、それぞれが使うポートを理解します。
「Webとファイル転送のプロトコル」はCoddyKit上の無料Network+ Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはNetwork+ Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Network+ Academyコースには全4レッスンが含まれています。
ポート上に構築されるプロトコル
Webとファイル転送は、ウェルノウンポートを使ってTCP上で動作するアプリケーション層プロトコルに依存しています。これらのプロトコルとポートを学ぶことは、試験対策として不可欠です。
このレッスンでは、HTTP、HTTPS、およびファイル転送の系統であるFTPと、安全な代替プロトコルを扱います。
ポート80のHTTP
HTTP(Hypertext Transfer Protocol)はWebの言語であり、ブラウザーとサーバーの間でWebページを転送します。TCPポート80を使用します。
HTTPはデータを平文で送信するため、通信を傍受した人に内容を読まれる可能性があります。この弱点から、安全なバージョンであるHTTPSが生まれました。
ポート443のHTTPS
HTTPS(HTTP Secure)は、TLS(Transport Layer Security)を使った暗号化で保護されたHTTPです。TCPポート443で動作します。
HTTPSは転送中のデータを保護するため、ログイン情報や支払い情報を非公開にできます。現在のWebサイトではデフォルトでHTTPSが使用され、ブラウザーは平文のHTTPを使用するサイトに警告を表示します。
HTTP -> TCP 80
HTTPS -> TCP 443TLSが追加するもの
TLSは、証明書による暗号化、完全性、サーバー認証を提供します。以前はSSL(Secure Sockets Layer)と呼ばれていましたが、現在は非推奨です。ただし、今でも大まかな意味でSSLと呼ばれることがあります。
証明書はサーバーの身元を証明し、暗号化は内容を隠します。これらが組み合わさることで、HTTPSは機密性の高い取引にも信頼して使えるものになります。
ポート20と21のFTP
FTP(File Transfer Protocol)はホスト間でファイルを転送します。制御コマンドにはTCPポート21、データ転送にはポート20を使用します。
FTPは古く、認証情報とデータを平文で送信するため、信頼できないネットワークでは安全ではありません。現在も広く使われていますが、安全な選択肢への置き換えが進んでいます。
ファイル転送を安全にする:SFTP
SFTP(SSH File Transfer Protocol)はTCPポート22のSSH上で動作し、コマンドとデータの両方を暗号化します。FTPに代わる安全なプロトコルとして広く使われています。
名前は似ていますが、SFTPはセキュリティ機能を追加しただけのFTPではありません。SSHチャネルを保護に利用する、別のプロトコルです。
もう1つの安全な選択肢:FTPS
FTPSはTLSで保護されたFTPで、SFTPとは異なります。SSHを通すのではなく、従来のFTPプロトコルに暗号化を追加します。
SFTPとFTPSはどちらもファイル転送を安全にしますが、仕組みが異なり、使用するポートも異なります。試験では、この2つを区別できることが求められます。
シンプルな転送:TFTP
TFTP(Trivial File Transfer Protocol)は、UDPポート69を使用する簡略化された転送プロトコルです。認証機能はなく、機能も最小限です。
TFTPは、セキュリティや信頼性よりも簡便さが重視されるローカルネットワークで、デバイスのファームウェアやブートイメージの読み込みなどに使われます。
HTTPSがHTTPに取って代わった理由
平文のHTTPでは転送中のすべての情報が露出するため、WebはHTTPSへと大きく移行しました。検索エンジンもHTTPSを優先し、ブラウザーはHTTPのページに「安全ではありません」と表示します。
技術者として、証明書を設定し、サービスが443を使用するように構成します。通信が暗号化されているかどうかを見分けることは、セキュリティを評価するうえで重要です。
ポート早見表
試験に向けて、次を暗記してください。
- HTTP:TCP 80
- HTTPS:TCP 443
- FTP:TCP 20/21
- SFTP:TCP 22(SSH経由)
- TFTP:UDP 69
TFTPだけがUDPを使用し、それ以外はTCPを使用することに注目してください。
Webとファイルのまとめへの準備
これで、Webプロトコル(HTTP、HTTPS)とファイル転送の系統(FTP、SFTP、FTPS、TFTP)について、それぞれのポートとセキュリティ特性を理解できました。
最後のレッスンでは、リモートアクセスとメールのプロトコルを扱い、技術者が把握すべき日常的なサービスの全体像を完成させます。
クイックチェック
プロトコルとポートを対応させてください。
まとめ
Webとファイル転送のプロトコルを学びました。
- HTTP=TCP 80(平文)、HTTPS=TCP 443(TLSで暗号化)
- FTP=TCP 20/21、安全ではない平文通信
- SFTP=SSH上のTCP 22、FTPS=TLS上のFTP
- TFTP=UDP 69、シンプルで認証なし
- TLSは、証明書によって暗号化、完全性、サーバーの身元確認を提供します。
よくある質問
「Webとファイル転送のプロトコル」レッスンは無料ですか?
はい。「Webとファイル転送のプロトコル」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Network+ Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Network+ Academyコースには全4レッスンが含まれています。
「Webとファイル転送のプロトコル」で何を学びますか?
HTTP、HTTPS、FTPと、それぞれが使うポートを理解します。 ブラウザで直接実行するハンズオンコードでNetwork+ Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Network+ Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのNetwork+ Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。
「Webとファイル転送のプロトコル」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このNetwork+ Academyレッスンでコードを書いて実行できますか?
はい。すべてのNetwork+ Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- TCPとUDPをひと目で比較する
- ポート番号の役割
- Webとファイル転送のプロトコル
- リモートアクセスとメールのプロトコル