Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
/ updog Public

Updog is a replacement for Python's SimpleHTTPServer. It allows uploading and downloading via HTTP/S, can set ad hoc SSL certificates and use http basic auth.

License

Notifications You must be signed in to change notification settings

sc0tfree/updog

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Version 2.0.1 Python 3.11+ MIT License sc0tfree Twitter

updog

Updog is a replacement for Python's SimpleHTTPServer. It allows uploading and downloading via HTTP/S, can set ad hoc SSL certificates and use HTTP basic auth.

Installation

Install using pip:

pip install updog

Or using pipx (recommended for CLI tools):

pipx install updog

For development:

git clone https://github.com/sc0tfree/updog.git
cd updog
poetry install
poetry run updog

Usage

updog [-d DIRECTORY] [-b ADDRESS] [-p PORT] [--password PASSWORD] [--ssl | --ssl-cert CERT --ssl-key KEY] [--cors] [--hide-base-path]

Argument Description
-d DIRECTORY, --directory DIRECTORY Root directory [Default=.]
-b ADDRESS, --bind ADDRESS Bind to specific address [Default=0.0.0.0]
-p PORT, --port PORT Port to serve [Default=9090]
--password PASSWORD Use a password to access the page. (No username)
--ssl Enable SSL with ad-hoc certificate
--ssl-cert CERT Path to custom SSL certificate
--ssl-key KEY Path to custom SSL private key
--cors Enable CORS headers
--hide-base-path Hide full directory path (show relative paths)
--version Show version
-h, --help Show help

Examples

Serve from your current directory:

updog

Serve from another directory:

updog -d /another/directory

Serve from port 1234:

updog -p 1234

Password protect the page:

updog --password examplePassword123!

Please note: updog uses HTTP basic authentication. To login, you should leave the username blank and just enter the password in the password field.

Use an SSL connection (ad-hoc certificate):

updog --ssl

Use an SSL connection with custom certificates:

updog --ssl-cert /path/to/cert.pem --ssl-key /path/to/key.pem

Bind to a specific IP address:

updog -b 192.168.1.10 -p 8080

Enable CORS for web application testing:

updog --cors

Hide full directory paths (OpSec):

updog --hide-base-path

What's updog?

Not much, how about you?

Thanks

A special thank you to Nicholas Smith for designing the updog logo.

About

Updog is a replacement for Python's SimpleHTTPServer. It allows uploading and downloading via HTTP/S, can set ad hoc SSL certificates and use http basic auth.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published
Morty Proxy This is a proxified and sanitized view of the page, visit original site.