A laptop, desktop monitor, and mini computer illustrate secure file sharing across devices with cloud-style network graphics.
When you simply need to move a 10 GB project folder, a batch of ISOs, or a custom game modpack from one machine to another on your home network, full-featured cloud platforms like Nextcloud can feel like bringing an aircraft carrier to a backyard pool party. That exact friction is why lightweight, self-hosted file servers have found a dedicated following among PC enthusiasts and homelab tinkerers.

In a hands-on write-up for How-To Geek, writer Patrick Campanale highlighted Copyparty, a free, open-source portable file server that runs across Windows, macOS, and Linux, as well as low-power single-board computers like the Raspberry Pi 3B. While the enthusiasm for a near-instant file server is well earned, Windows users and home network administrators looking to adopt Copyparty should examine its official GitHub documentation closely—both to take advantage of native Windows features that are easy to miss and to avoid the glaring security pitfalls of a "zero-configuration" launch.

A laptop, desktop monitor, and mini computer illustrate secure file sharing across devices with cloud-style network graphics. What Copyparty Actually Does​

At its core, Copyparty turns almost any directory on your PC or server into an immediate, browser-accessible file hub with support for resumable uploads and downloads. Beyond its web interface, the project's official GitHub documentation notes that it can index files, parse media tags, generate thumbnails, and expose shares over standard protocols such as WebDAV and FTP.

In his How-To Geek piece, Campanale noted that he used the software to distribute custom Minecraft server modpacks, testing it across a high-end Docker server, an M1 Max MacBook Pro, and an older Raspberry Pi 3B. Because Copyparty does not require a heavy database backend just to get started, it spins up in seconds and works across any modern desktop browser.

Section Summary:

  • Cross-Platform Utility: Runs on Windows, Linux, and macOS, supporting web browsers alongside protocols like FTP and WebDAV.
  • Practical Use Cases: Ideal for quick LAN transfers, collaborative coding folders, or distributing large archives like game modpacks without setting up a heavyweight cloud suite.

Running Copyparty on Windows: Portable EXE vs. Python Script​

One of the most appealing claims in How-To Geek's coverage is that Copyparty can run without installing dependencies—so long as Python is present on the host machine. While that is true for the Python script route, Windows users actually have an even simpler option.

According to Copyparty's official Windows documentation on GitHub, the project distributes two primary ways to run the software natively on a PC:

  1. copyparty.exe: A standalone, portable Windows executable that includes extra features out of the box and does not require a separate Python installation.
  2. copyparty-sfx.py: A smaller, self-extracting Python script that requires the latest Python 3 release installed on the system.

If you want Copyparty to generate video thumbnails, transcode audio, or make music metadata searchable, the Windows documentation recommends downloading FFmpeg and placing ffmpeg.exe and ffprobe.exe into your system PATH (such as C:\Windows\System32\).

Setting Up a Windows Configuration File and Service​

Wait—what happens if you just double-click the executable or run the script without arguments? Be careful. By default, running Copyparty with zero configuration shares the current working directory on port 3923 with read-write access for everyone. On an untrusted network, that is an open invitation for anyone to browse or overwrite your files.

Instead of relying on unauthenticated defaults, Windows users can create a plain-text configuration file (for example, C:\Users\you\Documents\party.conf) and launch the server in a console to test it using:

copyparty.exe -c party.conf

The official Windows example configuration shows how granular you can get in just a few lines:

Code:
[global]
  lo: ~/logs/cpp-%Y-%m%d.xz  # write compressed logs
  e2dsa, e2ts, z             # enable file indexer, media indexer, and zeroconf LAN discovery
  p: 80, 443                 # listen on ports 80 and 443 instead of default 3923

[accounts]
  kevin: shangalabangala     # define username and password

[/]                          # create a volume at root /
  c:\pub                     # host folder to share
  accs:
    r: *                     # anyone can read/download
    rwmd: kevin              # only kevin can read, write, move, and delete

[/inc]                       # create a dropbox-style volume at /inc
  c:\pub\inc
  accs:
    w: *                     # anyone can upload, but cannot browse contents
    rwmd: kevin              # kevin has full admin access

Once you verify that your configuration works in a standard command prompt, Copyparty's Windows guide details how to turn it into a persistent background service that starts at boot using NSSM ( the Non-Sucking Service Manager):

Code:
nssm install cpp %homedrive%%homepath%\downloads\copyparty.exe -c %homedrive%%homepath%\documents\party.conf
nssm set cpp ObjectName.\yourAccountName yourWindowsPassword
nssm start cpp

Running the NSSM service under your own Windows user account ensures that file permissions behave predictably and environment paths expand as expected.

Section Summary:

  • No Python Needed on Windows: While copyparty-sfx.py requires Python 3, the native copyparty.exe binary runs standalone.
  • Danger of Zero-Config: Launching without flags opens the current folder to anonymous read-write access on port 3923.
  • Service Integration: Windows admins can pair a .conf file with NSSM to run Copyparty as an automated background service.

Docker Deployment and the True Security Boundary​

For users running a home server or virtual machine, How-To Geek recommends deploying Copyparty inside a Docker container, pointing out that Docker volumes and bind mounts restrict Copyparty from accidentally exposing your entire home or downloads directory.

Isolating the file path is indeed smart practice, though containerization is only half the battle. According to Copyparty's Docker documentation on GitHub, the standard quick-start command looks like this:

docker run --rm -it -u 1000 -p 3923:3923 -v /mnt/nas:/w -v $PWD/cfgdir:/cfg copyparty/ac

