Skip to content

Latest commit

 

History

History
61 lines (42 loc) · 2.38 KB

README.MD

File metadata and controls

61 lines (42 loc) · 2.38 KB

QuickFtpServer

A lightweight, easy-to-configure FTP server using Docker.

Platform Language License Last

QuickFtpServer simplifies the process of setting up file servers, allowing access from vintage systems like Windows 3.1, DOS, or any retro system equipped with an FTP client. By utilizing a Docker container, it facilitates effortless server configuration and administration, eliminating complexities. Ideal for transferring files between modern and retro platforms, it can also be employed for conducting file transfer tests or providing temporary file storage.

Technologies Used

  • Docker: For container creation, management, and deployment.
  • Alpine Linux: As the base operating system to minimize image size and improve security.
  • vsftpd: Lightweight and secure FTP server used to provide FTP service.

Installation and Testing

To install and test any of the examples included in the project, follow these steps:

  1. Clone the repository:

    git clone https://github.com/martin-rizzo/QuickFtpServer.git
    cd QuickFtpServer
  2. Run the desired example using the provided script docker-cmd.sh:

    ./docker-cmd.sh run 1

    (other examples can be executed by changing '1' to the respective example number)

Project Checklist

  • Configuration of available resources.
  • Virtual users with customizable usernames, passwords, and resource access.
  • Anonymous user with configurable resource access.
  • Logging of messages generated by QuickFtpServer and vsftpd.
  • Force read-only permission for anon root directory (FIX_WRITABLE_ROOT)
  • Support for Base64 encoded passwords.
  • Three or more examples with their corresponding documentation.
  • Selection of PASV or PORT mode for data transfer.
  • Easy configuration of write access to resources (+W)

Lincense

Copyright (c) 2024 Martin Rizzo
This project is licensed under the MIT license.
See the "LICENSE" file for details.