Free course

FTP Course

Learn how FTP uses control and data connections, how commands and replies work, why active and passive modes differ, and how to transfer files safely.

6 modules · 30 lessons · No signup

Prerequisites: Shell Commands

~~~

Your progress

of lessons completed.

Course completed.

What you'll learn

Read an FTP session, transfer files safely, diagnose active, passive, firewall, and TLS problems, and choose the right file-transfer protocol.

Take this course offline

Subscribe to my newsletter to get every free book and course in PDF and EPUB format.

Get the downloads

Course contents

  1. How FTP works

    Understand the client, server, control connection, data connections, sessions, and reply codes.

    1. What FTP is
    2. Control and data connections
    3. FTP session state and roles
    4. Read FTP reply codes
    5. Check your understanding: how FTP works
  2. Commands and files

    Log in, navigate directories, list entries, download, upload, rename, and delete files.

    1. Connect and log in
    2. Navigate remote directories
    3. List files and metadata
    4. Download, upload, and change files
    5. Check your understanding: commands and files
  3. Active and passive FTP

    See who opens each data connection and why NAT, IPv6, and firewalls change the result.

    1. Active FTP
    2. Passive FTP
    3. EPRT and EPSV
    4. NAT, firewalls, and failed transfers
    5. Check your understanding: active and passive FTP
  4. Transfer behavior

    Choose transfer types, inspect metadata, resume safely, and avoid exposing partial uploads.

    1. ASCII and binary transfer types
    2. The lifecycle of one transfer
    3. Inspect size, time, and resume support
    4. Upload without exposing partial files
    5. Check your understanding: transfer behavior
  5. FTP security

    Understand plaintext risks, anonymous access, FTPS, certificate checks, and why SFTP is different.

    1. Plaintext FTP risks
    2. Anonymous FTP and bounce attacks
    3. Protect FTP with TLS
    4. FTPS is not SFTP
    5. Check your understanding: FTP security
  6. Use and troubleshoot FTP

    Use modern clients, diagnose common failures, automate carefully, and choose a better alternative when appropriate.

    1. Inspect FTP with curl
    2. Configure an FTP client deliberately
    3. Troubleshoot common FTP failures
    4. When FTP still fits
    5. Check your understanding: practical FTP