Skip to content

ShingShen/fileriver

Repository files navigation

📦 fileriver

This project is a unified file transfer server. It currently supports:

  • ✅ HTTP file upload and download
  • ✅ FTP file transfer with authentication
  • ✅ TFTP file transfer

🚀 Features

✅ HTTP Upload

Endpoint:

POST http://<HTTP SERVER IP>:5001/

Usage: send a multipart/form-data request with the key file.
Example tools: curl, Postman, Python requests.


✅ HTTP Download

Endpoint:

GET http://<HTTP SERVER IP>:5001/<filename>

It will return the requested file from the http_server_files directory.


✅ FTP Server

  • Host: Network Adaptor IP
  • Port: 2121
  • Username: admin
  • Password: admin

Supported by any FTP client (e.g. FileZilla, command-line tools).


✅ TFTP Server

  • Host: Network Adaptor IP
  • Port: 6969

Supported by any TFTP client (e.g. Tftpd64, command-line tools).


⚙️ Installation & Setup

1. Create Python Virtual Environment

On Linux / macOS:

python3 -m venv <folder path>
source <folder path>/bin/activate

2. Install Dependencies

If using requirements.txt:

pip install -r requirements.txt

3. Run the Server

python main.py --ip <Network Adaptor IP>

👨‍💻 Developer Notes

This tool is ideal for quick testing, demonstrations, or internal use cases where simple file transfer is required across different protocols. It provides a foundation for building a more advanced, multi-protocol file management platform.

About

It is a unified file transfer server for network communication QA testing.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages