Skip to main content

LAN file server with token auth. Like python -m http.server but with auth

Project description

servepass

Serve files on your LAN with a token. That's it.

pipx install servepass
servepass

You know python -m http.server. It's great for quick file sharing on a local network. The problem is it has zero authentication, so anyone on the same network can grab whatever you're serving.

servepass fixes that. Same zero-config philosophy, but with a token-protected URL. Run it, get a link, share it. No accounts, no cloud, no telemetry.

Install

pipx install servepass

Or with pip:

pip install servepass

Requires Python 3.8+. No external dependencies.

Usage

# Serve current directory
servepass

# Serve a specific path
servepass ./downloads

# Custom port
servepass --port 9090

# No authentication
servepass --no-auth

Every time you run servepass, a fresh token is generated. You get a URL and an optional QR code in the terminal:

  Serving:  /home/user/downloads
  Network:  http://192.168.1.42:8080/?token=a3f9b2c1
  Token:    a3f9b2c1

  Ctrl+C to stop

Open the URL in any browser on your network and you're in. Scan the QR code to open it directly on your phone.

QR code

The QR code is printed automatically if the qrcode package is installed:

pip install qrcode

Without it, servepass works normally and just shows the URL.

Known limitations

servepass uses a token in the URL over plain HTTP. The token is not encrypted in transit. This is fine for a trusted local network. It is not a substitute for HTTPS or VPN on public or untrusted networks.

If you're on public WiFi, use something else.

Who this is for

  • You're on a trusted LAN (home, office, workshop) and want to share files quickly
  • You want to download files on your phone without cables or cloud storage
  • You don't want to expose an unauthenticated HTTP server to everyone on the network
  • You want something lightweight with zero setup time

Comparison

servepass python -m http.server filebrowser
Authentication Token No Yes
Install pipx install servepass Built-in Binary + config
Dependencies None None None
LAN IP detection Yes No Yes
QR code Optional No No
File upload Planned No Yes

Roadmap

  • Serve with token auth
  • Auto-detect LAN IP
  • QR code in terminal (optional)
  • --token flag to set a fixed token
  • HTTPS with self-signed cert
  • File upload via browser

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

servepass-0.1.1.tar.gz (5.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

servepass-0.1.1-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

Details for the file servepass-0.1.1.tar.gz.

File metadata

  • Download URL: servepass-0.1.1.tar.gz
  • Upload date:
  • Size: 5.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for servepass-0.1.1.tar.gz
Algorithm Hash digest
SHA256 440b081dc168750639e25c18dcb78a56aa148038cf04988313e960c61af50adf
MD5 428e2ab24433198359f0d77429d13691
BLAKE2b-256 0387646762e05d078bdb6603db5aca0d9f7be704d9ac66995cb2c27838b24ca1

See more details on using hashes here.

File details

Details for the file servepass-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: servepass-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 6.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for servepass-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 44a8d8b07b9d86158e0867cf5036dca3a89d4f773e8cd11e0855b34b261fa44f
MD5 e59c53cd5c2f2ee09a1757f1896bca3f
BLAKE2b-256 3e5d42da9f6a0b6bea407651742d858e2fb30d2d7c8982c154681ce0e9dd2a7d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page