ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
本稿は FTP (File Transfer Protocol) に関する記事です。クライアントとサーバ間でファイルを転送するためのプロトコルで、1970 年代に策定されて以来、長らくファイル転送の定番として使われてきました。
ただし、FTP は通信内容を暗号化しないため、現在は SFTP (SSH File Transfer Protocol) や FTPS (FTP over TLS) への移行が推奨されています。
FTPの基本
| 項目 | 内容 |
|---|---|
| 正式名 | File Transfer Protocol |
| RFC | RFC 959 (1985年) |
| プロトコル | TCP |
| 標準ポート | 21 (制御)、20 (アクティブモードのデータ) |
| 動作モデル | クライアント/サーバー |
| 認証 | ユーザ名/パスワード (平文)、Anonymous |
| セッション | 制御コネクション + データコネクション (別TCPセッション) |
アクティブモードとパッシブモードの違い
| モード | 動作 | 向き |
|---|---|---|
| アクティブモード | クライアントが待ち受け、サーバ→クライアントへデータ接続 | クライアント側にグローバルIP・受信可能ポートが必要。NAT 配下では失敗しやすい |
| パッシブモード (PASV) | サーバが待ち受け、クライアント→サーバへデータ接続 | クライアントが NAT 配下でも動作。現在の主流 |
主なコマンド (FTPプロトコル)
| コマンド | 用途 |
|---|---|
USER / PASS | ユーザ・パスワード認証 |
PWD | カレントディレクトリ表示 |
CWD | ディレクトリ変更 |
LIST / NLST | ファイル一覧 |
RETR | ファイルダウンロード |
STOR | ファイルアップロード |
DELE | ファイル削除 |
MKD / RMD | ディレクトリ作成・削除 |
PASV / EPSV | パッシブモードへ切替 (IPv4/IPv6) |
TYPE A / TYPE I | ASCIIモード / Binaryモード |
QUIT | 切断 |
FTP / FTPS / SFTP の違い
| プロトコル | 暗号化 | ポート | 位置づけ |
|---|---|---|---|
| FTP | なし (平文) | 21 / 20 | レガシー。本番運用での新規利用は非推奨 |
| FTPS (FTP over TLS) | TLS | 21 (Explicit) / 990 (Implicit) | FTPに TLS を被せたもの。CA証明書が必要 |
| SFTP | SSH | 22 | 名前は似ているが FTPとは別物。SSH 上のファイル転送 |
| HTTPSダウンロード | TLS | 443 | Web経由配信。CDN との相性が良い |
主なFTPクライアント
| ソフトウェア | 環境 | 備考 |
|---|---|---|
| FileZilla | Windows / Mac / Linux | OSS。FTP/FTPS/SFTP 対応 |
| WinSCP | Windows | FTP/FTPS/SFTP/SCP 対応 |
| Cyberduck | Mac / Windows | 多数プロトコル対応 |
OS標準 ftp コマンド | Linux / Windows | 制限多。学習・スクリプト向け |
curl / wget | Linux / Windows | FTP URL 直指定で取得可能 |
主なFTPサーバ
- vsftpd — Linux で広く使われる軽量FTPサーバ。FTPS 対応
- ProFTPD — 機能豊富、設定が Apache 風
- Pure-FTPd — シンプルで管理しやすい
- IIS FTP — Windows サーバ標準
セキュリティ上の注意
- 平文 FTP は盗聴可能。ID・パスワード・ファイル内容がそのまま流れる
- 外部公開する場合はFTPS または SFTP を必須化する
- Anonymous FTP は限定された公開配布用途以外で使わない
- パッシブモードのデータポート範囲をファイアウォールで穴あけする際は、可能な限り狭く設定
- クライアント/サーバ共に古い実装はBuffer Overflow 等の既知脆弱性がある
関連
- 親カテゴリ: アプリケーション層(第4層)
- 類似プロトコル: HTTP / SMTP / POP3
- SSH/SFTP: SSH
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページ
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- Laravel キャッシュクリア完全ガイド(cache:clear / config:clear / 2026-05-18 07:42:07
- プロジェクトの作成と削除 2026-05-18 07:42:07
- インストール直後にNetbeansが反応しない 2026-05-18 07:42:07
- 動画やチャンネルの検索 2026-05-18 07:42:07
- APIキー取得方法 2026-05-18 07:42:07
- チャンネル情報の取得 2026-05-18 07:42:07
- API 入門 — Web API(REST / GraphQL / gRPC / 2026-05-18 07:42:07
- インストール(eclipseプラグイン) 2026-05-18 07:42:07
- Laravel「Dotenv values containing spaces must be surrounded 2026-05-18 07:42:07
- エラー一覧 2026-05-18 07:42:07
- curl: (51) SSL: certificate subject name '~' does not match 2026-05-18 07:42:07
- インストール方法(Windows版) 2026-05-18 07:42:07
- JSONから配列に変換 2026-05-18 07:42:07
- 処理を一定時間待つ 2026-05-18 07:42:07
- A non well formed numeric value encountered 2026-05-18 07:42:07
コメントを削除してもよろしいでしょうか?