Here is what is happening under the hood:

  • /w is the shared data path: Whatever host folder you bind-mount to /w is what Copyparty serves. Importantly, the Docker image uses the exact same default behavior as the standalone script—if you do not supply a .conf file inside the /cfg mount (or pass command-line flags), the container shares /w as read-write for anyone on port 3923.
  • Choosing an Image Edition: The project publishes several container variants across x86, x86_64, AArch64 (ARM64), arm32, ppc64le, and s390x architectures. They range from min (57 MiB uncompressed, core server only) and im (70 MiB, adds Pillow image thumbnails and Mutagen media parsing) to the recommended copyparty/ac (163 MiB, adding FFmpeg for video/audio thumbnails and transcoding), as well as specialized iv (211 MiB) and dj (309 MiB, adding musical key and BPM detection) builds.
  • Keeping Folders Tidy: By default, Copyparty creates a .hist folder at the top of each shared volume to store its search index and thumbnails. In Docker deployments, the documentation recommends adding hist: /cfg/hists/ under the [global] section of your config file so those metadata files stay inside your configuration directory rather than cluttering your shared media folders.

Fact-Checking the Plaintext Password Criticism​

In his review, Campanale voiced a major security gripe with Copyparty: that all usernames and passwords must be stored in plaintext inside the configuration file, and that end users have no way to change their own passwords.

While that accurately describes a basic, unconfigured setup, Copyparty's upstream documentation confirms that the software does support both password hashing and user-initiated password changes—if the administrator turns them on:

  • Argon2 Password Hashing: Administrators can enable password hashing with the --ah-alg argon2 option and use the interactive --ah-cli flag to generate password hashes without writing plaintext credentials to disk. The project estimates that its default hashing setup takes roughly 0.4 seconds and 256 MiB of RAM per new password on a modern laptop.
  • User Password Changes (--chpw): While disabled by default, passing the --chpw option allows users to change their own passwords. Those updated credentials are saved to a chpw.json file in the configuration folder (and are hashed if hashing is enabled), though the documentation notes this feature is incompatible with external identity-provider authentication and warns that altering hashing parameters later can invalidate user-changed passwords.

Even with Argon2 hashing enabled, How-To Geek's broader caution remains sound: if you plan to expose Copyparty outside your home LAN, put it behind HTTPS, a properly configured reverse proxy with its own authentication layer, or a secure tunnel rather than exposing raw HTTP port 3923 to the public internet.

Section Summary:

  • Docker Scope vs. Access Control: Bind mounts limit which host directories Copyparty can see, but you must still mount a .conf file to /cfg to lock down anonymous write permissions.
  • Built-In Security Options: Contrary to assumptions that Copyparty only supports static plaintext passwords, the project natively supports Argon2 password hashing (--ah-alg argon2) and optional user password resets (--chpw).

Mounting Remote Folders in Windows File Explorer: The Catch​

How-To Geek also praised how easily Copyparty lets you mount a remote server folder natively on a client computer, noting that the web interface provides copy-and-paste commands for Windows, macOS, and Linux.

While mapping a Copyparty share in Windows File Explorer via WebDAV (connecting to a URL such as [url]http://192.168.123.1:3923/[/url]) works out of the box, veteran Windows users know that Microsoft's built-in WebDAV client (WebClient service) is notoriously finicky. Copyparty's own GitHub documentation explicitly warns users about several Windows WebDAV client quirks, including authentication hiccups after system reboots, filename restrictions, and issues where anonymous-readable folders interfere with authenticated write permissions.

To work around the native Windows WebDAV bugs—or if you are considering the project's separate, read-only partyfuse.py filesystem mount utility (which requires WinFsp, Python 3, and mfusepy on Windows)—the Copyparty developers specifically recommend using rclone to mount the server on Windows for faster, more reliable performance.

Windows Access MethodRead/Write SupportPrerequisitesKey Caveats & Recommendations
Web Browser UIRead / Write (per config)Any modern browserBest all-around experience; supports resumable transfers.
Native Windows WebDAVRead / WriteBuilt into Windows (Map network drive)Prone to Windows WebDAV client bugs (reboot auth loss, write quirks).
partyfuse.pyRead-OnlyPython 3, WinFsp, mfusepySlower on Windows; intended for read-only local filesystem mounting.
rclone (Recommended)Read / Writerclone client (and WinFsp for drive mounting)Recommended by Copyparty docs to bypass native Windows WebDAV bugs.

Section Summary:

  • WebDAV Limitations: Windows can map Copyparty shares natively over WebDAV, but Microsoft's built-in client suffers from well-documented authentication and write-permission quirks.
  • The Better Workaround: For persistent drive mapping in File Explorer, the project recommends pairing Copyparty with rclone rather than relying on Windows' native WebDAV implementation.

Bottom Line for Windows Enthusiasts​

Whether you are running a headless home server, a spare Raspberry Pi, or a Windows 11 desktop that needs to share a massive directory across the room, Copyparty earns its reputation as a remarkably versatile tool. The key is treating its "zero-configuration" mode strictly as a five-minute local test. Before putting real data on the line, take ten minutes to drop a party.conf file into place, restrict anonymous write access, turn on Argon2 password hashing, and—if you are mapping drives on Windows—keep rclone in your back pocket.

 

References

  1. I wish I'd discovered this ultra-simple file server a long time ago How-To Geek 2026-10-18T13:30:16+00:00
  2. copyparty/scripts/docker/README.md at hovudstraum · 9001/copyparty · GitHub github.com
  3. copyparty/docs/examples/windows.md at hovudstraum · 9001/copyparty · GitHub github.com